Package ch.bailu.gtk.adw
Class TabBar
- All Implemented Interfaces:
PointerInterface
A tab bar for [class@TabView].
<picture>
<source srcset="tab-bar-dark.png" media="(prefers-color-scheme: dark)">
<img src="tab-bar.png" alt="tab-bar">
</picture>
The `AdwTabBar` widget is a tab bar that can be used with conjunction with
`AdwTabView`.
`AdwTabBar` can autohide and can optionally contain action widgets on both
sides of the tabs.
When there's not enough space to show all the tabs, `AdwTabBar` will scroll
them. Pinned tabs always stay visible and aren't a part of the scrollable
area.
## CSS nodes
`AdwTabBar` has a single CSS node with name `tabbar`.
<picture>
<source srcset="tab-bar-dark.png" media="(prefers-color-scheme: dark)">
<img src="tab-bar.png" alt="tab-bar">
</picture>
The `AdwTabBar` widget is a tab bar that can be used with conjunction with
`AdwTabView`.
`AdwTabBar` can autohide and can optionally contain action widgets on both
sides of the tabs.
When there's not enough space to show all the tabs, `AdwTabBar` will scroll
them. Pinned tabs always stay visible and aren't a part of the scrollable
area.
## CSS nodes
`AdwTabBar` has a single CSS node with name `tabbar`.
https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/class.TabBar.html
-
Nested Class Summary
Nested classes/interfaces inherited from class ch.bailu.gtk.gtk.Widget
Widget.OnDestroy, Widget.OnDestroyNotify, Widget.OnDirectionChanged, Widget.OnHide, Widget.OnKeynavFailed, Widget.OnMap, Widget.OnMnemonicActivate, Widget.OnMoveFocus, Widget.OnQueryTooltip, Widget.OnRealize, Widget.OnShow, Widget.OnStateFlagsChanged, Widget.OnTickCallback, Widget.OnUnmap, Widget.OnUnrealize
Nested classes/interfaces inherited from class ch.bailu.gtk.gobject.Object
Object.OnBindingTransformFunc, Object.OnDuplicateFunc, Object.OnNotify, Object.OnToggleNotify, Object.OnWeakNotify
-
Field Summary
Fields inherited from class ch.bailu.gtk.gtk.Widget
SIGNAL_ON_DESTROY, SIGNAL_ON_DIRECTION_CHANGED, SIGNAL_ON_HIDE, SIGNAL_ON_KEYNAV_FAILED, SIGNAL_ON_MAP, SIGNAL_ON_MNEMONIC_ACTIVATE, SIGNAL_ON_MOVE_FOCUS, SIGNAL_ON_QUERY_TOOLTIP, SIGNAL_ON_REALIZE, SIGNAL_ON_SHOW, SIGNAL_ON_STATE_FLAGS_CHANGED, SIGNAL_ON_UNMAP, SIGNAL_ON_UNREALIZE
Fields inherited from class ch.bailu.gtk.gobject.Object
SIGNAL_ON_NOTIFY
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionImplements interfaceAccessible
.Implements interfaceBuildable
.Implements interfaceConstraintTarget
.boolean
Gets whether the tabs automatically hide.static ClassHandler
Gets the widget shown after the tabs.boolean
Gets whether tabs expand to full width.static int
boolean
Gets whether tabs use inverted layout.boolean
Gets whether @self is overflowing.static long
static TypeSystem.TypeSize
Gets the widget shown before the tabs.boolean
Gets whether the tabs are currently revealed.static long
static TypeSystem.TypeSize
getView()
Gets the tab view @self controls.Connect to signal "extra-drag-drop".void
setAutohide
(boolean autohide) Sets whether the tabs automatically hide.void
setEndActionWidget
(Widget widget) Sets the widget to show after the tabs.void
setExpandTabs
(boolean expand_tabs) Sets whether tabs expand to full width.void
setInverted
(boolean inverted) Sets whether tabs tabs use inverted layout.void
setStartActionWidget
(Widget widget) Sets the widget to show before the tabs.void
setupExtraDropTarget
(int actions, Int64 types, long n_types) Sets the supported types for this drop target.void
Sets the tab view @self controls.Methods inherited from class ch.bailu.gtk.gtk.Widget
actionSetEnabled, actionSetEnabled, activate, activateAction, activateAction, activateActionVariant, activateActionVariant, activateDefault, addController, addCssClass, addCssClass, addMnemonicLabel, addTickCallback, allocate, childFocus, computeBounds, computeExpand, computePoint, computeTransform, contains, createPangoContext, createPangoLayout, createPangoLayout, disposeTemplate, dragCheckThreshold, errorBell, getAllocatedBaseline, getAllocatedHeight, getAllocatedWidth, getAllocation, getAncestor, getCanFocus, getCanTarget, getChildVisible, getClipboard, getCssClasses, getCssName, getCursor, getDefaultDirection, getDirection, getDisplay, getFirstChild, getFocusable, getFocusChild, getFocusOnClick, getFontMap, getFontOptions, getFrameClock, getHalign, getHasTooltip, getHeight, getHexpand, getHexpandSet, getLastChild, getLayoutManager, getMapped, getMarginBottom, getMarginEnd, getMarginStart, getMarginTop, getName, getNative, getNextSibling, getOpacity, getOverflow, getPangoContext, getParent, getPreferredSize, getPrevSibling, getPrimaryClipboard, getRealized, getReceivesDefault, getRequestMode, getRoot, getScaleFactor, getSensitive, getSettings, getSize, getSizeRequest, getStateFlags, getStyleContext, getTemplateChild, getTemplateChild, getTooltipMarkup, getTooltipText, getValign, getVexpand, getVexpandSet, getVisible, getWidth, grabFocus, hasCssClass, hasCssClass, hasDefault, hasFocus, hasVisibleFocus, hide, inDestruction, initTemplate, insertActionGroup, insertActionGroup, insertAfter, insertBefore, isAncestor, isDrawable, isFocus, isSensitive, isVisible, keynavFailed, listMnemonicLabels, map, measure, mnemonicActivate, observeChildren, observeControllers, onDestroy, onDirectionChanged, onHide, onKeynavFailed, onMap, onMnemonicActivate, onMoveFocus, onQueryTooltip, onRealize, onShow, onStateFlagsChanged, onUnmap, onUnrealize, pick, queueAllocate, queueDraw, queueResize, realize, removeController, removeCssClass, removeCssClass, removeMnemonicLabel, removeTickCallback, setCanFocus, setCanTarget, setChildVisible, setCssClasses, setCursor, setCursorFromName, setCursorFromName, setDefaultDirection, setDirection, setFocusable, setFocusChild, setFocusOnClick, setFontMap, setFontOptions, setHalign, setHasTooltip, setHexpand, setHexpandSet, setLayoutManager, setMarginBottom, setMarginEnd, setMarginStart, setMarginTop, setName, setName, setOpacity, setOverflow, setParent, setReceivesDefault, setSensitive, setSizeRequest, setStateFlags, setTooltipMarkup, setTooltipMarkup, setTooltipText, setTooltipText, setValign, setVexpand, setVexpandSet, setVisible, shouldLayout, show, sizeAllocate, snapshotChild, triggerTooltipQuery, unmap, unparent, unrealize, unsetStateFlags
Methods inherited from class ch.bailu.gtk.gobject.Object
addToggleRef, bindProperty, bindProperty, bindPropertyFull, bindPropertyFull, bindPropertyWithClosures, bindPropertyWithClosures, compatControl, connect, connect, disconnect, disconnect, dupData, dupData, dupQdata, forceFloating, freezeNotify, get, get, getData, getData, getProperty, getProperty, getQdata, interfaceFindProperty, interfaceInstallProperty, isFloating, notify, notify, notifyByPspec, onNotify, ref, refSink, removeToggleRef, replaceData, replaceData, replaceQdata, runDispose, set, set, setData, setData, setDataFull, setDataFull, setProperty, setProperty, setQdata, setQdataFull, stealData, stealData, stealQdata, takeRef, thawNotify, unref, watchClosure, weakRef, weakUnref
Methods inherited from class ch.bailu.gtk.type.Pointer
asCPointer, cast, connectSignal, disconnectSignals, disconnectSignals, equals, hashCode, throwIfNull, throwNullPointerException, toString, unregisterCallbacks, unregisterCallbacks
Methods inherited from class ch.bailu.gtk.type.Type
asCPointer, asCPointer, asCPointerNotNull, asJnaPointer, asJnaPointer, asPointer, asPointer, cast, cast, throwIfNull
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface ch.bailu.gtk.type.PointerInterface
asCPointerNotNull, asJnaPointer, asPointer, isNotNull, isNull
-
Field Details
-
SIGNAL_ON_EXTRA_DRAG_DROP
- See Also:
-
-
Constructor Details
-
TabBar
-
TabBar
public TabBar()Creates a new `AdwTabBar`.
-
-
Method Details
-
getClassHandler
-
getAutohide
public boolean getAutohide()Gets whether the tabs automatically hide.- Returns:
- whether the tabs automatically hide
-
getEndActionWidget
Gets the widget shown after the tabs.- Returns:
- the widget shown after the tabs
-
getExpandTabs
public boolean getExpandTabs()Gets whether tabs expand to full width.- Returns:
- whether tabs expand to full width.
-
getInverted
public boolean getInverted()Gets whether tabs use inverted layout.- Returns:
- whether tabs use inverted layout
-
getIsOverflowing
public boolean getIsOverflowing()Gets whether @self is overflowing.
If `TRUE`, all tabs cannot be displayed at once and require scrolling.- Returns:
- whether @self is overflowing
-
getStartActionWidget
Gets the widget shown before the tabs.- Returns:
- the widget shown before the tabs
-
getTabsRevealed
public boolean getTabsRevealed()Gets whether the tabs are currently revealed.
See [property@TabBar:autohide].- Returns:
- whether the tabs are currently revealed
-
getView
Gets the tab view @self controls.- Returns:
- the view @self controls
-
setAutohide
public void setAutohide(boolean autohide) Sets whether the tabs automatically hide.
If set to `TRUE`, the tab bar disappears when [property@TabBar:view] has 0
or 1 tab, no pinned tabs, and no tab is being transferred.
See [property@TabBar:tabs-revealed].- Parameters:
autohide
- whether the tabs automatically hide
-
setEndActionWidget
Sets the widget to show after the tabs.- Parameters:
widget
- the widget to show after the tabs
-
setExpandTabs
public void setExpandTabs(boolean expand_tabs) Sets whether tabs expand to full width.
If set to `TRUE`, the tabs will always vary width filling the whole width
when possible, otherwise tabs will always have the minimum possible size.- Parameters:
expand_tabs
- whether to expand tabs
-
setInverted
public void setInverted(boolean inverted) Sets whether tabs tabs use inverted layout.
If set to `TRUE`, non-pinned tabs will have the close button at the beginning
and the indicator at the end rather than the opposite.- Parameters:
inverted
- whether tabs use inverted layout
-
setStartActionWidget
Sets the widget to show before the tabs.- Parameters:
widget
- the widget to show before the tabs
-
setView
Sets the tab view @self controls.- Parameters:
view
- a tab view
-
setupExtraDropTarget
Sets the supported types for this drop target.
Sets up an extra drop target on tabs.
This allows to drag arbitrary content onto tabs, for example URLs in a web
browser.
If a tab is hovered for a certain period of time while dragging the content,
it will be automatically selected.
The [signal@TabBar::extra-drag-drop] signal can be used to handle the drop.- Parameters:
actions
- the supported actionstypes
- all supported `GType`s that can be droppedn_types
- number of @types
-
onExtraDragDrop
Connect to signal "extra-drag-drop".
SeeTabBar.OnExtraDragDrop.onExtraDragDrop(ch.bailu.gtk.adw.TabPage, ch.bailu.gtk.gobject.Value)
for signal description.
FieldSIGNAL_ON_EXTRA_DRAG_DROP
contains original signal name and can be used as resource reference.- Parameters:
signal
- callback function (lambda).- Returns:
SignalHandler
. Can be used to disconnect signal and to release callback function.
-
asAccessible
Implements interfaceAccessible
. Call this to get access to interface functions.- Overrides:
asAccessible
in classWidget
- Returns:
Accessible
-
asBuildable
Implements interfaceBuildable
. Call this to get access to interface functions.- Overrides:
asBuildable
in classWidget
- Returns:
Buildable
-
asConstraintTarget
Implements interfaceConstraintTarget
. Call this to get access to interface functions.- Overrides:
asConstraintTarget
in classWidget
- Returns:
ConstraintTarget
-
getTypeID
public static long getTypeID() -
getParentTypeID
public static long getParentTypeID() -
getTypeSize
-
getParentTypeSize
-
getInstanceSize
public static int getInstanceSize()
-