![]() |
![]() |
This is the abstract container from which all gtk+ widgets which hold other items derive from. It mainly houses virtual functions used for inserting and removing children. Containers in gtk+ may hold one item or many items depending on the implementation.
This interface is used for all single item holding containers. Multi-item containers provide their own unique interface as their items are generally more complex. The methods of the derived classes should be prefered over these.
Public Types | |
typedef SigC::Slot1< void, Widget& > | ForeachSlot |
Public Member Functions | |
virtual | ~Container () |
GtkContainer* | gobj () |
Provides access to the underlying C GtkObject. | |
const GtkContainer* | gobj () const |
Provides access to the underlying C GtkObject. | |
void | set_border_width (guint border_width) |
Sets the border width of the container. | |
guint | get_border_width () const |
Retrieves the border width of the container. | |
virtual void | add (Widget& widget) |
void | remove (Widget& widget) |
Removes widget from container . | |
void | set_resize_mode (ResizeMode resize_mode) |
Sets the resize mode for the container. | |
ResizeMode | get_resize_mode () const |
Returns the resize mode for the container. | |
void | check_resize () |
Request that contained widgets check their size. | |
void | foreach (const ForeachSlot& slot) |
Operate on contained items This is largely an internal used mainly for things like creating duplicates of internal lists and other such operations. | |
Glib::ListHandle<Widget*> | get_children () |
Returns the the container's non-internal children. | |
Glib::ListHandle<const Widget*> | get_children () const |
Returns the the container's non-internal children. | |
void | propagate_expose (Widget& child, GdkEventExpose* event) |
When a container receives an expose event, it must send synthetic expose events to all children that don't have their own Gdk::Windows. | |
void | set_focus_chain (const Glib::ListHandle<Widget*>& focusable_widgets) |
Sets a focus chain, overriding the one computed automatically by GTK+. | |
void | set_focus_chain (const Glib::ListHandle<const Widget*>& focusable_widgets) const |
Sets a focus chain, overriding the one computed automatically by GTK+. | |
bool | has_focus_chain () const |
Glib::ListHandle<Widget*> | get_focus_chain () |
void | unset_focus_chain () |
Removes a focus chain explicitly set with set_focus_chain(). | |
void | set_reallocate_redraws (bool needs_redraws=true) |
Sets the reallocate_redraws flag of the container to the given value. | |
void | set_focus_child (Widget& widget) |
Sets the focus on a child. | |
void | set_focus_vadjustment (Adjustment& adjustment) |
Adjustment* | get_focus_vadjustment () |
Retrieves the vertical focus adjustment for the container. | |
const Adjustment* | get_focus_vadjustment () const |
Retrieves the vertical focus adjustment for the container. | |
void | set_focus_hadjustment (Adjustment& adjustment) |
Adjustment* | get_focus_hadjustment () |
Retrieves the horizontal focus adjustment for the container. | |
const Adjustment* | get_focus_hadjustment () const |
Retrieves the horizontal focus adjustment for the container. | |
void | resize_children () |
GType | child_type () |
Returns the type of the children supported by the container. | |
Glib::SignalProxy1< void, Widget* > | signal_add () |
Glib::SignalProxy1< void, Widget* > | signal_remove () |
Glib::SignalProxy0<void> | signal_check_resize () |
Glib::SignalProxy1< void, Widget* > | signal_set_focus_child () |
Glib::PropertyProxy<guint> | property_border_width () |
You rarely need to use properties because there are get_ and set_ methods for almost all of them. | |
Glib::PropertyProxy<ResizeMode> | property_resize_mode () |
You rarely need to use properties because there are get_ and set_ methods for almost all of them. | |
Glib::PropertyProxy_WriteOnly< Widget* > | property_child () |
You rarely need to use properties because there are get_ and set_ methods for almost all of them. | |
void | show_all_children (bool recursive=true) |
Protected Member Functions | |
virtual GtkType | child_type_vfunc () |
virtual void | forall_vfunc (gboolean include_internals, GtkCallback callback, gpointer callback_data) |
virtual char* | composite_name_vfunc (GtkWidget* child) |
virtual void | set_child_property_vfunc (GtkWidget* child, guint property_id, const GValue* value, GParamSpec* pspec) |
virtual void | get_child_property_vfunc (GtkWidget* child, guint property_id, GValue* value, GParamSpec* pspec) |
virtual void | on_add (Widget* widget) |
virtual void | on_remove (Widget* widget) |
virtual void | on_check_resize () |
virtual void | on_set_focus_child (Widget* widget) |
Container () | |
Related Functions | |
(Note that these are not member functions.) | |
Gtk::Container* | wrap (GtkContainer* object, bool take_copy=false) |
|
|
|
|
|
|
|
Reimplemented in Gtk::ScrolledWindow. |
|
Request that contained widgets check their size.
|
|
Returns the type of the children supported by the container. Note that this may return G::TYPE_NONE to indicate that no more children can be added, e.g. for a Gtk::Paned which already has two children.
|
|
|
|
|
|
|
|
Operate on contained items This is largely an internal used mainly for things like creating duplicates of internal lists and other such operations. The result is lossy as it only gets the the main child and not its external pieces. For example notebook pages contain a page, a label, and a menu item. But this only operates on the pages. |
|
Retrieves the border width of the container. See set_border_width().
|
|
|
|
Returns the the container's non-internal children. See forall() for details on what constitutes an "internal" child.
|
|
Returns the the container's non-internal children. See forall() for details on what constitutes an "internal" child.
|
|
|
|
Retrieves the horizontal focus adjustment for the container.
|
|
Retrieves the horizontal focus adjustment for the container.
|
|
Retrieves the vertical focus adjustment for the container.
|
|
Retrieves the vertical focus adjustment for the container.
|
|
Returns the resize mode for the container. See set_resize_mode().
|
|
Provides access to the underlying C GtkObject.
Reimplemented from Gtk::Widget. Reimplemented in Gtk::Alignment, Gtk::AspectFrame, Gtk::Bin, Gtk::Box, Gtk::VBox, Gtk::HBox, Gtk::Button, Gtk::ButtonBox, Gtk::VButtonBox, Gtk::HButtonBox, Gtk::CheckButton, Gtk::CheckMenuItem, Gtk::ColorSelection, Gtk::ColorSelectionDialog, Gtk::ComboDropDownItem, Gtk::ComboDropDown, Gtk::Combo, Gtk::GammaCurve, Gtk::Dialog, Gtk::EventBox, Gtk::FileSelection, Gtk::Fixed, Gtk::FontSelection, Gtk::FontSelectionDialog, Gtk::Frame, Gtk::HandleBox, Gtk::ImageMenuItem, Gtk::InputDialog, Gtk::Item, Gtk::Layout, Gtk::Menu, Gtk::MenuBar, Gtk::MenuItem, Gtk::MenuShell, Gtk::MessageDialog, Gtk::Notebook, Gtk::OptionMenu, Gtk::Paned, Gtk::HPaned, Gtk::VPaned, Gtk::Plug, Gtk::RadioButton, Gtk::RadioMenuItem, Gtk::ScrolledWindow, Gtk::SeparatorMenuItem, Gtk::Socket, Gtk::Statusbar, Gtk::Table, Gtk::TearoffMenuItem, Gtk::TextView, Gtk::ToggleButton, Gtk::Toolbar, Gtk::TreeView, Gtk::Viewport, and Gtk::Window. |
|
Provides access to the underlying C GtkObject.
Reimplemented from Gtk::Widget. Reimplemented in Gtk::Alignment, Gtk::AspectFrame, Gtk::Bin, Gtk::Box, Gtk::VBox, Gtk::HBox, Gtk::Button, Gtk::ButtonBox, Gtk::VButtonBox, Gtk::HButtonBox, Gtk::CheckButton, Gtk::CheckMenuItem, Gtk::ColorSelection, Gtk::ColorSelectionDialog, Gtk::ComboDropDownItem, Gtk::ComboDropDown, Gtk::Combo, Gtk::GammaCurve, Gtk::Dialog, Gtk::EventBox, Gtk::FileSelection, Gtk::Fixed, Gtk::FontSelection, Gtk::FontSelectionDialog, Gtk::Frame, Gtk::HandleBox, Gtk::ImageMenuItem, Gtk::InputDialog, Gtk::Item, Gtk::Layout, Gtk::Menu, Gtk::MenuBar, Gtk::MenuItem, Gtk::MenuShell, Gtk::MessageDialog, Gtk::Notebook, Gtk::OptionMenu, Gtk::Paned, Gtk::HPaned, Gtk::VPaned, Gtk::Plug, Gtk::RadioButton, Gtk::RadioMenuItem, Gtk::ScrolledWindow, Gtk::SeparatorMenuItem, Gtk::Socket, Gtk::Statusbar, Gtk::Table, Gtk::TearoffMenuItem, Gtk::TextView, Gtk::ToggleButton, Gtk::Toolbar, Gtk::TreeView, Gtk::Viewport, and Gtk::Window. |
|
|
|
|
|
|
|
|
|
|
|
When a container receives an expose event, it must send synthetic expose events to all children that don't have their own Gdk::Windows. This function provides a convenient way of doing this. A container, when it receives an expose event, calls propagate_expose() once for each child, passing in the event the container received. propagate_expose() takes care of deciding whether an expose event needs to be sent to the child, intersecting the event's area with the child area, and sending the event. In most cases, a container can simply either simply inherit the ::expose implementation from Gtk::Container, or, do some drawing and then chain to the ::expose implementation from Gtk::Container.
|
|
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
|
|
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
|
|
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
|
|
Removes widget from container . widget must be inside container . Note that container will own a reference to widget , and that this may be the last reference held; so removing a widget from its container can destroy that widget. If you want to use widget again, you need to add a reference to it while it's not inside a container, using Glib::object_ref().
|
|
|
|
Sets the border width of the container. The border width of a container is the amount of space to leave around the outside of the container. The only exception to this is Gtk::Window; because toplevel windows can't leave space outside, they leave the space inside. The border is added on all sides of the container. To add space to only one side, one approach is to create a Gtk::Alignment widget, call Gtk::Widget::set_usize() to give it a size, and place it on the side of the container as a spacer.
|
|
|
|
Sets a focus chain, overriding the one computed automatically by GTK+. In principle each widget in the chain should be a descendant of the container, but this is not enforced by this method, since it's allowed to set the focus chain before you pack the widgets, or have a widget in the chain that isn't always packed. The necessary checks are done when the focus chain is actually traversed.
|
|
Sets a focus chain, overriding the one computed automatically by GTK+. In principle each widget in the chain should be a descendant of the container, but this is not enforced by this method, since it's allowed to set the focus chain before you pack the widgets, or have a widget in the chain that isn't always packed. The necessary checks are done when the focus chain is actually traversed.
|
|
Sets the focus on a child.
|
|
|
|
|
|
Sets the reallocate_redraws flag of the container to the given value. Containers requesting reallocation redraws get automatically redrawn if any of their children changed allocation.
|
|
Sets the resize mode for the container. The resize mode of a container determines whether a resize request will be passed to the container's parent, queued for later execution or executed immediately.
|
|
|
|
|
|
|
|
|
|
|
|
Removes a focus chain explicitly set with set_focus_chain().
|
|
|