|  | 
|  | LayoutManager (LayoutManager && src) noexcept | 
|  | 
| LayoutManager & | operator= (LayoutManager && src) noexcept | 
|  | 
|  | ~LayoutManager () noexcept override | 
|  | 
| GtkLayoutManager * | gobj () | 
|  | Provides access to the underlying C GObject. 
 | 
|  | 
| const GtkLayoutManager * | gobj () const | 
|  | Provides access to the underlying C GObject. 
 | 
|  | 
| GtkLayoutManager * | gobj_copy () | 
|  | Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. 
 | 
|  | 
| void | measure (Widget & widget, Orientation orientation, int for_size, int & minimum, int & natural, int & minimum_baseline, int & natural_baseline) const | 
|  | Measures the size of the widget using manager, for the given orientation and size. 
 | 
|  | 
| void | allocate (Widget & widget, int width, int height, int baseline) | 
|  | Assigns the given width, height, and baseline to a widget, and computes the position and sizes of the children of the widget using the layout management policy of manager. 
 | 
|  | 
| SizeRequestMode | get_request_mode () const | 
|  | Retrieves the request mode of manager. 
 | 
|  | 
| Widget * | get_widget () | 
|  | Retrieves the Gtk::Widgetusing the givenGtk::LayoutManager.
 | 
|  | 
| const Widget * | get_widget () const | 
|  | Retrieves the Gtk::Widgetusing the givenGtk::LayoutManager.
 | 
|  | 
| void | layout_changed () | 
|  | Queues a resize on the Gtk::Widgetusing manager, if any.
 | 
|  | 
| Glib::RefPtr< LayoutChild > | get_layout_child (Widget & child) | 
|  | Retrieves a Gtk::LayoutChildinstance for theGtk::LayoutManager, creating one if necessary.
 | 
|  | 
| Glib::RefPtr< const LayoutChild > | get_layout_child (Widget & child) const | 
|  | Retrieves a Gtk::LayoutChildinstance for theGtk::LayoutManager, creating one if necessary.
 | 
|  | 
|  | Object (const Object &)=delete | 
|  | 
| Object & | operator= (const Object &)=delete | 
|  | 
|  | Object (Object &&src) noexcept | 
|  | 
| Object & | operator= (Object &&src) noexcept | 
|  | 
| void * | get_data (const QueryQuark &key) | 
|  | 
| void | set_data (const Quark &key, void *data) | 
|  | 
| void | set_data_with_c_callback (const Quark &key, void *data, GDestroyNotify notify) | 
|  | 
| void | set_data (const Quark &key, void *data, DestroyNotify notify) | 
|  | 
| void | remove_data (const QueryQuark &quark) | 
|  | 
| void * | steal_data (const QueryQuark &quark) | 
|  | 
| Glib::RefPtr< Glib::Object > | wrap (GObject *object, bool take_copy=false) | 
|  | 
|  | ObjectBase (const ObjectBase &)=delete | 
|  | 
| ObjectBase & | operator= (const ObjectBase &)=delete | 
|  | 
| void | set_property_value (const Glib::ustring &property_name, const Glib::ValueBase &value) | 
|  | 
| void | get_property_value (const Glib::ustring &property_name, Glib::ValueBase &value) const | 
|  | 
| void | set_property (const Glib::ustring &property_name, const PropertyType &value) | 
|  | 
| void | get_property (const Glib::ustring &property_name, PropertyType &value) const | 
|  | 
| PropertyType | get_property (const Glib::ustring &property_name) const | 
|  | 
| sigc::connection | connect_property_changed (const Glib::ustring &property_name, const sigc::slot< void()> &slot) | 
|  | 
| sigc::connection | connect_property_changed (const Glib::ustring &property_name, sigc::slot< void()> &&slot) | 
|  | 
| void | freeze_notify () | 
|  | 
| void | thaw_notify () | 
|  | 
| virtual void | reference () const | 
|  | 
| virtual void | unreference () const | 
|  | 
| GObject * | gobj () | 
|  | 
| const GObject * | gobj () const | 
|  | 
| GObject * | gobj_copy () const | 
|  | 
|  | 
|  | LayoutManager () | 
|  | There is no create() method that corresponds to this constructor, because only derived classes shall be created. 
 | 
|  | 
| virtual SizeRequestMode | get_request_mode_vfunc (const Widget & widget) const | 
|  | 
| virtual void | measure_vfunc (const Widget & widget, Orientation orientation, int for_size, int & minimum, int & natural, int & minimum_baseline, int & natural_baseline) const | 
|  | 
| virtual void | allocate_vfunc (const Widget & widget, int width, int height, int baseline) | 
|  | 
| virtual Glib::RefPtr< LayoutChild > | create_layout_child_vfunc (const Widget & widget, const Widget & for_child) | 
|  | 
| virtual void | root_vfunc () | 
|  | 
| virtual void | unroot_vfunc () | 
|  | 
|  | Object () | 
|  | 
|  | Object (const Glib::ConstructParams &construct_params) | 
|  | 
|  | Object (GObject *castitem) | 
|  | 
|  | ~Object () noexcept override | 
|  | 
|  | ObjectBase () | 
|  | 
|  | ObjectBase (const char *custom_type_name) | 
|  | 
|  | ObjectBase (const std::type_info &custom_type_info) | 
|  | 
|  | ObjectBase (ObjectBase &&src) noexcept | 
|  | 
| ObjectBase & | operator= (ObjectBase &&src) noexcept | 
|  | 
| virtual | ~ObjectBase () noexcept=0 | 
|  | 
| void | initialize (GObject *castitem) | 
|  | 
| void | initialize_move (GObject *castitem, Glib::ObjectBase *previous_wrapper) | 
|  | 
Base class for layout manager. 
Layout managers are delegate classes that handle the preferred size and the allocation of a container widget.
You typically subclass Gtk::LayoutManager if you want to implement a layout policy for the children of a widget, or if you want to determine the size of a widget depending on its contents.
Each Gtk::Widget can only have one Gtk::LayoutManager instance associated to it at any given time; it is possible, though, to replace the layout manager instance using Gtk::Widget::set_layout_manager().
Layout properties
A layout manager can expose properties for controlling the layout of each child, by creating an object type derived from Gtk::LayoutChild and installing the properties on it as normal GObject properties.
Each Gtk::LayoutChild instance storing the layout properties for a specific child is created through the get_layout_child() method; a Gtk::LayoutManager controls the creation of its Gtk::LayoutChild instances by overriding the create_layout_child_vfunc() virtual function.
Gtk::LayoutChild::property_layout_manager() and Gtk::LayoutChild::property_child_widget() on the newly created Gtk::LayoutChild instance are mandatory. The Gtk::LayoutManager will cache the newly created Gtk::LayoutChild instance until the widget is removed from its parent, or the parent removes the layout manager.
Each Gtk::LayoutManager instance creating a Gtk::LayoutChild should use get_layout_child() every time it needs to query the layout properties; each Gtk::LayoutChild instance should call layout_changed() every time a property is updated, in order to queue a new size measuring and allocation.
- Since gtkmm 3.96