|
| 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::Widget using the given Gtk::LayoutManager .
|
|
const Widget * | get_widget () const |
| Retrieves the Gtk::Widget using the given Gtk::LayoutManager .
|
|
void | layout_changed () |
| Queues a resize on the Gtk::Widget using manager, if any.
|
|
Glib::RefPtr< LayoutChild > | get_layout_child (Widget &child) |
| Retrieves a Gtk::LayoutChild instance for the Gtk::LayoutManager , creating one if necessary.
|
|
Glib::RefPtr< const LayoutChild > | get_layout_child (Widget &child) const |
| Retrieves a Gtk::LayoutChild instance for the Gtk::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 |
|
| trackable () noexcept |
|
| trackable (const trackable &src) noexcept |
|
| trackable (trackable &&src) noexcept |
|
| ~trackable () |
|
void | add_destroy_notify_callback (notifiable *data, func_destroy_notify func) const |
|
void | notify_callbacks () |
|
trackable & | operator= (const trackable &src) |
|
trackable & | operator= (trackable &&src) noexcept |
|
void | remove_destroy_notify_callback (notifiable *data) const |
|
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: