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.
Widget Hierarchy |
---|
Gtk_Object (see section Package Gtk.Object) \___ Gtk_Widget (see section Package Gtk.Widget) \___ Gtk_Container (see section Package Gtk.Container) \___ Gtk_Notebook (see section Package Gtk.Notebook) |
Signals |
---|
Types |
---|
subtype Gtk_Notebook_Page is Gtk.Gtk_Notebook_Page; | |
|
Subprograms |
---|
Creating a notebook and inserting pages | ||
procedure Gtk_New (Widget : out Gtk_Notebook); | ||
Create a new empty notebook.
| ||
function Get_Type return Gtk.Gtk_Type; | ||
Return the internal value associated with a Gtk_Notebook.
| ||
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. | ||
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. | ||
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. | ||
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. | ||
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 : in Gint); | ||
Insert a new page at a specific position in Notebook. | ||
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 : in Gint); | ||
Insert a new page at a specific position in Notebook. | ||
procedure Remove_Page (Notebook : access Gtk_Notebook_Record; Page_Num : in Gint); | ||
Remove a page from the notebook. | ||
function Get_Child (Page : in Gtk_Notebook_Page) return Gtk.Widget.Gtk_Widget; | ||
Return the child from a page. | ||
Modifying and getting the current page | ||
function Get_Current_Page (Notebook : access Gtk_Notebook_Record) return Gint; | ||
Get the number of the current page. | ||
function Get_Cur_Page (Widget : access Gtk_Notebook_Record'Class) return Gtk_Notebook_Page; | ||
Return the current 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.
| ||
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. | ||
procedure Set_Page (Notebook : access Gtk_Notebook_Record; Page_Num : in Gint := -1); | ||
Modify the current page. | ||
procedure Next_Page (Notebook : access Gtk_Notebook_Record); | ||
Display the next page on the screen.
| ||
procedure Prev_Page (Notebook : access Gtk_Notebook_Record); | ||
Display the previous page on the screen.
| ||
Style and visual aspect | ||
procedure Set_Show_Border (Notebook : access Gtk_Notebook_Record; Show_Border : in Boolean := True); | ||
Indicate whether the notebook should display borders. | ||
procedure Set_Show_Tabs (Notebook : access Gtk_Notebook_Record; Show_Tabs : in Boolean := True); | ||
Indicate whether the tabs should be displayed. | ||
procedure Set_Tab_Pos (Notebook : access Gtk_Notebook_Record; Pos : in Gtk.Enums.Gtk_Position_Type); | ||
Change the position of the tabs. | ||
function Get_Tab_Pos (Widget : access Gtk_Notebook_Record) return Gtk.Enums.Gtk_Position_Type; | ||
Return the current position of the tabs.
| ||
procedure Set_Homogeneous_Tabs (Notebook : access Gtk_Notebook_Record; Homogeneous : in Boolean := True); | ||
Indicate whether all the tabs should have the same size (width or | ||
procedure Set_Tab_Border (Notebook : access Gtk_Notebook_Record; Border_Width : in Gint); | ||
Change the width of the tabs' borders. | ||
procedure Set_Tab_Hborder (Notebook : access Gtk_Notebook_Record; Border_Width : in Gint); | ||
Modify the width of the horizontal borders of the tabs.
| ||
procedure Set_Tab_Vborder (Notebook : access Gtk_Notebook_Record; Border_Width : in Gint); | ||
Modify the height of the vertical borders of the tabs.
| ||
procedure Set_Scrollable (Notebook : access Gtk_Notebook_Record; Scrollable : in Boolean := True); | ||
Indicate whether Notebook display scrolling arrows when there are | ||
Popup Menu | ||
The pages of a notebook can be selected both via tabs and a contextual | ||
procedure Popup_Disable (Notebook : access Gtk_Notebook_Record); | ||
Disable the popup menu. | ||
procedure Popup_Enable (Notebook : access Gtk_Notebook_Record); | ||
Enable the popup menu. | ||
Page properties | ||
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. | ||
function Get_Tab_Label (Page : Gtk_Notebook_Page) return Gtk.Widget.Gtk_Widget; | ||
Same as the previous function, but this applies on a specific page, | ||
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. | ||
procedure Set_Tab_Label_Text (Notebook : access Gtk_Notebook_Record; Child : access Gtk.Widget.Gtk_Widget_Record'Class; Tab_Text : in String); | ||
Modify the text displayed in the tab for the page that contains Child. | ||
function Get_Menu_Label (Page : in Gtk_Notebook_Page) return Gtk.Widget.Gtk_Widget; | ||
Return the widget displayed in the contextual menu for the page. | ||
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 | ||
procedure Set_Menu_Label_Text (Notebook : access Gtk_Notebook_Record; Child : access Gtk.Widget.Gtk_Widget_Record'Class; Menu_Text : in String); | ||
Modify the text displayed in the contextual menu for the page that | ||
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); | ||
Return the packing used for the tab associated with the page | ||
procedure Set_Tab_Label_Packing (Notebook : access Gtk_Notebook_Record; Child : access Gtk.Widget.Gtk_Widget_Record'Class; Expand : in Boolean; Fill : in Boolean; Pack_Type : in Gtk.Enums.Gtk_Pack_Type); | ||
Modify the packing used for the tab associated with the page that | ||
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.
| ||
List of pages | ||
function Get_Children (Widget : access Gtk_Notebook_Record) return Page_List.Glist; | ||
Return the list of all pages in the notebook.
|