Google

logo top
Main Page   Widgets   Namespaces   Book  

Gtk::Notebook Class Reference
[WidgetsContainer Widgets]

Container which shows one of its children at a time, in tabbed windows. More...

Inheritance diagram for Gtk::Notebook:

Inheritance graph
[legend]
List of all members.

Public Types

typedef Notebook_Helpers::PageList PageList

Public Methods

virtual ~Notebook ()
GtkNotebook* gobj ()
const GtkNotebook* gobj () const
 Notebook ()
void prepend_page (Widget& child, Widget& tab_label)
 Prepends a page to notebook .

void prepend_page (Widget& child, const Glib::ustring& tab_label, bool use_mnemonic=false)
void prepend_page (Widget& child, Widget& tab_label, Widget& menu_label)
 Prepends a page to notebook , specifying the widget to use as the label in the popup menu.

void prepend_page (Widget& child, const Glib::ustring& tab_label, const Glib::ustring& menu_label, bool use_mnemonic)
void append_page (Widget& child, Widget& tab_label)
 Appends a page to notebook .

void append_page (Widget& child, const Glib::ustring& tab_label, bool use_mnemonic=false)
void append_page (Widget& child, Widget& tab_label, Widget& menu_label)
 Appends a page to notebook , specifying the widget to use as the label in the popup menu.

void append_page (Widget& child, const Glib::ustring& tab_label, const Glib::ustring& menu_label, bool use_mnemonic=false)
void insert_page (Widget& child, Widget& tab_label, int position)
 Insert a page into notebook at the given position.

void insert_page (Widget& child, const Glib::ustring& tab_label, int position, bool use_mnemonic=false)
void insert_page (Widget& child, Widget& tab_label, Widget& menu_label, int position)
 Insert a page into notebook at the given position, specifying the widget to use as the label in the popup menu.

void insert_page (Widget& child, const Glib::ustring& tab_label, const Glib::ustring& menu_label, int position, bool use_mnemonic=false)
void remove_page (int page_num=0)
 Removes a page from the notebook given its index in the notebook.

void remove_page (Widget& child)
int get_current_page () const
 Returns the page number of the current page.

Widgetget_nth_page (int page_number)
 Returns the child widget contained in page number page_num .

const Widgetget_nth_page (int page_number) const
 Returns the child widget contained in page number page_num .

gint get_n_pages ()
 Gets the number of pages in a notebook.

int page_num (const Widget& child)
 Finds the index of the page which contains the given child widget.

void set_current_page (int page_number)
 Switches to the page number page_num .

void next_page ()
 Switches to the next page.

void prev_page ()
 Switches to the previous page.

void set_show_border (bool show_border=true)
 Sets whether a bevel will be drawn around the notebook pages.

bool get_show_border () const
 Returns whether a bevel will be drawn around the notebook pages.

void set_show_tabs (bool show_tabs=true)
 Sets whether to show the tabs for the notebook or not.

bool get_show_tabs () const
 Returns whether the tabs of the notebook are shown.

void set_tab_pos (PositionType pos)
 Sets the edge at which the tabs for switching pages in the notebook are drawn.

PositionType get_tab_pos () const
 Gets the edge at which the tabs for switching pages in the notebook are drawn.

void set_scrollable (bool scrollable=true)
 Sets whether the tab label area will have arrows for scrolling if there are too many tabs to fit in the area.

bool get_scrollable () const
 Returns whether the tab label area has arrows for scrolling.

void popup_enable ()
 Enables the popup menu: if the user clicks with the right mouse button on the bookmarks, a menu with all the pages will be popped up.

void popup_disable ()
 Disables the popup menu.

Widgetget_tab_label (Widget& child)
 Returns the tab label widget for the page child .

const Widgetget_tab_label (Widget& child) const
 Returns the tab label widget for the page child .

void set_tab_label (Widget& child, Widget& tab_label)
 Changes the tab label for child .

void set_tab_label_text (Widget& child, const Glib::ustring& tab_text)
 Creates a new label and sets it as the tab label for the page containing child .

Glib::ustring get_tab_label_text (Widget& child) const
 Retrieves the text of the tab label for the page containing child .

Widgetget_menu_label (Widget& child)
 Retrieves the menu label widget of the page containing child .

const Widgetget_menu_label (Widget& child) const
 Retrieves the menu label widget of the page containing child .

void set_menu_label (Widget& child, Widget& menu_label)
 Changes the menu label for the page containing child .

void set_menu_label_text (Widget& child, const Glib::ustring& menu_text)
 Creates a new label and sets it as the menu label of child .

Glib::ustring get_menu_label_text (Widget& child) const
 Retrieves the text of the menu label for the page containing child .

void query_tab_label_packing (Widget& child, bool& expand, bool& fill, PackType& pack_type)
void set_tab_label_packing (Widget& child, bool expand, bool fill, PackType pack_type)
 Sets the packing parameters for the tab label of the page containing child .

void reorder_child (Widget& child, int position)
 Reorders the page containing child , so that it appears in position position .

PageList::iterator get_current ()
PageListpages ()
const PageListpages () const
Glib::SignalProxy2< void,
GtkNotebookPage*, guint > 
signal_switch_page ()
Glib::SignalProxy1< bool,
bool > 
signal_select_page ()
Glib::SignalProxy1< bool,
NotebookTab
signal_focus_tab ()
Glib::SignalProxy1< void,
int > 
signal_change_current_page ()
Glib::SignalProxy1< void,
DirectionType
signal_move_focus_out ()
Glib::PropertyProxy<PositionTypeproperty_tab_pos ()
Glib::PropertyProxy<bool> property_show_tabs ()
Glib::PropertyProxy<bool> property_show_border ()
Glib::PropertyProxy<bool> property_scrollable ()
Glib::PropertyProxy_WriteOnly<
guint > 
property_tab_border ()
Glib::PropertyProxy<guint> property_tab_hborder ()
Glib::PropertyProxy<guint> property_tab_vborder ()
Glib::PropertyProxy<int> property_page ()
Glib::PropertyProxy<bool> property_enable_popup ()
Glib::PropertyProxy<bool> property_homogeneous ()

Protected Methods

virtual void on_switch_page (GtkNotebookPage* page, guint page_num)
virtual bool on_select_page (bool move_focus)
virtual bool on_focus_tab (NotebookTab type)
virtual void on_change_current_page (int offset)
virtual void on_move_focus_out (DirectionType direction)

Related Functions

(Note that these are not member functions.)

Gtk::Notebook* wrap (GtkNotebook* object, bool take_copy=false)

Detailed Description

Container which shows one of its children at a time, in tabbed windows.

The Gtk::Notebook widget is a Gtk::Container whose children are pages that can be switched between using tab labels along one edge.

You can use the PageList returned by pages() as any normal STL container to manipulate the pages.


Member Typedef Documentation

typedef Notebook_Helpers::PageList Gtk::Notebook::PageList
 


Constructor & Destructor Documentation

virtual Gtk::Notebook::~Notebook (   [virtual]
 

Gtk::Notebook::Notebook (  
 


Member Function Documentation

void Gtk::Notebook::append_page ( Widget   child,
const Glib::ustring   tab_label,
const Glib::ustring   menu_label,
bool    use_mnemonic = false
 

void Gtk::Notebook::append_page ( Widget   child,
Widget   tab_label,
Widget   menu_label
 

Appends a page to notebook , specifying the widget to use as the label in the popup menu.

Parameters:
child The Gtk::Widget to use as the contents of the page.
tab_label The Gtk::Widget to be used as the label for the page, or 0 to use the default label, 'page N'.
menu_label The widget to use as a label for the page-switch menu, if that is enabled. If 0, and tab_label is a Gtk::Label or 0, then the menu label will be a newly created label with the same text as tab_label ; If tab_label is not a Gtk::Label, menu_label must be specified if the page-switch menu is to be used.

void Gtk::Notebook::append_page ( Widget   child,
const Glib::ustring   tab_label,
bool    use_mnemonic = false
 

void Gtk::Notebook::append_page ( Widget   child,
Widget   tab_label
 

Appends a page to notebook .

Parameters:
child The Gtk::Widget to use as the contents of the page.
tab_label The Gtk::Widget to be used as the label for the page, or 0 to use the default label, 'page N'.

PageList::iterator Gtk::Notebook::get_current (  
 

int Gtk::Notebook::get_current_page (   const
 

Returns the page number of the current page.

Returns:
The index (starting from 0) of the current page in the notebook. If the notebook has no pages, then -1 will be returned.

const Widget* Gtk::Notebook::get_menu_label ( Widget   child const
 

Retrieves the menu label widget of the page containing child .

Parameters:
child A widget contained in a page of notebook .
Returns:
The menu label, or 0 if the notebook page does not have a menu label other than the default (the tab label).

Widget* Gtk::Notebook::get_menu_label ( Widget   child
 

Retrieves the menu label widget of the page containing child .

Parameters:
child A widget contained in a page of notebook .
Returns:
The menu label, or 0 if the notebook page does not have a menu label other than the default (the tab label).

Glib::ustring Gtk::Notebook::get_menu_label_text ( Widget   child const
 

Retrieves the text of the menu label for the page containing child .

Parameters:
child The child widget of a page of the notebook.
Returns:
Value: the text of the tab label.

gint Gtk::Notebook::get_n_pages (  
 

Gets the number of pages in a notebook.

Returns:
The number of pages in the notebook.
Since: 2.2.

const Widget* Gtk::Notebook::get_nth_page ( int    page_number const
 

Returns the child widget contained in page number page_num .

Parameters:
page_num The index of a page in the noteobok, or -1 to get the last page.
Returns:
The child widget, or 0 if page_num is out of bounds.

Widget* Gtk::Notebook::get_nth_page ( int    page_number
 

Returns the child widget contained in page number page_num .

Parameters:
page_num The index of a page in the noteobok, or -1 to get the last page.
Returns:
The child widget, or 0 if page_num is out of bounds.

bool Gtk::Notebook::get_scrollable (   const
 

Returns whether the tab label area has arrows for scrolling.

See set_scrollable().

Returns:
true if arrows for scrolling are present.

bool Gtk::Notebook::get_show_border (   const
 

Returns whether a bevel will be drawn around the notebook pages.

See set_show_border().

Returns:
true if the bevel is drawn.

bool Gtk::Notebook::get_show_tabs (   const
 

Returns whether the tabs of the notebook are shown.

See set_show_tabs().

Returns:
true if the tabs are shown.

const Widget* Gtk::Notebook::get_tab_label ( Widget   child const
 

Returns the tab label widget for the page child .

0 is returned if child is not in notebook or if no tab label has specifically been set for child .

Parameters:
child The page.
Returns:
The tab label.

Widget* Gtk::Notebook::get_tab_label ( Widget   child
 

Returns the tab label widget for the page child .

0 is returned if child is not in notebook or if no tab label has specifically been set for child .

Parameters:
child The page.
Returns:
The tab label.

Glib::ustring Gtk::Notebook::get_tab_label_text ( Widget   child const
 

Retrieves the text of the tab label for the page containing child .

Parameters:
child A widget contained in a page of notebook .
Returns:
Value: the text of the tab label.

PositionType Gtk::Notebook::get_tab_pos (   const
 

Gets the edge at which the tabs for switching pages in the notebook are drawn.

Returns:
The edge at which the tabs are drawn.

const GtkNotebook* Gtk::Notebook::gobj (   const [inline]
 

Reimplemented from Gtk::Container.

GtkNotebook* Gtk::Notebook::gobj (   [inline]
 

Reimplemented from Gtk::Container.

void Gtk::Notebook::insert_page ( Widget   child,
const Glib::ustring   tab_label,
const Glib::ustring   menu_label,
int    position,
bool    use_mnemonic = false
 

void Gtk::Notebook::insert_page ( Widget   child,
Widget   tab_label,
Widget   menu_label,
int    position
 

Insert a page into notebook at the given position, specifying the widget to use as the label in the popup menu.

Parameters:
child The Gtk::Widget to use as the contents of the page.
tab_label The Gtk::Widget to be used as the label for the page, or 0 to use the default label, 'page N'.
menu_label The widget to use as a label for the page-switch menu, if that is enabled. If 0, and tab_label is a Gtk::Label or 0, then the menu label will be a newly created label with the same text as tab_label ; If tab_label is not a Gtk::Label, menu_label must be specified if the page-switch menu is to be used.
position The index (starting at 0) at which to insert the page, or -1 to append the page after all other pages.

void Gtk::Notebook::insert_page ( Widget   child,
const Glib::ustring   tab_label,
int    position,
bool    use_mnemonic = false
 

void Gtk::Notebook::insert_page ( Widget   child,
Widget   tab_label,
int    position
 

Insert a page into notebook at the given position.

Parameters:
child The Gtk::Widget to use as the contents of the page.
tab_label The Gtk::Widget to be used as the label for the page, or 0 to use the default label, 'page N'.
position The index (starting at 0) at which to insert the page, or -1 to append the page after all other pages.

void Gtk::Notebook::next_page (  
 

Switches to the next page.

Nothing happens if the current page is the last page.

virtual void Gtk::Notebook::on_change_current_page ( int    offset [protected, virtual]
 

virtual bool Gtk::Notebook::on_focus_tab ( NotebookTab    type [protected, virtual]
 

virtual void Gtk::Notebook::on_move_focus_out ( DirectionType    direction [protected, virtual]
 

virtual bool Gtk::Notebook::on_select_page ( bool    move_focus [protected, virtual]
 

virtual void Gtk::Notebook::on_switch_page ( GtkNotebookPage*    page,
guint    page_num
[protected, virtual]
 

int Gtk::Notebook::page_num ( const Widget   child
 

Finds the index of the page which contains the given child widget.

Parameters:
child A Gtk::Widget.
Returns:
The index of the page containing child , or -1 if child is not in the notebook.

const PageList& Gtk::Notebook::pages (   const
 

PageList& Gtk::Notebook::pages (  
 

void Gtk::Notebook::popup_disable (  
 

Disables the popup menu.

void Gtk::Notebook::popup_enable (  
 

Enables the popup menu: if the user clicks with the right mouse button on the bookmarks, a menu with all the pages will be popped up.

void Gtk::Notebook::prepend_page ( Widget   child,
const Glib::ustring   tab_label,
const Glib::ustring   menu_label,
bool    use_mnemonic
 

void Gtk::Notebook::prepend_page ( Widget   child,
Widget   tab_label,
Widget   menu_label
 

Prepends a page to notebook , specifying the widget to use as the label in the popup menu.

Parameters:
child The Gtk::Widget to use as the contents of the page.
tab_label The Gtk::Widget to be used as the label for the page, or 0 to use the default label, 'page N'.
menu_label The widget to use as a label for the page-switch menu, if that is enabled. If 0, and tab_label is a Gtk::Label or 0, then the menu label will be a newly created label with the same text as tab_label ; If tab_label is not a Gtk::Label, menu_label must be specified if the page-switch menu is to be used.

void Gtk::Notebook::prepend_page ( Widget   child,
const Glib::ustring   tab_label,
bool    use_mnemonic = false
 

void Gtk::Notebook::prepend_page ( Widget   child,
Widget   tab_label
 

Prepends a page to notebook .

Parameters:
child The Gtk::Widget to use as the contents of the page.
tab_label The Gtk::Widget to be used as the label for the page, or 0 to use the default label, 'page N'.

void Gtk::Notebook::prev_page (  
 

Switches to the previous page.

Nothing happens if the current page is the first page.

Glib::PropertyProxy<bool> Gtk::Notebook::property_enable_popup (  
 

Glib::PropertyProxy<bool> Gtk::Notebook::property_homogeneous (  
 

Glib::PropertyProxy<int> Gtk::Notebook::property_page (  
 

Glib::PropertyProxy<bool> Gtk::Notebook::property_scrollable (  
 

Glib::PropertyProxy<bool> Gtk::Notebook::property_show_border (  
 

Glib::PropertyProxy<bool> Gtk::Notebook::property_show_tabs (  
 

Glib::PropertyProxy_WriteOnly<guint> Gtk::Notebook::property_tab_border (  
 

Glib::PropertyProxy<guint> Gtk::Notebook::property_tab_hborder (  
 

Glib::PropertyProxy<PositionType> Gtk::Notebook::property_tab_pos (  
 

Glib::PropertyProxy<guint> Gtk::Notebook::property_tab_vborder (  
 

void Gtk::Notebook::query_tab_label_packing ( Widget   child,
bool&    expand,
bool&    fill,
PackType   pack_type
 

void Gtk::Notebook::remove_page ( Widget   child
 

void Gtk::Notebook::remove_page ( int    page_num = 0
 

Removes a page from the notebook given its index in the notebook.

Parameters:
page_num The index of a notebook page, starting from 0. If -1, the last page will be removed.

void Gtk::Notebook::reorder_child ( Widget   child,
int    position
 

Reorders the page containing child , so that it appears in position position .

If position is greater than or equal to the number of children in the list or negative, child will be moved to the end of the list.

Parameters:
child The child to move.
position The new position, or -1 to move to the end.

void Gtk::Notebook::set_current_page ( int    page_number
 

Switches to the page number page_num .

Parameters:
page_num Index of the page to switch to, starting from 0. If negative, the last page will be used. If greater than the number of pages in the notebook, nothing will be done.

void Gtk::Notebook::set_menu_label ( Widget   child,
Widget   menu_label
 

Changes the menu label for the page containing child .

Parameters:
child The child widget.
menu_label The menu label, or 0 for default.

void Gtk::Notebook::set_menu_label_text ( Widget   child,
const Glib::ustring   menu_text
 

Creates a new label and sets it as the menu label of child .

Parameters:
child The child widget.
menu_text The label text.

void Gtk::Notebook::set_scrollable ( bool    scrollable = true
 

Sets whether the tab label area will have arrows for scrolling if there are too many tabs to fit in the area.

Parameters:
scrollable true if scroll arrows should be added.

void Gtk::Notebook::set_show_border ( bool    show_border = true
 

Sets whether a bevel will be drawn around the notebook pages.

This only has a visual effect when the tabs are not shown. See set_show_tabs().

Parameters:
show_border true if a bevel should be drawn around the notebook.

void Gtk::Notebook::set_show_tabs ( bool    show_tabs = true
 

Sets whether to show the tabs for the notebook or not.

Parameters:
show_tabs true if the tabs should be shown.

void Gtk::Notebook::set_tab_label ( Widget   child,
Widget   tab_label
 

Changes the tab label for child .

If 0 is specified for tab_label , then the page will have the label 'page N'.

Parameters:
child The page.
tab_label The tab label widget to use, or 0 for default tab label.

void Gtk::Notebook::set_tab_label_packing ( Widget   child,
bool    expand,
bool    fill,
PackType    pack_type
 

Sets the packing parameters for the tab label of the page containing child .

See Gtk::Box::pack_start() for the exact meaning of the parameters.

Parameters:
child The child widget.
expand Whether to expand the bookmark or not.
fill Whether the bookmark should fill the allocated area or not.
pack_type The position of the bookmark.

void Gtk::Notebook::set_tab_label_text ( Widget   child,
const Glib::ustring   tab_text
 

Creates a new label and sets it as the tab label for the page containing child .

Parameters:
child The page.
tab_text The label text.

void Gtk::Notebook::set_tab_pos ( PositionType    pos
 

Sets the edge at which the tabs for switching pages in the notebook are drawn.

Parameters:
pos The edge to draw the tabs at.

Glib::SignalProxy1<void,int> Gtk::Notebook::signal_change_current_page (  
 

Prototype:
void change_current_page(int offset)

Glib::SignalProxy1<bool,NotebookTab> Gtk::Notebook::signal_focus_tab (  
 

Prototype:
bool focus_tab(NotebookTab type)

Glib::SignalProxy1<void,DirectionType> Gtk::Notebook::signal_move_focus_out (  
 

Prototype:
void move_focus_out(DirectionType direction)

Glib::SignalProxy1<bool,bool> Gtk::Notebook::signal_select_page (  
 

Prototype:
bool select_page(bool move_focus)

Glib::SignalProxy2<void,GtkNotebookPage*,guint> Gtk::Notebook::signal_switch_page (  
 

Prototype:
void switch_page(GtkNotebookPage* page, guint page_num)


Friends And Related Function Documentation

Gtk::Notebook* wrap ( GtkNotebook*    object,
bool    take_copy = false
[related]
 


The documentation for this class was generated from the following file:
Generated for gtkmm by Doxygen 1.3-rc1 © 1997-2001