GtkNotebook: GtkNotebook

Description Methods and Functions Hierarchy Interfaces Detailed Description GtkNotebook as GtkBuildable Structures Convenient Construction User Functions Signals Properties Style Properties Author(s) References

Description

A tabbed notebook container

Methods and Functions

gtkNotebookNew(show = TRUE)
gtkNotebookAppendPage(object, child, tab.label = NULL)
gtkNotebookAppendPageMenu(object, child, tab.label = NULL, menu.label = NULL)
gtkNotebookPrependPage(object, child, tab.label = NULL)
gtkNotebookPrependPageMenu(object, child, tab.label = NULL, menu.label = NULL)
gtkNotebookInsertPage(object, child, tab.label = NULL, position = -1)
gtkNotebookInsertPageMenu(object, child, tab.label = NULL, menu.label = NULL, position = -1)
gtkNotebookRemovePage(object, page.num)
gtkNotebookPageNum(object, child)
gtkNotebookNextPage(object)
gtkNotebookPrevPage(object)
gtkNotebookReorderChild(object, child, position)
gtkNotebookSetTabPos(object, pos)
gtkNotebookSetShowTabs(object, show.tabs)
gtkNotebookSetShowBorder(object, show.border)
gtkNotebookSetScrollable(object, scrollable)
gtkNotebookSetTabBorder(object, border.width)
gtkNotebookPopupEnable(object)
gtkNotebookPopupDisable(object)
gtkNotebookGetCurrentPage(object)
gtkNotebookGetMenuLabel(object, child)
gtkNotebookGetNthPage(object, page.num)
gtkNotebookGetNPages(object)
gtkNotebookGetTabLabel(object, child)
gtkNotebookQueryTabLabelPacking(object, child)
gtkNotebookSetHomogeneousTabs(object, homogeneous)
gtkNotebookSetMenuLabel(object, child, menu.label = NULL)
gtkNotebookSetMenuLabelText(object, child, menu.text)
gtkNotebookSetTabHborder(object, tab.hborder)
gtkNotebookSetTabLabel(object, child, tab.label = NULL)
gtkNotebookSetTabLabelPacking(object, child, expand, fill, pack.type)
gtkNotebookSetTabLabelText(object, child, tab.text)
gtkNotebookSetTabVborder(object, tab.vborder)
gtkNotebookSetTabReorderable(object, child, reorderable)
gtkNotebookSetTabDetachable(object, child, detachable)
gtkNotebookGetMenuLabelText(object, child)
gtkNotebookGetScrollable(object)
gtkNotebookGetShowBorder(object)
gtkNotebookGetShowTabs(object)
gtkNotebookGetTabLabelText(object, child)
gtkNotebookGetTabPos(object)
gtkNotebookGetTabReorderable(object, child)
gtkNotebookGetTabDetachable(object, child)
gtkNotebookSetCurrentPage(object, page.num)
gtkNotebookSetGroupId(object, group.id)
gtkNotebookSetGroupId(object, group.id)
gtkNotebookGetGroupId(object)
gtkNotebookGetGroupId(object)
gtkNotebookSetGroup(object, group)
gtkNotebookGetGroup(object)
gtkNotebookSetActionWidget(object, widget, pack.type)
gtkNotebookGetActionWidget(object, pack.type)
gtkNotebookSetWindowCreationHook(func, data)
gtkNotebook(show = TRUE)

Hierarchy

1
2
3
4
5
6
GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkWidget
                     +----GtkContainer
                           +----GtkNotebook

Interfaces

GtkNotebook implements AtkImplementorIface and GtkBuildable.

Detailed Description

The GtkNotebook widget is a GtkContainer whose children are pages that can be switched between using tab labels along one edge.

There are many configuration options for GtkNotebook. Among other things, you can choose on which edge the tabs appear (see gtkNotebookSetTabPos), whether, if there are too many tabs to fit the notebook should be made bigger or scrolling arrows added (see gtk_notebook_set_scrollable), and whether there will be a popup menu allowing the users to switch pages. (see gtkNotebookPopupEnable, gtkNotebookPopupDisable)

GtkNotebook as GtkBuildable

The GtkNoteboopk implementation of the GtkBuildable interface supports placing children into tabs by specifying "tab" as the "type" attribute of a <child> element. Note that the content of the tab must be created before the tab can be filled. A tab child can be specified without specifying a <child> type attribute.

To add a child widget in the notebooks action area, specify "action-start" or "action-end" as the "type" attribute of the <child> element.

A UI definition fragment with GtkNotebook

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
<object class="GtkNotebook">
  <child>
    <object class="GtkLabel" id="notebook-content">
      <property name="label">Content</property>
    </object>
  </child>
  <child type="tab">
    <object class="GtkLabel" id="notebook-tab">
      <property name="label">Tab</property>
    </object>
  </child>
</object>

Structures

GtkNotebook

undocumented

tabPos

[GtkPositionType]

Convenient Construction

gtkNotebook is the equivalent of gtkNotebookNew.

User Functions

GtkNotebookWindowCreationFunc(source, page, x, y, data)

A function used by GtkNotebook when a detachable tab is dropped in the root window, it's used to create a window containing a notebook where the tab will be attached. This function will also be responsible of moving/resizing the window and adding the necessary properties to the notebook (i.e.: group-id). If the function returns NULL, the drag will be cancelled.

source

The source GtkNotebook of the drag operation

page

the child GtkWidget affected

x

the X coordinate where the drop happens

y

the Y coordinate where the drop happens

data

user data

Returns: [GtkNotebook] The created GtkNotebook where the tab will be attached, or NULL to cancel the drag

Signals

change-current-page(notebook, user.data)

undocumented

notebook

the object which received the signal.

user.data

user data set when the signal handler was connected.

create-window(notebook, page, x, y, user.data)

The ::create-window signal is emitted when a detachable tab is dropped on the root window.

A handler for this signal can create a window containing a notebook where the tab will be attached. It is also responsible for moving/resizing the window and adding the necessary properties to the notebook (e.g. the "group-id" ).

The default handler uses the global window creation hook, if one has been set with gtkNotebookSetWindowCreationHook. Since 2.12

notebook

the GtkNotebook emitting the signal

page

the tab of notebook that is being detached

x

the X coordinate where the drop happens

y

the Y coordinate where the drop happens

user.data

user data set when the signal handler was connected.

Returns: [GtkNotebook] a GtkNotebook that page should be added to, or NULL.

focus-tab(notebook, user.data)

undocumented

notebook

the object which received the signal.

user.data

user data set when the signal handler was connected.

move-focus-out(notebook, user.data)

undocumented

notebook

the object which received the signal.

user.data

user data set when the signal handler was connected.

page-added(notebook, child, page.num, user.data)

the ::page-added signal is emitted in the notebook right after a page is added to the notebook. Since 2.10

notebook

the GtkNotebook

child

the child GtkWidget affected

page.num

the new page number for child

user.data

user data set when the signal handler was connected.

page-removed(notebook, child, page.num, user.data)

the ::page-removed signal is emitted in the notebook right after a page is removed from the notebook. Since 2.10

notebook

the GtkNotebook

child

the child GtkWidget affected

page.num

the child page number

user.data

user data set when the signal handler was connected.

page-reordered(notebook, child, page.num, user.data)

the ::page-reordered signal is emitted in the notebook right after a page has been reordered. Since 2.10

notebook

the GtkNotebook

child

the child GtkWidget affected

page.num

the new page number for child

user.data

user data set when the signal handler was connected.

reorder-tab(notebook, user.data)

undocumented

notebook

the object which received the signal.

user.data

user data set when the signal handler was connected.

select-page(notebook, user.data)

undocumented

notebook

the object which received the signal.

user.data

user data set when the signal handler was connected.

switch-page(notebook, page, page.num, user.data)

Emitted when the user or a function changes the current page.

notebook

the object which received the signal.

page

the new current page

page.num

the index of the page

user.data

user data set when the signal handler was connected.

Properties

enable-popup [logical : Read / Write]

If TRUE, pressing the right mouse button on the notebook pops up a menu that you can use to go to a page. Default value: FALSE

group [R object : Read / Write]

Group for tabs drag and drop. Since 2.12

group-id [integer : Read / Write]

Group ID for tabs drag and drop. Allowed values: >= -1 Default value: -1

homogeneous [logical : Read / Write]

Whether tabs should have homogeneous sizes. Default value: FALSE

page [integer : Read / Write]

The index of the current page. Allowed values: >= -1 Default value: -1

scrollable [logical : Read / Write]

If TRUE, scroll arrows are added if there are too many tabs to fit. Default value: FALSE

show-border [logical : Read / Write]

Whether the border should be shown or not. Default value: TRUE

show-tabs [logical : Read / Write]

Whether tabs should be shown or not. Default value: TRUE

tab-border [numeric : Write]

Width of the border around the tab labels. Default value: 2

tab-hborder [numeric : Read / Write]

Width of the horizontal border of tab labels. Default value: 2

tab-pos [GtkPositionType : Read / Write]

Which side of the notebook holds the tabs. Default value: GTK_POS_TOP

tab-vborder [numeric : Read / Write]

Width of the vertical border of tab labels. Default value: 2

Style Properties

arrow-spacing [integer : Read]

The "arrow-spacing" property defines the spacing between the scroll arrows and the tabs. Allowed values: >= 0 Default value: 0 Since 2.10

has-backward-stepper [logical : Read]

The "has-backward-stepper" property determines whether the standard backward arrow button is displayed. Default value: TRUE Since 2.4

has-forward-stepper [logical : Read]

The "has-forward-stepper" property determines whether the standard forward arrow button is displayed. Default value: TRUE Since 2.4

has-secondary-backward-stepper [logical : Read]

The "has-secondary-backward-stepper" property determines whether a second backward arrow button is displayed on the opposite end of the tab area. Default value: FALSE Since 2.4

has-secondary-forward-stepper [logical : Read]

The "has-secondary-forward-stepper" property determines whether a second forward arrow button is displayed on the opposite end of the tab area. Default value: FALSE Since 2.4

tab-curvature [integer : Read]

The "tab-curvature" property defines size of tab curvature. Allowed values: >= 0 Default value: 1 Since 2.10

tab-overlap [integer : Read]

The "tab-overlap" property defines size of tab overlap area. Default value: 2 Since 2.10

Author(s)

Derived by RGtkGen from GTK+ documentation

References

https://developer.gnome.org/gtk2/stable/GtkNotebook.html


RGtk2 documentation built on Oct. 14, 2021, 5:08 p.m.

Related to GtkNotebook in RGtk2...