type Gtk_Container_Record is new Gtk.Widget.Gtk_Widget_Record with private;
type Gtk_Container is access all Gtk_Container_Record'Class;
type Gtk_Callback is access procedure (Item : access Gtk.Widget.Gtk_Widget_Record'Class);
Border_Width_Property : constant Glib.Properties.Property_Uint;
Resize_Mode_Property : constant Gtk.Enums.Property_Gtk_Resize_Mode;
Child_Property : constant Glib.Properties.Property_Object_WO;
Reallocate_Redraws_Property : constant Glib.Properties.Property_Boolean;
Signal_Add : constant Glib.Signal_Name := "add";
Signal_Check_Resize : constant Glib.Signal_Name := "check_resize";
Signal_Remove : constant Glib.Signal_Name := "remove";
Signal_Set_Focus_Child : constant Glib.Signal_Name := "set-focus-child";
function Get_Type return Glib.GType;
procedure Set_Border_Width
( | Container | : access Gtk_Container_Record; |
Border_Width | : Guint); |
function Get_Border_Width
( | Container | : access Gtk_Container_Record) return Guint; |
procedure Add
( | Container | : access Gtk_Container_Record; |
Widget | : access Gtk.Widget.Gtk_Widget_Record'Class); |
procedure Remove
( | Container | : access Gtk_Container_Record; |
Widget | : access Gtk.Widget.Gtk_Widget_Record'Class); |
procedure Set_Resize_Mode
( | Container | : access Gtk_Container_Record; |
Resize_Mode | : Gtk.Enums.Gtk_Resize_Mode); |
function Get_Resize_Mode
( | Container | : access Gtk_Container_Record) return Gtk.Enums.Gtk_Resize_Mode; |
function Get_Children
( | Container | : access Gtk_Container_Record) return Gtk.Widget.Widget_List.Glist; |
procedure Propagate_Expose
( | Container | : access Gtk_Container_Record; |
Child | : access Gtk.Widget.Gtk_Widget_Record'Class; | |
Event | : Gdk.Event.Gdk_Event_Expose); |
procedure Set_Focus_Chain
( | Container | : access Gtk_Container_Record; |
Focusable_Widgets | : Gtk.Widget.Widget_List.Glist); |
procedure Get_Focus_Chain
( | Container | : access Gtk_Container_Record; |
Focusable_Widgets | : out Gtk.Widget.Widget_List.Glist; | |
Success | : out Boolean); |
procedure Unset_Focus_Chain
( | Container | : access Gtk_Container_Record); |
procedure Set_Focus_Vadjustment
( | Container | : access Gtk_Container_Record; |
Adjustment | : Gtk.Adjustment.Gtk_Adjustment); |
function Get_Focus_Vadjustment
( | Container | : access Gtk_Container_Record) return Gtk.Adjustment.Gtk_Adjustment; |
procedure Set_Focus_Hadjustment
( | Container | : access Gtk_Container_Record; |
Adjustment | : Gtk.Adjustment.Gtk_Adjustment); |
function Get_Focus_Hadjustment
( | Container | : access Gtk_Container_Record) return Gtk.Adjustment.Gtk_Adjustment; |
procedure Set_Focus_Child
( | Container | : access Gtk_Container_Record; |
Child | : access Gtk.Widget.Gtk_Widget_Record'Class); |
function Get_Focus_Child
( | Container | : access Gtk_Container_Record) return Gtk.Widget.Gtk_Widget; |
procedure Child_Set_Property
( | Container | : access Gtk_Container_Record; |
Child | : access Gtk.Widget.Gtk_Widget_Record'Class; | |
Property_Name | : String; | |
Value | : Glib.Values.GValue); |
procedure Child_Get_Property
( | Container | : access Gtk_Container_Record; |
Child | : access Gtk.Widget.Gtk_Widget_Record'Class; | |
Property_Name | : String; | |
Value | : out Glib.Values.GValue); |
function Class_Find_Child_Property
( | Cclass | : Glib.Object.GObject_Class; |
Property_Name | : String) return Glib.Param_Spec; |
procedure Class_Install_Child_Property
( | Cclass | : Glib.Object.GObject_Class; |
Property_Id | : Guint; | |
Pspec | : Glib.Param_Spec); |
function Class_List_Child_Properties
( | Cclass | : Glib.Object.GObject_Class) return Glib.Param_Spec_Array; |
procedure Forall
( | Container | : access Gtk_Container_Record; |
Func | : Gtk_Callback); |
procedure Foreach
( | Container | : access Gtk_Container_Record; |
Func | : Gtk_Callback); |
procedure Set_Reallocate_Redraws
( | Container | : access Gtk_Container_Record; |
Needs_Redraws | : Boolean := False); |
function Child_Type
( | Container | : access Gtk_Container_Record) return Gtk.Gtk_Type; |
procedure Resize_Children
( | Container | : access Gtk_Container_Record); |
procedure Check_Resize
( | Container | : access Gtk_Container_Record); |
function Children
( | Container | : access Gtk_Container_Record) return Gtk.Widget.Widget_List.Glist renames Get_Children; |
Base class for widgets that have children.
When writing your own container widgets, you need to fully handle the size_allocate event, by also resizing all the children (based on their size requisition). The size_allocate event will always be sent to the parent when a child calls Gtk.Widget.Queue_Resize.
Binding from C File version 2.8.17