Index

Package: Table

Description

package Gtk.Table is

A Gtk_Table is a container that can contain any number of children.

Each of them is attached to a specific row and a specific column in widget.

Every row in the table must have the same height, and every column must have the same width if the table was said as Homogeneous. But you can also decide to have an heterogeneous table, where the width and height are set by the children contained in the table.

Check out the Gtk_Sheet widget for a different kind of table that can also contain text and images in a more efficient way.

Binding from C File version 2.8.17

Classes

Gtk_Table_Record

type Gtk_Table_Record is new
     Gtk.Container.Gtk_Container_Record with private;

Ancestors:

Primitive operations:

Attach_Defaults
Get_Col_Spacing
Get_Default_Col_Spacing
Get_Default_Row_Spacing
Get_Homogeneous
Get_Row_Spacing
Glib.Object.Deallocate (Inherited)
Glib.Object.Notify (Inherited)
Glib.Object.Ref (Inherited)
Glib.Object.Unref (Inherited)
Gtk.Container.Add (Inherited)
Gtk.Container.Check_Resize (Inherited)
Gtk.Container.Child_Get_Property (Inherited)
Gtk.Container.Child_Set_Property (Inherited)
Gtk.Container.Child_Type (Inherited)
Gtk.Container.Forall (Inherited)
Gtk.Container.Foreach (Inherited)
Gtk.Container.Get_Border_Width (Inherited)
Gtk.Container.Get_Children (Inherited)
Gtk.Container.Get_Focus_Chain (Inherited)
Gtk.Container.Get_Focus_Child (Inherited)
Gtk.Container.Get_Focus_Hadjustment (Inherited)
Gtk.Container.Get_Focus_Vadjustment (Inherited)
Gtk.Container.Get_Resize_Mode (Inherited)
Gtk.Container.Propagate_Expose (Inherited)
Gtk.Container.Remove (Inherited)
Gtk.Container.Resize_Children (Inherited)
Gtk.Container.Set_Border_Width (Inherited)
Gtk.Container.Set_Focus_Chain (Inherited)
Gtk.Container.Set_Focus_Child (Inherited)
Gtk.Container.Set_Focus_Hadjustment (Inherited)
Gtk.Container.Set_Focus_Vadjustment (Inherited)
Gtk.Container.Set_Reallocate_Redraws (Inherited)
Gtk.Container.Set_Resize_Mode (Inherited)
Gtk.Container.Unset_Focus_Chain (Inherited)
Gtk.Object.Destroy (Inherited)
Gtk.Object.Flag_Is_Set (Inherited)
Gtk.Object.Flags (Inherited)
Gtk.Object.Get_Type (Inherited)
Gtk.Object.Set_Flags (Inherited)
Gtk.Object.Sink (Inherited)
Gtk.Object.Unset_Flags (Inherited)
Gtk.Widget.Activate (Inherited)
Gtk.Widget.Add_Accelerator (Inherited)
Gtk.Widget.Add_Events (Inherited)
Gtk.Widget.Add_Mnemonic_Label (Inherited)
Gtk.Widget.Can_Activate_Accel (Inherited)
Gtk.Widget.Child_Notify (Inherited)
Gtk.Widget.Class_Path (Inherited)
Gtk.Widget.Class_Path_Reversed (Inherited)
Gtk.Widget.Create_Pango_Context (Inherited)
Gtk.Widget.Create_Pango_Layout (Inherited)
Gtk.Widget.Draw (Inherited)
Gtk.Widget.Ensure_Style (Inherited)
Gtk.Widget.Error_Bell (Inherited)
Gtk.Widget.Freeze_Child_Notify (Inherited)
Gtk.Widget.Get_Allocation_Height (Inherited)
Gtk.Widget.Get_Allocation_Width (Inherited)
Gtk.Widget.Get_Allocation_X (Inherited)
Gtk.Widget.Get_Allocation_Y (Inherited)
Gtk.Widget.Get_Ancestor (Inherited)
Gtk.Widget.Get_Child_Requisition (Inherited)
Gtk.Widget.Get_Child_Visible (Inherited)
Gtk.Widget.Get_Colormap (Inherited)
Gtk.Widget.Get_Composite_Name (Inherited)
Gtk.Widget.Get_Direction (Inherited)
Gtk.Widget.Get_Events (Inherited)
Gtk.Widget.Get_Extension_Events (Inherited)
Gtk.Widget.Get_Has_Tooltip (Inherited)
Gtk.Widget.Get_Name (Inherited)
Gtk.Widget.Get_No_Show_All (Inherited)
Gtk.Widget.Get_Pango_Context (Inherited)
Gtk.Widget.Get_Parent (Inherited)
Gtk.Widget.Get_Parent_Window (Inherited)
Gtk.Widget.Get_Pointer (Inherited)
Gtk.Widget.Get_Root_Window (Inherited)
Gtk.Widget.Get_Size_Request (Inherited)
Gtk.Widget.Get_Snapshot (Inherited)
Gtk.Widget.Get_State (Inherited)
Gtk.Widget.Get_Style (Inherited)
Gtk.Widget.Get_Tooltip_Markup (Inherited)
Gtk.Widget.Get_Tooltip_Text (Inherited)
Gtk.Widget.Get_Tooltip_Window (Inherited)
Gtk.Widget.Get_Toplevel (Inherited)
Gtk.Widget.Get_Visual (Inherited)
Gtk.Widget.Get_Window (Inherited)
Gtk.Widget.Grab_Default (Inherited)
Gtk.Widget.Grab_Focus (Inherited)
Gtk.Widget.Has_Screen (Inherited)
Gtk.Widget.Hide (Inherited)
Gtk.Widget.Hide_All (Inherited)
Gtk.Widget.Input_Shape_Combine_Mask (Inherited)
Gtk.Widget.Intersect (Inherited)
Gtk.Widget.Is_Ancestor (Inherited)
Gtk.Widget.Is_Composited (Inherited)
Gtk.Widget.Is_Focus (Inherited)
Gtk.Widget.Keynav_Failed (Inherited)
Gtk.Widget.List_Mnemonic_Labels (Inherited)
Gtk.Widget.Map (Inherited)
Gtk.Widget.Mnemonic_Activate (Inherited)
Gtk.Widget.Modify_Base (Inherited)
Gtk.Widget.Modify_Bg (Inherited)
Gtk.Widget.Modify_Cursor (Inherited)
Gtk.Widget.Modify_Fg (Inherited)
Gtk.Widget.Modify_Font (Inherited)
Gtk.Widget.Modify_Text (Inherited)
Gtk.Widget.Path (Inherited)
Gtk.Widget.Path_Reversed (Inherited)
Gtk.Widget.Queue_Clear (Inherited)
Gtk.Widget.Queue_Clear_Area (Inherited)
Gtk.Widget.Queue_Draw (Inherited)
Gtk.Widget.Queue_Draw_Area (Inherited)
Gtk.Widget.Queue_Resize (Inherited)
Gtk.Widget.Queue_Resize_No_Redraw (Inherited)
Gtk.Widget.Realize (Inherited)
Gtk.Widget.Region_Intersect (Inherited)
Gtk.Widget.Remove_Accelerator (Inherited)
Gtk.Widget.Remove_Mnemonic_Label (Inherited)
Gtk.Widget.Render_Icon (Inherited)
Gtk.Widget.Reparent (Inherited)
Gtk.Widget.Reset_Rc_Styles (Inherited)
Gtk.Widget.Reset_Shapes (Inherited)
Gtk.Widget.Restore_Default_Style (Inherited)
Gtk.Widget.Send_Expose (Inherited)
Gtk.Widget.Set_Accel_Path (Inherited)
Gtk.Widget.Set_App_Paintable (Inherited)
Gtk.Widget.Set_Child_Visible (Inherited)
Gtk.Widget.Set_Colormap (Inherited)
Gtk.Widget.Set_Composite_Name (Inherited)
Gtk.Widget.Set_Direction (Inherited)
Gtk.Widget.Set_Double_Buffered (Inherited)
Gtk.Widget.Set_Events (Inherited)
Gtk.Widget.Set_Extension_Events (Inherited)
Gtk.Widget.Set_Has_Tooltip (Inherited)
Gtk.Widget.Set_Name (Inherited)
Gtk.Widget.Set_No_Show_All (Inherited)
Gtk.Widget.Set_Parent (Inherited)
Gtk.Widget.Set_Parent_Window (Inherited)
Gtk.Widget.Set_Redraw_On_Allocate (Inherited)
Gtk.Widget.Set_Scroll_Adjustments (Inherited)
Gtk.Widget.Set_Sensitive (Inherited)
Gtk.Widget.Set_Size_Request (Inherited)
Gtk.Widget.Set_State (Inherited)
Gtk.Widget.Set_Style (Inherited)
Gtk.Widget.Set_Tooltip_Markup (Inherited)
Gtk.Widget.Set_Tooltip_Text (Inherited)
Gtk.Widget.Set_Tooltip_Window (Inherited)
Gtk.Widget.Set_UPosition (Inherited)
Gtk.Widget.Set_USize (Inherited)
Gtk.Widget.Set_Window (Inherited)
Gtk.Widget.Shape_Combine_Mask (Inherited)
Gtk.Widget.Show (Inherited)
Gtk.Widget.Show_All (Inherited)
Gtk.Widget.Show_Now (Inherited)
Gtk.Widget.Size_Allocate (Inherited)
Gtk.Widget.Size_Request (Inherited)
Gtk.Widget.Style_Get_Property (Inherited)
Gtk.Widget.Thaw_Child_Notify (Inherited)
Gtk.Widget.Trigger_Tooltip_Query (Inherited)
Gtk.Widget.Unmap (Inherited)
Gtk.Widget.Unrealize (Inherited)
Set_Col_Spacing
Set_Col_Spacings
Set_Homogeneous
Set_Row_Spacing
Set_Row_Spacings

Types

Gtk_Table

type Gtk_Table is access all Gtk_Table_Record'Class;

Constants & Global variables

N_Columns_Property (Glib.Properties.Property_Uint)

N_Columns_Property      : constant Glib.Properties.Property_Uint;

Row_Spacing_Property (Glib.Properties.Property_Uint)

Row_Spacing_Property    : constant Glib.Properties.Property_Uint;

Column_Spacing_Property (Glib.Properties.Property_Uint)

Column_Spacing_Property : constant Glib.Properties.Property_Uint;

Homogeneous_Property (Glib.Properties.Property_Boolean)

Homogeneous_Property    : constant Glib.Properties.Property_Boolean;

Bottom_Attach_Property (Glib.Properties.Property_Uint)

Bottom_Attach_Property : constant Glib.Properties.Property_Uint;

Left_Attach_Property (Glib.Properties.Property_Uint)

Left_Attach_Property   : constant Glib.Properties.Property_Uint;

Right_Attach_Property (Glib.Properties.Property_Uint)

Right_Attach_Property  : constant Glib.Properties.Property_Uint;

Top_Attach_Property (Glib.Properties.Property_Uint)

Top_Attach_Property    : constant Glib.Properties.Property_Uint;
X_Options_Property : constant Glib.Properties.Property_Flags;

X_Padding_Property (Glib.Properties.Property_Uint)

X_Padding_Property     : constant Glib.Properties.Property_Uint;
X_Options_Property : constant Glib.Properties.Property_Flags;

Y_Padding_Property (Glib.Properties.Property_Uint)

Y_Padding_Property     : constant Glib.Properties.Property_Uint;
Y_Options_Property : constant Glib.Properties.Property_Flags;

Subprograms & Entries

Gtk_New

procedure Gtk_New 
(Widget: out Gtk_Table;
Rows: Guint;
Columns: Guint;
Homogeneous: Boolean);
Create a new table. The width allocated to the table is divided into Columns columns, which all have the same width if Homogeneous is True. If Homogeneous is False, the width will be calculated with the children contained in the table. Same behavior for the rows.

Initialize

procedure Initialize 
(Widget: access Gtk_Table_Record'Class;
Rows: Guint;
Columns: Guint;
Homogeneous: Boolean);
Internal initialization function. See the section "Creating your own widgets" in the documentation.

Get_Type

function Get_Type return Gtk.Gtk_Type;
Return the internal value associated with a Gtk_Table.

Resize

procedure Resize 
(Table: access Gtk_Table_Record;
Rows: Guint;
Columns: Guint);
Modify the number of rows and columns in the table.

Attach

procedure Attach 
(Table: access Gtk_Table_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Left_Attach: Guint;
Right_Attach: Guint;
Top_Attach: Guint;
Bottom_Attach: Guint;
Xoptions: Gtk_Attach_Options := Expand or Fill;
Yoptions: Gtk_Attach_Options := Expand or Fill;
Xpadding: Guint := 0;
Ypadding: Guint := 0);
Insert a new widget in the table. All the attachments are relative to the separations between columns and rows (for instance, to insert a widget spanning the first two columns in the table, you should put Left_Attach=0 and Right_Attach=2). Same behavior for the rows. Xoptions and Yoptions indicate the behavior of the child when the table is resized (whether the child can shrink or expand). See the description in Gtk.Box for more information on the possible values. Xpadding and Ypadding are the amount of space left around the child.

Attach_Defaults

procedure Attach_Defaults 
(Table: access Gtk_Table_Record;
Widget: access Gtk.Widget.Gtk_Widget_Record'Class;
Left_Attach: Guint;
Right_Attach: Guint;
Top_Attach: Guint;
Bottom_Attach: Guint);
Insert a new widget in the table, with default values. No padding is put around the child, and the options are set to Expand and Fill. This call is similar to Attach with default values and is only provided for compatibility.

Set_Row_Spacing

procedure Set_Row_Spacing 
(Table: access Gtk_Table_Record;
Row: Guint;
Spacing: Guint);
Set the spacing insert between Row and the next one. Spacing is in pixels.

Set_Col_Spacing

procedure Set_Col_Spacing 
(Table: access Gtk_Table_Record;
Column: Guint;
Spacing: Guint);
Set the spacing in pixels between Column and the next one.

Set_Row_Spacings

procedure Set_Row_Spacings 
(Table: access Gtk_Table_Record;
Spacing: Guint);
Set the spacing for all the rows.

Set_Col_Spacings

procedure Set_Col_Spacings 
(Table: access Gtk_Table_Record;
Spacing: Guint);
Set the spacing for all the columns.

Set_Homogeneous

procedure Set_Homogeneous 
(Table: access Gtk_Table_Record;
Homogeneous: Boolean);
Indicate the homogeneous status of the table. If Homogeneous is True, the rows and columns of the table will all be allocated the same width or height.

Get_Row_Spacing

function Get_Row_Spacing 
(Table: access Gtk_Table_Record;
Row: Guint) return Guint;
Return the spacing in pixels between Row and the next one.

Get_Col_Spacing

function Get_Col_Spacing 
(Table: access Gtk_Table_Record;
Column: Guint) return Guint;
Return the spacing in pixels between Column and the next one.

Get_Default_Row_Spacing

function Get_Default_Row_Spacing 
(Table: access Gtk_Table_Record) return Guint;
Return the default spacing for the rows.

Get_Default_Col_Spacing

function Get_Default_Col_Spacing 
(Table: access Gtk_Table_Record) return Guint;
Return the default spacing for the columns.

Get_Homogeneous

function Get_Homogeneous 
(Table: access Gtk_Table_Record) return Boolean;
Return the homogeneous status of the table. See Set_Homogeneous for more details.