//! Various traits related to controllers opting in to autolayout routines and support for view //! heirarchies. use objc::runtime::Object; use objc_id::ShareId; /// A trait that view wrappers must conform to. Enables managing the subview tree. pub trait Layout { /// Returns a reference to the backing Objective-C layer. This is optional, as we try to keep /// the general lazy-loading approach Cocoa has. This may change in the future, and in general /// this shouldn't affect your code too much (if at all). fn get_backing_node(&self) -> ShareId; /// This trait should implement adding a view to the subview tree for a given view. fn add_subview(&self, _view: &V); }