## Documentation

Table of Contents
Class Inheritance Tree
Widget Screenshots
Package groups

## Index

Package: Paned

- Goto spec source

# Description

    package Gtk.Paned is

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.

### Screenshot

<testgtk>create_paned.adb</testgtk>

# Packages

### Implements_Buildable (new Glib.Types.Implements)

    package Implements_Buildable is new Glib.Types.Implements
         (Gtk.Buildable.Gtk_Buildable, Gtk_Paned_Record, Gtk_Paned);

### Implements_Orientable (new Glib.Types.Implements)

    package Implements_Orientable is new Glib.Types.Implements
         (Gtk.Orientable.Gtk_Orientable, Gtk_Paned_Record, Gtk_Paned);

# Classes

### Gtk_Paned_Record

- Goto declaration in source

    type Gtk_Paned_Record is new Gtk_Container_Record with null record;

#### Ancestors:

Gtk.Container.Gtk_Container_Record
Gtk.Widget.Gtk_Widget_Record
Glib.Object.GObject_Record

#### Immediate Children:

Gtk.Paned.Gtk_Hpaned_Record
Gtk.Paned.Gtk_Vpaned_Record

#### Primitive operations:

Add1

- To API doc
- To spec

Add2

- To API doc
- To spec

Compute_Position

- To API doc
- To spec

Get_Child1

- To API doc
- To spec

Get_Child2

- To API doc
- To spec

Get_Handle_Window

- To API doc
- To spec

Get_Orientation

- To API doc
- To spec

Get_Position

- To API doc
- To spec

Glib.Object.Deallocate

- To API doc
- To spec

(Inherited)
Glib.Object.Get_Type

- To API doc
- To spec

(Inherited)
Glib.Object.Notify

- To API doc
- To spec

(Inherited)
Glib.Object.Ref

- To API doc
- To spec

(Inherited)
Glib.Object.Ref_Sink

- To API doc
- To spec

(Inherited)
Glib.Object.Unref

- To API doc
- To spec

(Inherited)
Gtk.Container.Add

- To API doc
- To spec

(Inherited)
Gtk.Container.Check_Resize

- To API doc
- To spec

(Inherited)
Gtk.Container.Child_Get_Property

- To API doc
- To spec

(Inherited)
Gtk.Container.Child_Set_Property

- To API doc
- To spec

(Inherited)
Gtk.Container.Child_Type

- To API doc
- To spec

(Inherited)
Gtk.Container.Forall

- To API doc
- To spec

(Inherited)
Gtk.Container.Foreach

- To API doc
- To spec

(Inherited)
Gtk.Container.Get_Border_Width

- To API doc
- To spec

(Inherited)
Gtk.Container.Get_Children

- To API doc
- To spec

(Inherited)
Gtk.Container.Get_Focus_Chain

- To API doc
- To spec

(Inherited)
Gtk.Container.Get_Focus_Child

- To API doc
- To spec

(Inherited)
Gtk.Container.Get_Focus_Hadjustment

- To API doc
- To spec

(Inherited)
Gtk.Container.Get_Focus_Vadjustment

- To API doc
- To spec

(Inherited)
Gtk.Container.Get_Resize_Mode

- To API doc
- To spec

(Inherited)
Gtk.Container.Propagate_Expose

- To API doc
- To spec

(Inherited)
Gtk.Container.Remove

- To API doc
- To spec

(Inherited)
Gtk.Container.Resize_Children

- To API doc
- To spec

(Inherited)
Gtk.Container.Set_Border_Width

- To API doc
- To spec

(Inherited)
Gtk.Container.Set_Focus_Chain

- To API doc
- To spec

(Inherited)
Gtk.Container.Set_Focus_Child

- To API doc
- To spec

(Inherited)
Gtk.Container.Set_Focus_Hadjustment

- To API doc
- To spec

(Inherited)
Gtk.Container.Set_Focus_Vadjustment

- To API doc
- To spec

(Inherited)
Gtk.Container.Set_Reallocate_Redraws

- To API doc
- To spec

(Inherited)
Gtk.Container.Set_Resize_Mode

- To API doc
- To spec

(Inherited)
Gtk.Container.Unset_Focus_Chain

- To API doc
- To spec

(Inherited)
Gtk.Widget.Activate

- To API doc
- To spec

(Inherited)
Gtk.Widget.Add_Accelerator

- To API doc
- To spec

(Inherited)
Gtk.Widget.Add_Events

- To API doc
- To spec

(Inherited)
Gtk.Widget.Add_Mnemonic_Label

- To API doc
- To spec

(Inherited)
Gtk.Widget.Can_Activate_Accel

- To API doc
- To spec

(Inherited)
Gtk.Widget.Child_Notify

- To API doc
- To spec

(Inherited)
Gtk.Widget.Class_Path

- To API doc
- To spec

(Inherited)
Gtk.Widget.Class_Path_Reversed

- To API doc
- To spec

(Inherited)
Gtk.Widget.Create_Pango_Context

- To API doc
- To spec

(Inherited)
Gtk.Widget.Create_Pango_Layout

- To API doc
- To spec

(Inherited)
Gtk.Widget.Destroy

- To API doc
- To spec

(Inherited)
Gtk.Widget.Draw

- To API doc
- To spec

(Inherited)
Gtk.Widget.Ensure_Style

- To API doc
- To spec

(Inherited)
Gtk.Widget.Error_Bell

- To API doc
- To spec

(Inherited)
Gtk.Widget.Flag_Is_Set

- To API doc
- To spec

(Inherited)
Gtk.Widget.Flags

- To API doc
- To spec

(Inherited)
Gtk.Widget.Freeze_Child_Notify

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Allocation_Height

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Allocation_Width

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Allocation_X

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Allocation_Y

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Ancestor

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Child_Requisition

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Child_Visible

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Colormap

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Composite_Name

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Direction

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Events

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Extension_Events

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Has_Tooltip

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Name

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_No_Show_All

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Pango_Context

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Parent

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Parent_Window

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Pointer

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Root_Window

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Size_Request

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Snapshot

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_State

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Style

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Tooltip_Markup

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Tooltip_Text

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Tooltip_Window

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Toplevel

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Visual

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Window

- To API doc
- To spec

(Inherited)
Gtk.Widget.Grab_Default

- To API doc
- To spec

(Inherited)
Gtk.Widget.Grab_Focus

- To API doc
- To spec

(Inherited)
Gtk.Widget.Has_Screen

- To API doc
- To spec

(Inherited)
Gtk.Widget.Hide

- To API doc
- To spec

(Inherited)
Gtk.Widget.Hide_All

- To API doc
- To spec

(Inherited)
Gtk.Widget.Input_Shape_Combine_Mask

- To API doc
- To spec

(Inherited)
Gtk.Widget.Intersect

- To API doc
- To spec

(Inherited)
Gtk.Widget.Is_Ancestor

- To API doc
- To spec

(Inherited)
Gtk.Widget.Is_Composited

- To API doc
- To spec

(Inherited)
Gtk.Widget.Is_Focus

- To API doc
- To spec

(Inherited)
Gtk.Widget.Keynav_Failed

- To API doc
- To spec

(Inherited)
Gtk.Widget.List_Mnemonic_Labels

- To API doc
- To spec

(Inherited)
Gtk.Widget.Map

- To API doc
- To spec

(Inherited)
Gtk.Widget.Mnemonic_Activate

- To API doc
- To spec

(Inherited)
Gtk.Widget.Modify_Base

- To API doc
- To spec

(Inherited)
Gtk.Widget.Modify_Bg

- To API doc
- To spec

(Inherited)
Gtk.Widget.Modify_Cursor

- To API doc
- To spec

(Inherited)
Gtk.Widget.Modify_Fg

- To API doc
- To spec

(Inherited)
Gtk.Widget.Modify_Font

- To API doc
- To spec

(Inherited)
Gtk.Widget.Modify_Text

- To API doc
- To spec

(Inherited)
Gtk.Widget.Path

- To API doc
- To spec

(Inherited)
Gtk.Widget.Path_Reversed

- To API doc
- To spec

(Inherited)
Gtk.Widget.Queue_Clear

- To API doc
- To spec

(Inherited)
Gtk.Widget.Queue_Clear_Area

- To API doc
- To spec

(Inherited)
Gtk.Widget.Queue_Draw

- To API doc
- To spec

(Inherited)
Gtk.Widget.Queue_Draw_Area

- To API doc
- To spec

(Inherited)
Gtk.Widget.Queue_Resize

- To API doc
- To spec

(Inherited)
Gtk.Widget.Queue_Resize_No_Redraw

- To API doc
- To spec

(Inherited)
Gtk.Widget.Realize

- To API doc
- To spec

(Inherited)
Gtk.Widget.Region_Intersect

- To API doc
- To spec

(Inherited)
Gtk.Widget.Remove_Accelerator

- To API doc
- To spec

(Inherited)
Gtk.Widget.Remove_Mnemonic_Label

- To API doc
- To spec

(Inherited)
Gtk.Widget.Render_Icon

- To API doc
- To spec

(Inherited)
Gtk.Widget.Reparent

- To API doc
- To spec

(Inherited)
Gtk.Widget.Reset_Rc_Styles

- To API doc
- To spec

(Inherited)
Gtk.Widget.Reset_Shapes

- To API doc
- To spec

(Inherited)
Gtk.Widget.Restore_Default_Style

- To API doc
- To spec

(Inherited)
Gtk.Widget.Send_Expose

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Accel_Path

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_App_Paintable

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Child_Visible

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Colormap

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Composite_Name

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Direction

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Double_Buffered

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Events

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Extension_Events

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Flags

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Has_Tooltip

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Name

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_No_Show_All

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Parent

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Parent_Window

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Redraw_On_Allocate

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Scroll_Adjustments

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Sensitive

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Size_Request

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_State

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Style

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Tooltip_Markup

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Tooltip_Text

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Tooltip_Window

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_UPosition

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_USize

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Window

- To API doc
- To spec

(Inherited)
Gtk.Widget.Shape_Combine_Mask

- To API doc
- To spec

(Inherited)
Gtk.Widget.Show

- To API doc
- To spec

(Inherited)
Gtk.Widget.Show_All

- To API doc
- To spec

(Inherited)
Gtk.Widget.Show_Now

- To API doc
- To spec

(Inherited)
Gtk.Widget.Size_Allocate

- To API doc
- To spec

(Inherited)
Gtk.Widget.Size_Request

- To API doc
- To spec

(Inherited)
Gtk.Widget.Style_Get_Property

- To API doc
- To spec

(Inherited)
Gtk.Widget.Thaw_Child_Notify

- To API doc
- To spec

(Inherited)
Gtk.Widget.Trigger_Tooltip_Query

- To API doc
- To spec

(Inherited)
Gtk.Widget.Unmap

- To API doc
- To spec

(Inherited)
Gtk.Widget.Unrealize

- To API doc
- To spec

(Inherited)
Gtk.Widget.Unset_Flags

- To API doc
- To spec

(Inherited)
Pack1

- To API doc
- To spec

Pack2

- To API doc
- To spec

Set_Orientation

- To API doc
- To spec

Set_Position

- To API doc
- To spec

# Types

### Gtk_Paned

- Goto declaration in source

    type Gtk_Paned is access all Gtk_Paned_Record'Class;

### Gtk_Hpaned_Record

- Goto declaration in source

    subtype Gtk_Hpaned_Record is Gtk_Paned_Record;

### Gtk_Hpaned

- Goto declaration in source

    subtype Gtk_Hpaned is Gtk_Paned;

### Gtk_Vpaned_Record

- Goto declaration in source

    subtype Gtk_Vpaned_Record is Gtk_Paned_Record;

### Gtk_Vpaned

- Goto declaration in source

    subtype Gtk_Vpaned is Gtk_Paned;

# Constants & Global variables

### Max_Position_Property

- Goto declaration in source

(Glib.Properties.Property_Int)

    Max_Position_Property : constant Glib.Properties.Property_Int;

### Min_Position_Property

- Goto declaration in source

(Glib.Properties.Property_Int)

    Min_Position_Property : constant Glib.Properties.Property_Int;

### Position_Property

- Goto declaration in source

(Glib.Properties.Property_Int)

    Position_Property : constant Glib.Properties.Property_Int;

### Position_Set_Property

- Goto declaration in source

(Glib.Properties.Property_Boolean)

    Position_Set_Property : constant Glib.Properties.Property_Boolean;

### Signal_Accept_Position

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Accept_Position : constant Glib.Signal_Name := "accept-position";

### Signal_Cancel_Position

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Cancel_Position : constant Glib.Signal_Name := "cancel-position";

### Signal_Cycle_Child_Focus

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Cycle_Child_Focus : constant Glib.Signal_Name := "cycle-child-focus";

### Signal_Cycle_Handle_Focus

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Cycle_Handle_Focus : constant Glib.Signal_Name := "cycle-handle-focus";

### Signal_Move_Handle

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Move_Handle : constant Glib.Signal_Name := "move-handle";

### Signal_Toggle_Handle_Focus

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Toggle_Handle_Focus : constant Glib.Signal_Name := "toggle-handle-focus";

# Subprograms & Entries

### Get_Type

- Goto spec in source
- Goto body in source

    function Get_Type return Glib.GType;

### Gtk_New_Hpaned

- Goto spec in source

    procedure Gtk_New_Hpaned (Paned: out Gtk_Hpaned);

### Initialize_Hpaned

- Goto spec in source

    procedure Initialize_Hpaned (Paned: access Gtk_Hpaned_Record'Class);

The children will be displayed next to each other

### Get_Type_Hpaned

- Goto spec in source
- Goto body in source

    function Get_Type_Hpaned return Glib.GType;

### Gtk_New_Vpaned

- Goto spec in source

    procedure Gtk_New_Vpaned (Paned: out Gtk_Vpaned);

### Initialize_Vpaned

- Goto spec in source

    procedure Initialize_Vpaned (Paned: access Gtk_Vpaned_Record'Class);

The children will be displayed one on top of the other

### Get_Type_Vpaned

- Goto spec in source
- Goto body in source

    function Get_Type_Vpaned return Glib.GType;

### Add1

- Goto spec in source

    procedure Add1 (Paned: access Gtk_Paned_Record;Child: access Gtk.Widget.Gtk_Widget_Record'Class);

Add the first child of the container. The child will be displayed either in the top or in the left pane, depending on the orientation of the container. This is equivalent to using the Pack1 procedure with its default parameters.

### Add2

- Goto spec in source

    procedure Add2 (Paned: access Gtk_Paned_Record;Child: access Gtk.Widget.Gtk_Widget_Record'Class);

Add the second child of the container. It will be displayed in the bottom or right pane, depending on the container's orientation. This is equivalent to using Pack2 with its default parameters.

### Compute_Position

- Goto spec in source

    procedure Compute_Position (Paned: access Gtk_Paned_Record;Allocation: Gint;Child1_Req: Gint;Child2_Req: Gint);

### Get_Child1

- Goto spec in source

    function Get_Child1 (Paned: access Gtk_Paned_Record) return Gtk.Widget.Gtk_Widget;

Obtains the first child of the paned widget. Since: gtk+ 2.4

### Get_Child2

- Goto spec in source

    function Get_Child2 (Paned: access Gtk_Paned_Record) return Gtk.Widget.Gtk_Widget;

Obtains the second child of the paned widget. Since: gtk+ 2.4

### Get_Handle_Window

- Goto spec in source

    function Get_Handle_Window (Paned: access Gtk_Paned_Record) return Gdk.Window.Gdk_Window;

Returns the Gdk.Window.Gdk_Window of the handle. This function is useful when handling button or motion events because it enables the callback to distinguish between the window of the paned, a child and the handle. Since: gtk+ 2.20

### Get_Position

- Goto spec in source

    function Get_Position (Paned: access Gtk_Paned_Record) return Gint;

### Set_Position

- Goto spec in source

    procedure Set_Position (Paned: access Gtk_Paned_Record;Position: Gint);

Sets the position of the divider between the two panes. "position": pixel position of divider, a negative value means that the position is unset.

### Pack1

- Goto spec in source

    procedure Pack1 (Paned: access Gtk_Paned_Record;Child: access Gtk.Widget.Gtk_Widget_Record'Class;Resize: Boolean := False;Shrink: Boolean := True);

Add a child to the top or left pane. You can not change dynamically the attributes Resize and Shrink. Instead, you have to remove the child from the container, and put it back with the new value of the attributes. You should also first call Glib.Object.Ref on the child so as to be sure it is not destroyed when you remove it, and Glib.Object.Unref it at the end. See the example in testgtk/ in the GtkAda distribution.

### Pack2

- Goto spec in source

    procedure Pack2 (Paned: access Gtk_Paned_Record;Child: access Gtk.Widget.Gtk_Widget_Record'Class;Resize: Boolean := False;Shrink: Boolean := False);

### Get_Orientation

- Goto spec in source

    function Get_Orientation (Self: access Gtk_Paned_Record) return Gtk.Enums.Gtk_Orientation;

### Set_Orientation

- Goto spec in source

    procedure Set_Orientation (Self: access Gtk_Paned_Record;Orientation: Gtk.Enums.Gtk_Orientation);

### +

- Goto spec in source

    function "+" (Widget: access Gtk_Paned_Record'Class) return Gtk.Buildable.Gtk_Buildable renames Implements_Buildable.To_Interface;

### -

- Goto spec in source

    function "-" (Interf: Gtk.Buildable.Gtk_Buildable) return Gtk_Paned renames Implements_Buildable.To_Object;

### +

- Goto spec in source

    function "+" (Widget: access Gtk_Paned_Record'Class) return Gtk.Orientable.Gtk_Orientable renames Implements_Orientable.To_Interface;

### -

- Goto spec in source

    function "-" (Interf: Gtk.Orientable.Gtk_Orientable) return Gtk_Paned renames Implements_Orientable.To_Object;