type Gtk_Paned_Record is new Gtk.Container.Gtk_Container_Record with private;
subtype Gtk_Hpaned_Record is Gtk_Paned_Record;
subtype Gtk_Vpaned_Record is Gtk_Paned_Record;
type Gtk_Paned is access all Gtk_Paned_Record'Class;
subtype Gtk_Hpaned is Gtk_Paned;
subtype Gtk_Vpaned is Gtk_Paned;
Max_Position_Property : constant Glib.Properties.Property_Int;
Min_Position_Property : constant Glib.Properties.Property_Int;
Position_Property : constant Glib.Properties.Property_Int;
Position_Set_Property : constant Glib.Properties.Property_Boolean;
Resize_Property : constant Glib.Properties.Property_Boolean;
Shrink_Property : constant Glib.Properties.Property_Boolean;
Handle_Size_Property : constant Glib.Properties.Property_Int;
Signal_Accept_Position : constant Glib.Signal_Name := "accept_position";
Signal_Cancel_Position : constant Glib.Signal_Name := "cancel_position";
Signal_Cycle_Child_Focus : constant Glib.Signal_Name := "cycle_child_focus";
Signal_Cycle_Handle_Focus : constant Glib.Signal_Name := "cycle_handle_focus";
Signal_Move_Handle : constant Glib.Signal_Name := "move_handle";
Signal_Toggle_Handle_Focus : constant Glib.Signal_Name := "toggle_handle_focus";
procedure Gtk_New_Vpaned
( | Widget | : out Gtk_Paned); |
procedure Gtk_New_Hpaned
( | Widget | : out Gtk_Paned); |
procedure Initialize_Vpaned
( | Widget | : access Gtk_Paned_Record'Class); |
procedure Initialize_Hpaned
( | Widget | : access Gtk_Paned_Record'Class); |
function Get_Type return Glib.GType;
function Get_Type_Vpaned return Glib.GType;
function Get_Type_Hpaned return Glib.GType;
procedure Add1
( | Paned | : access Gtk_Paned_Record; |
Child | : access Gtk_Widget_Record'Class); |
procedure Pack1
( | Paned | : access Gtk_Paned_Record; |
Child | : access Gtk_Widget_Record'Class; | |
Resize | : Boolean := False; | |
Shrink | : Boolean := True); |
procedure Add2
( | Paned | : access Gtk_Paned_Record; |
Child | : access Gtk_Widget_Record'Class); |
procedure Pack2
( | Paned | : access Gtk_Paned_Record; |
Child | : access Gtk_Widget_Record'Class; | |
Resize | : Boolean := False; | |
Shrink | : Boolean := False); |
procedure Set_Position
( | Paned | : access Gtk_Paned_Record; |
Position | : Gint); |
function Get_Position
( | Paned | : access Gtk_Paned_Record) return Gint; |
function Get_Child1
( | Paned | : access Gtk_Paned_Record) return Gtk.Widget.Gtk_Widget; |
function Get_Child2
( | Paned | : access Gtk_Paned_Record) return Gtk.Widget.Gtk_Widget; |
function Get_Child1_Resize
( | Paned | : access Gtk_Paned_Record) return Boolean; |
function Get_Child2_Resize
( | Paned | : access Gtk_Paned_Record) return Boolean; |
function Get_Child1_Shrink
( | Paned | : access Gtk_Paned_Record) return Boolean; |
function Get_Child2_Shrink
( | Paned | : access Gtk_Paned_Record) return Boolean; |
procedure Set_Handle_Size
( | Paned | : access Gtk_Paned_Record; |
Size | : Guint16); |
function Get_Handle_Size
( | Paned | : access Gtk_Paned_Record) return Guint16; |
procedure Set_Gutter_Size
( | Paned | : access Gtk_Paned_Record; |
Size | : Guint16); |
function Get_Gutter_Size
( | Paned | : access Gtk_Paned_Record) return Guint16; |
A Gtk_Paned is a container that organizes its two children either horizontally or vertically.
The initial size allocated to the children depends on the size they request. However, the user has the possibility to interactively move a separation bar between the two to enlarge one of the children, while at the same time shrinking the second one.
The bar can be moved by clicking with the mouse on a small cursor displayed in the bar, and then dragging the mouse.
No additional decoration is provided around the children.
Each child has two parameters, Resize and Shrink.
If Shrink is True, then the widget can be made smaller than its requisition size by the user. Set this to False if you want to set a minimum size. if Resize is True, this means that the child accepts to be resized, and will not require any size. Thus, the size allocated to it will be the total size allocated to the container minus the size requested by the other child.
If Resize is False, the child should ask for a specific size, which it will get. The other child will be resized accordingly.
If both Child have the same value for Resize (either True or False), then the size allocated to each is a ratio between the size requested by both.
When you use Set_Position with a parameter other than -1, or the user moves the handle to resize the widgets, the behavior of Resize is canceled.
Binding from C File version 2.8.17
<testgtk>create_paned.adb</testgtk>