Index

Package: Notebook

Description

package Gtk.Notebook is

A Gtk_Notebook is a container that displays all of its children at the same location on the screen. They are organized into pages, that can be selected through tabs (either by clicking on them or by a contextual menu).

This is the best way to organize complicated interfaces that have a lot of widgets, by putting the children into groups of coherent widgets.

You can hide some of the pages of the notebook by simply calling Hide on the widget that is contained in the page (or returned from Get_Nth_Page).

Binding from C File version 2.16.6

<testgtk>create_notebook.adb</testgtk>

Screenshot

gtk-notebook.png

Packages

Page_List (new Glib.Glist.Generic_List)

package Page_List is new Glib.Glist.Generic_List (Gtk_Notebook_Page);

Classes

Gtk_Notebook_Record

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

Ancestors:

Immediate Children:

Gtkada.MDI.MDI_Notebook_Record

Primitive operations:

Append_Page_Menu
Get_Children
Get_Current_Page
Get_Group_Id
Get_Menu_Label
Get_Menu_Label_Text
Get_Scrollable
Get_Show_Border
Get_Show_Tabs
Get_Tab_Detachable
Get_Tab_Label
Get_Tab_Label_Text
Get_Tab_Reorderable
Glib.Object.Deallocate (Inherited)
Glib.Object.Get_Type (Inherited)
Glib.Object.Notify (Inherited)
Glib.Object.Ref (Inherited)
Glib.Object.Ref_Sink (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.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.Destroy (Inherited)
Gtk.Widget.Draw (Inherited)
Gtk.Widget.Ensure_Style (Inherited)
Gtk.Widget.Error_Bell (Inherited)
Gtk.Widget.Flag_Is_Set (Inherited)
Gtk.Widget.Flags (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_Flags (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)
Gtk.Widget.Unset_Flags (Inherited)
Insert_Page_Menu
Popup_Disable
Popup_Enable
Prepend_Page
Prepend_Page_Menu
Query_Tab_Label_Packing
Reorder_Child
Set_Current_Page
Set_Group_Id
Set_Homogeneous_Tabs
Set_Menu_Label
Set_Menu_Label_Text
Set_Scrollable
Set_Show_Border
Set_Show_Tabs
Set_Tab_Border
Set_Tab_Detachable
Set_Tab_Hborder
Set_Tab_Label
Set_Tab_Label_Packing
Set_Tab_Label_Text
Set_Tab_Reorderable
Set_Tab_Vborder

Types

Gtk_Notebook

type Gtk_Notebook is access all Gtk_Notebook_Record'Class;

Gtk_Notebook_Page

subtype Gtk_Notebook_Page is Gtk.Gtk_Notebook_Page;

Gtk_Notebook_Tab

type Gtk_Notebook_Tab is
     (Notebook_Tab_First,
      Notebook_Tab_Last);

Gtk_Notebook_Group

subtype Gtk_Notebook_Group is Glib.C_Proxy;

Gtk_Notebook_Window_Creation_Func

type Gtk_Notebook_Window_Creation_Func is access
     function (Source : System.Address; --  Gtk_Notebook
               Page   : System.Address; --  Gtk_Widget
               X      : System.Address; --  Gint
               Y      : System.Address; --  Gint
               Data   : System.Address) return Gtk_Notebook;

Constants & Global variables

Tab_Border_Property (Glib.Properties.Property_Uint)

Tab_Border_Property   : constant Glib.Properties.Property_Uint;

Tab_Hborder_Property (Glib.Properties.Property_Uint)

Tab_Hborder_Property  : constant Glib.Properties.Property_Uint;

Tab_Vborder_Property (Glib.Properties.Property_Uint)

Tab_Vborder_Property  : constant Glib.Properties.Property_Uint;

Show_Border_Property (Glib.Properties.Property_Boolean)

Show_Border_Property  : constant Glib.Properties.Property_Boolean;

Enable_Popup_Property (Glib.Properties.Property_Boolean)

Enable_Popup_Property : constant Glib.Properties.Property_Boolean;

Homogeneous_Property (Glib.Properties.Property_Boolean)

Homogeneous_Property  : constant Glib.Properties.Property_Boolean;

Reorderable_Property (Glib.Properties.Property_Boolean)

Reorderable_Property : constant Glib.Properties.Property_Boolean;

Arrow_Spacing_Property (Glib.Properties.Property_Int)

Arrow_Spacing_Property        : constant Glib.Properties.Property_Int;

Has_Backward_Stepper_Property (Glib.Properties.Property_Boolean)

Has_Backward_Stepper_Property : constant Glib.Properties.Property_Boolean;

Has_Forward_Stepper_Property (Glib.Properties.Property_Boolean)

Has_Forward_Stepper_Property  : constant Glib.Properties.Property_Boolean;

Has_Secondary_Backward_Stepper_Property (Glib.Properties.Property_Boolean)

Has_Secondary_Backward_Stepper_Property : constant
     Glib.Properties.Property_Boolean;

Has_Secondary_Forward_Stepper_Property (Glib.Properties.Property_Boolean)

Has_Secondary_Forward_Stepper_Property  : constant
     Glib.Properties.Property_Boolean;

Tab_Curvature_Property (Glib.Properties.Property_Int)

Tab_Curvature_Property        : constant Glib.Properties.Property_Int;

Tab_Overlap_Property (Glib.Properties.Property_Int)

Tab_Overlap_Property          : constant Glib.Properties.Property_Int;

Signal_Switch_Page (Glib.Signal_Name)

Signal_Switch_Page         : constant Glib.Signal_Name := "switch_page";

Signal_Select_Page (Glib.Signal_Name)

Signal_Select_Page         : constant Glib.Signal_Name := "select_page";

Signal_Focus_Tab (Glib.Signal_Name)

Signal_Focus_Tab           : constant Glib.Signal_Name := "focus_tab";

Signal_Move_Focus_Out (Glib.Signal_Name)

Signal_Move_Focus_Out      : constant Glib.Signal_Name := "move_focus_out";

Signal_Change_Current_Page (Glib.Signal_Name)

Signal_Change_Current_Page : constant Glib.Signal_Name :=
                                  "change_current_page";

Subprograms & Entries

Gtk_New

procedure Gtk_New 
(Widget: out Gtk_Notebook);
Create a new empty notebook.

Initialize

procedure Initialize 
(Widget: access Gtk_Notebook_Record'Class);
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_Notebook.

Append_Page

procedure Append_Page 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Tab_Label: access Gtk.Widget.Gtk_Widget_Record'Class);
Insert a new page in Notebook. The page is put at the end of the list of pages. The user will select it through a button that contains the Tab_Label widget, which is generally a Gtk_Label, but could be a box with a pixmap in it for instance. No entry is associated with the page in the contextual menu.

Append_Page

procedure Append_Page 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class);
Same as above, but no label is specified.

Append_Page_Menu

procedure Append_Page_Menu 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Tab_Label: access Gtk.Widget.Gtk_Widget_Record'Class;
Menu_Label: access Gtk.Widget.Gtk_Widget_Record'Class);
Insert a new page in Notebook. The page is put at the end of the list of pages. The user will select it through a button that contains the Tab_Label widget, which is generally a Gtk_Label, but could be a box with a pixmap in it for instance. A new entry is inserted into the contextual menu. This new entry is made with Menu_Label.

Prepend_Page

procedure Prepend_Page 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Tab_Label: access Gtk.Widget.Gtk_Widget_Record'Class);
Insert a new page in Notebook. The page is put at the beginning of the list of pages. The user will select it through a button that contains the Tab_Label widget, which is generally a Gtk_Label, but could be a box with a pixmap in it for instance. No entry is associated with the page in the contextual menu.

Prepend_Page_Menu

procedure Prepend_Page_Menu 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Tab_Label: access Gtk.Widget.Gtk_Widget_Record'Class;
Menu_Label: access Gtk.Widget.Gtk_Widget_Record'Class);
Insert a new page in Notebook. The page is put at the beginning of the list of pages. The user will select it through a button that contains the Tab_Label widget, which is generally a Gtk_Label, but could be a box with a pixmap in it for instance. A new entry is inserted into the contextual menu. This new entry is made with Menu_Label.

Insert_Page

procedure Insert_Page 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Tab_Label: access Gtk.Widget.Gtk_Widget_Record'Class;
Position: Gint);
Insert a new page at a specific position in Notebook. The page is put at the beginning of the list of pages. The user will select it through a button that contains the Tab_Label widget, which is generally a Gtk_Label, but could be a box with a pixmap in it for instance. No entry is associated with the page in the contextual menu. The first position in the list of pages is 0.

Insert_Page_Menu

procedure Insert_Page_Menu 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Tab_Label: access Gtk.Widget.Gtk_Widget_Record'Class;
Menu_Label: access Gtk.Widget.Gtk_Widget_Record'Class;
Position: Gint);
Insert a new page at a specific position in Notebook. The page is put at the beginning of the list of pages. The user will select it through a button that contains the Tab_Label widget, which is generally a Gtk_Label, but could be a box with a pixmap in it for instance. A new entry is inserted into the contextual menu. This new entry is made with Menu_Label. The first position in the list of pages is 0.

Remove_Page

procedure Remove_Page 
(Notebook: access Gtk_Notebook_Record;
Page_Num: Gint);
Remove a page from the notebook. The first position in the list of pages is 0.

Set_Window_Creation_Hook

procedure Set_Window_Creation_Hook 
(Func: Gtk_Notebook_Window_Creation_Func;
Data: System.Address;
Destroy: Glib.G_Destroy_Notify_Address);

Get_Current_Page

function Get_Current_Page 
(Notebook: access Gtk_Notebook_Record) return Gint;
Get the number of the current page. The first page has the number 0.

Get_Nth_Page

function Get_Nth_Page 
(Widget: access Gtk_Notebook_Record'Class;
Page_Num: Gint) return Gtk.Widget.Gtk_Widget;
Convert from a page number to the real page.

Get_N_Pages

function Get_N_Pages 
(Notebook: access Gtk_Notebook_Record) return Gint;
Return the number of pages in the notebook

Page_Num

function Page_Num 
(Widget: access Gtk_Notebook_Record'Class;
Child: access Gtk.Widget.Gtk_Widget_Record'Class) return Gint;
Convert from a child to a page number. Note that Child is not the notebook page, but the widget you inserted with Insert_Page, Append_Page,...

Set_Current_Page

procedure Set_Current_Page 
(Notebook: access Gtk_Notebook_Record;
Page_Num: Gint := -1);
Modify the current page. The current page is the page that is currently visible on the screen. Nothing happens if there is no such page. Note also that the page has to be visible on the screen (ie you must have called Gtk.Widget.Show on it first). Use -1 to set the current page to the last one. Note: This call won't succeeded unless you have called Show on the widget displayed in the page.

Set_Page

procedure Set_Page 
(Notebook: access Gtk_Notebook_Record;
Page_Num: Gint := -1) renames Set_Current_Page;
This function is deprecated. Use Set_Current_Page instead.

Next_Page

procedure Next_Page 
(Notebook: access Gtk_Notebook_Record);
Display the next page on the screen.

Prev_Page

procedure Prev_Page 
(Notebook: access Gtk_Notebook_Record);
Display the previous page on the screen.

Set_Show_Border

procedure Set_Show_Border 
(Notebook: access Gtk_Notebook_Record;
Show_Border: Boolean := True);
Indicate whether the notebook should display borders. This border gives a 3D aspect to the notebook.

Get_Show_Border

function Get_Show_Border 
(Notebook: access Gtk_Notebook_Record) return Boolean;
Return whether the notebook displays borders.

Set_Show_Tabs

procedure Set_Show_Tabs 
(Notebook: access Gtk_Notebook_Record;
Show_Tabs: Boolean := True);
Indicate whether the tabs should be displayed. If the tabs are not displayed, the only way for the user to select a new page is through the contextual menu, and thus you should make sure that the pages were created with the Insert_Page_Menu, ... subprograms.

Get_Show_Tabs

function Get_Show_Tabs 
(Notebook: access Gtk_Notebook_Record) return Boolean;
Return whether the tabs are displayed.

Set_Tab_Pos

procedure Set_Tab_Pos 
(Notebook: access Gtk_Notebook_Record;
Pos: Gtk.Enums.Gtk_Position_Type);
Change the position of the tabs. The tabs can be displayed on any of the four sides of the notebook.

Get_Tab_Pos

function Get_Tab_Pos 
(Widget: access Gtk_Notebook_Record) return Gtk.Enums.Gtk_Position_Type;
Return the current position of the tabs.

Set_Scrollable

procedure Set_Scrollable 
(Notebook: access Gtk_Notebook_Record;
Scrollable: Boolean := True);
Indicate whether Notebook display scrolling arrows when there are too many tabs. The default is not to display such scrolling arrows. Note also that a notebook with too many pages, even if the scrolling is activated, is sometimes hard to use for the user.

Get_Scrollable

function Get_Scrollable 
(Notebook: access Gtk_Notebook_Record) return Boolean;
Return whether Notebook is scrollable. See Set_Scrollable for more details.

Popup_Enable

procedure Popup_Enable 
(Notebook: access Gtk_Notebook_Record);
Enable the popup menu. When the user pressed the right mouse button, a menu is selected that allows him to select a new page.

Popup_Disable

procedure Popup_Disable 
(Notebook: access Gtk_Notebook_Record);
Disable the popup menu. This menu won't be display any more when the user pressed the right mouse button.

Get_Tab_Label

function Get_Tab_Label 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class) return Gtk.Widget.Gtk_Widget;
Return the widget displayed in the tab used to select Page. This widget is in fact the one given in argument to Insert_Page,etc. when the page was created.

Set_Tab_Label

procedure Set_Tab_Label 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Tab_Label: access Gtk.Widget.Gtk_Widget_Record'Class);
Modify the widget displayed in the tab for the page that contains Child. Tab_Label is generally a Gtk_Label, although it can also be a Gtk_Box that contains a Gtk_Pixmap and a Gtk_Label if you want to show pixmaps. Note that you will need to call Show_All on Tab_Label: since it is not a Child of the notebook in the sense of Gtk_Container, the Show_All passed to the notebook will not be transmitted to the Tab_Label.

Set_Tab_Label_Text

procedure Set_Tab_Label_Text 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Tab_Text: UTF8_String);
Modify the text displayed in the tab for the page that contains Child. This is a less general form of Set_Tab_Label above.

Get_Tab_Label_Text

function Get_Tab_Label_Text 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class) return UTF8_String;
Return the text displayed in the tab for the page that contains Child.

Set_Tab

procedure Set_Tab 
(Notebook: access Gtk_Notebook_Record;
Page_Num: Gint;
Tab_Label: access Gtk.Widget.Gtk_Widget_Record'Class);
Set Notebook tab widget for a given page number. This function is mainly intended for use by Gate.

Get_Menu_Label

function Get_Menu_Label 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class) return Gtk.Widget.Gtk_Widget;
Return the widget displayed in the contextual menu for the Child. This is the widget given in argument to Insert_Page_Menu, Append_Page_Menu and Prepend_Page_Menu.

Set_Menu_Label

procedure Set_Menu_Label 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Menu_Label: access Gtk.Widget.Gtk_Widget_Record'Class);
Modify the widget displayed in the contextual menu for the page that contains Child.

Set_Menu_Label_Text

procedure Set_Menu_Label_Text 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Menu_Text: UTF8_String);
Modify the text displayed in the contextual menu for the page that contains Child. This is a less general form of Set_Menu_Label above.

Get_Menu_Label_Text

function Get_Menu_Label_Text 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class) return UTF8_String;
Return the text displayed in the contextual menu for the page that contains Child.

Query_Tab_Label_Packing

procedure Query_Tab_Label_Packing 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Expand: out Boolean;
Fill: out Boolean;
Pack_Type: out Gtk.Enums.Gtk_Pack_Type);

Set_Tab_Label_Packing

procedure Set_Tab_Label_Packing 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Expand: Boolean;
Fill: Boolean;
Pack_Type: Gtk.Enums.Gtk_Pack_Type);

Reorder_Child

procedure Reorder_Child 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Position: Gint);
Change the position of the page that contains Child.

Get_Tab_Reorderable

function Get_Tab_Reorderable 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Position: Gint) return Boolean;
Get whether the tab can be reordered via drag and drop or not.

Set_Tab_Reorderable

procedure Set_Tab_Reorderable 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Reorderable: Boolean := True);
Set whether the notebook tab can be reordered.

Get_Tab_Detachable

function Get_Tab_Detachable 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Position: Gint) return Boolean;
Return whether the tab contents can be detached from Notebook.

Set_Tab_Detachable

procedure Set_Tab_Detachable 
(Notebook: access Gtk_Notebook_Record;
Child: access Gtk.Widget.Gtk_Widget_Record'Class;
Detachable: Boolean := True);
Set whether the tab can be detached from Notebook to another notebook or widget. Note that 2 notebooks must share a common group identificator (see Set_Group_Id) to allow automatic tabs interchange between them. If you want a widget to interact with a notebook through DnD (i.e.: accept dragged tabs from it) it must be set as a drop destination and accept the target "GTK_NOTEBOOK_TAB". The notebook will fill the selection with a Gtk_Widget pointing to the child widget that corresponds to the dropped tab. If you want a notebook to accept drags from other widgets, you will have to set your own DnD code to do it.

Get_Group

function Get_Group 
(Notebook: access Gtk_Notebook_Record) return Gtk_Notebook_Group;

Set_Group

procedure Set_Group 
(Notebook: access Gtk_Notebook_Record;
Group: Gtk_Notebook_Group);

Get_Notebook_Page

function Get_Notebook_Page 
(Value: Glib.Values.GValue) return Gtk_Notebook_Page;
Convert a Value into a notebook page.

Convert

function Convert is new Unchecked_Conversion 
(Gtk_Notebook_Page, System.Address);

Convert

function Convert is new Unchecked_Conversion 
(System.Address, Gtk_Notebook_Page);

Get_Children

function Get_Children 
(Widget: access Gtk_Notebook_Record) return Page_List.Glist;

Set_Homogeneous_Tabs

procedure Set_Homogeneous_Tabs 
(Notebook: access Gtk_Notebook_Record;
Homogeneous: Boolean := True);

Set_Tab_Border

procedure Set_Tab_Border 
(Notebook: access Gtk_Notebook_Record;
Border_Width: Gint);

Set_Tab_Hborder

procedure Set_Tab_Hborder 
(Notebook: access Gtk_Notebook_Record;
Border_Width: Gint);

Set_Tab_Vborder

procedure Set_Tab_Vborder 
(Notebook: access Gtk_Notebook_Record;
Border_Width: Gint);

Set_Group_Id

procedure Set_Group_Id 
(Notebook: access Gtk_Notebook_Record;
Group_Id: Gint);

Get_Group_Id

function Get_Group_Id 
(Notebook: access Gtk_Notebook_Record) return Gint;