adw.tab_view

Module for [TabView] class

Types 3

A dynamic tabbed container.

[adw.tab_view.TabView] is a container which shows one child at a time. While it provides keyboard shortcuts for switching between pages, it does not provide a visible tab switcher and relies on external widgets for that, such as class@TabBar, class@TabOverview and class@TabButton.

[adw.tab_view.TabView] maintains a class@TabPage object for each page, which holds additional per-page properties. You can obtain the [adw.tab_page.TabPage] for a page with [adw.tab_view.TabView.getPage], and as the return value for [adw.tab_view.TabView.append] and other functions for adding children.

[adw.tab_view.TabView] only aims to be useful for dynamic tabs in multi-window document-based applications, such as web browsers, file managers, text editors or terminals. It does not aim to replace [gtk.notebook.Notebook] for use cases such as tabbed dialogs.

As such, it does not support disabling page reordering or detaching.

[adw.tab_view.TabView] adds a number of global page switching and reordering shortcuts. The property@TabView:shortcuts property can be used to manage them.

See flags@TabViewShortcuts for the list of the available shortcuts. All of the shortcuts are enabled by default.

[adw.tab_view.TabView.addShortcuts] and [adw.tab_view.TabView.removeShortcuts] can be used to manage shortcuts in a convenient way, for example:

adw_tab_view_remove_shortcuts (view, ADW_TAB_VIEW_SHORTCUT_CONTROL_HOME |
                                    ADW_TAB_VIEW_SHORTCUT_CONTROL_END);

CSS nodes

[adw.tab_view.TabView] has a main CSS node with the name tabview.

Accessibility

[adw.tab_view.TabView] uses the [gtk.types.AccessibleRole.TabPanel] for the tab pages which are the accessible parent objects of the child widgets.

Methods
GType _gType() @property
TabView self()Returns `this`, for use in `with` statements.
TabViewGidBuilder builder()Get builder for [adw.tab_view.TabView] Returns: New builder object
gio.icon.Icon defaultIcon() @propertyGet `defaultIcon` property. Returns: Default page icon.
void defaultIcon(gio.icon.Icon propval) @propertySet `defaultIcon` property. Params: propval = Default page icon.
bool isTransferringPage() @propertyGet `isTransferringPage` property. Returns: Whether a page is being transferred.
gio.menu_model.MenuModel menuModel() @propertyGet `menuModel` property. Returns: Tab context menu model.
void menuModel(gio.menu_model.MenuModel propval) @propertySet `menuModel` property. Params: propval = Tab context menu model.
int nPages() @propertyGet `nPages` property. Returns: The number of pages in the tab view.
int nPinnedPages() @propertyGet `nPinnedPages` property. Returns: The number of pinned pages in the tab view.
gtk.selection_model.SelectionModel pages() @propertyGet `pages` property. Returns: A selection model with the tab view's pages.
adw.tab_page.TabPage selectedPage() @propertyGet `selectedPage` property. Returns: The currently selected page.
void selectedPage(adw.tab_page.TabPage propval) @propertySet `selectedPage` property. Params: propval = The currently selected page.
adw.types.TabViewShortcuts shortcuts() @propertyGet `shortcuts` property. Returns: The enabled shortcuts.
void shortcuts(adw.types.TabViewShortcuts propval) @propertySet `shortcuts` property. Params: propval = The enabled shortcuts.
adw.tab_page.TabPage addPage(gtk.widget.Widget child, adw.tab_page.TabPage parent = null)Adds child to self with parent as the parent.
void addShortcuts(adw.types.TabViewShortcuts shortcuts)Adds shortcuts for self.
adw.tab_page.TabPage append(gtk.widget.Widget child)Inserts child as the last non-pinned page.
adw.tab_page.TabPage appendPinned(gtk.widget.Widget child)Inserts child as the last pinned page.
void closeOtherPages(adw.tab_page.TabPage page)Requests to close all pages other than page.
void closePage(adw.tab_page.TabPage page)Requests to close page.
void closePageFinish(adw.tab_page.TabPage page, bool confirm)Completes a [adw.tab_view.TabView.closePage] call for page.
void closePagesAfter(adw.tab_page.TabPage page)Requests to close all pages after page.
void closePagesBefore(adw.tab_page.TabPage page)Requests to close all pages before page.
gio.icon.Icon getDefaultIcon()Gets the default icon of self. Returns: the default icon of self.
bool getIsTransferringPage()Whether a page is being transferred.
gio.menu_model.MenuModel getMenuModel()Gets the tab context menu model for self. Returns: the tab context menu model for self
int getNPages()Gets the number of pages in self. Returns: the number of pages in self
int getNPinnedPages()Gets the number of pinned pages in self.
adw.tab_page.TabPage getNthPage(int position)Gets the `classTabPage` representing the child at position.
adw.tab_page.TabPage getPage(gtk.widget.Widget child)Gets the `classTabPage` object representing child.
int getPagePosition(adw.tab_page.TabPage page)Finds the position of page in self, starting from 0.
gtk.selection_model.SelectionModel getPages()Returns a [gio.list_model.ListModel] that contains the pages of self.
adw.tab_page.TabPage getSelectedPage()Gets the currently selected page in self. Returns: the selected page
adw.types.TabViewShortcuts getShortcuts()Gets the enabled shortcuts for self. Returns: the shortcut mask
adw.tab_page.TabPage insert(gtk.widget.Widget child, int position)Inserts a non-pinned page at position.
adw.tab_page.TabPage insertPinned(gtk.widget.Widget child, int position)Inserts a pinned page at position.
void invalidateThumbnails()Invalidates thumbnails for all pages in self.
adw.tab_page.TabPage prepend(gtk.widget.Widget child)Inserts child as the first non-pinned page.
adw.tab_page.TabPage prependPinned(gtk.widget.Widget child)Inserts child as the first pinned page.
void removeShortcuts(adw.types.TabViewShortcuts shortcuts)Removes shortcuts from self.
bool reorderBackward(adw.tab_page.TabPage page)Reorders page to before its previous page if possible.
bool reorderFirst(adw.tab_page.TabPage page)Reorders page to the first possible position.
bool reorderForward(adw.tab_page.TabPage page)Reorders page to after its next page if possible.
bool reorderLast(adw.tab_page.TabPage page)Reorders page to the last possible position.
bool reorderPage(adw.tab_page.TabPage page, int position)Reorders page to position.
bool selectNextPage()Selects the page after the currently selected page.
bool selectPreviousPage()Selects the page before the currently selected page.
void setDefaultIcon(gio.icon.Icon defaultIcon)Sets the default page icon for self.
void setMenuModel(gio.menu_model.MenuModel menuModel = null)Sets the tab context menu model for self.
void setPagePinned(adw.tab_page.TabPage page, bool pinned)Pins or unpins page.
void setSelectedPage(adw.tab_page.TabPage selectedPage)Sets the currently selected page in self.
void setShortcuts(adw.types.TabViewShortcuts shortcuts)Sets the enabled shortcuts for self.
void transferPage(adw.tab_page.TabPage page, adw.tab_view.TabView otherView, int position)Transfers page from self to other_view.
gulong connectClosePage(T)(T callback, Flag!"After" after = No.After) if (isCallable!T && is(ReturnType!T == bool) && (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : adw.tab_page.TabPage))) && (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : adw.tab_view.TabView))) && Parameters!T.length < 3)Connect to `ClosePage` signal.
gulong connectCreateWindow(T)(T callback, Flag!"After" after = No.After) if (isCallable!T && is(ReturnType!T : adw.tab_view.TabView) && (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : adw.tab_view.TabView))) && Parameters!T.length < 2)Connect to `CreateWindow` signal.
gulong connectIndicatorActivated(T)(T callback, Flag!"After" after = No.After) if (isCallable!T && is(ReturnType!T == void) && (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : adw.tab_page.TabPage))) && (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : adw.tab_view.TabView))) && Parameters!T.length < 3)Connect to `IndicatorActivated` signal.
gulong connectPageAttached(T)(T callback, Flag!"After" after = No.After) if (isCallable!T && is(ReturnType!T == void) && (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : adw.tab_page.TabPage))) && (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] == int))) && (Parameters!T.length < 3 || (ParameterStorageClassTuple!T[2] == ParameterStorageClass.none && is(Parameters!T[2] : adw.tab_view.TabView))) && Parameters!T.length < 4)Connect to `PageAttached` signal.
gulong connectPageDetached(T)(T callback, Flag!"After" after = No.After) if (isCallable!T && is(ReturnType!T == void) && (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : adw.tab_page.TabPage))) && (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] == int))) && (Parameters!T.length < 3 || (ParameterStorageClassTuple!T[2] == ParameterStorageClass.none && is(Parameters!T[2] : adw.tab_view.TabView))) && Parameters!T.length < 4)Connect to `PageDetached` signal.
gulong connectPageReordered(T)(T callback, Flag!"After" after = No.After) if (isCallable!T && is(ReturnType!T == void) && (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : adw.tab_page.TabPage))) && (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] == int))) && (Parameters!T.length < 3 || (ParameterStorageClassTuple!T[2] == ParameterStorageClass.none && is(Parameters!T[2] : adw.tab_view.TabView))) && Parameters!T.length < 4)Connect to `PageReordered` signal.
gulong connectSetupMenu(T)(T callback, Flag!"After" after = No.After) if (isCallable!T && is(ReturnType!T == void) && (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : adw.tab_page.TabPage))) && (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : adw.tab_view.TabView))) && Parameters!T.length < 3)Connect to `SetupMenu` signal.
Constructors
this(void * ptr, Flag!"Take" take)
this()Creates a new [adw.tabview.TabView]. Returns: the newly created [adw.tabview.TabView]
Methods
T defaultIcon(gio.icon.Icon propval)Set `defaultIcon` property. Params: propval = Default page icon.
T menuModel(gio.menu_model.MenuModel propval)Set `menuModel` property. Params: propval = Tab context menu model.
T selectedPage(adw.tab_page.TabPage propval)Set `selectedPage` property. Params: propval = The currently selected page. Returns: Builder instance for fluent chaining
T shortcuts(adw.types.TabViewShortcuts propval)Set `shortcuts` property. Params: propval = The enabled shortcuts.

Fluent builder for [adw.tab_view.TabView]

Methods