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 ClassesNested 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.OnUnrealizeNested classes/interfaces inherited from class ch.bailu.gtk.gobject.Object
Object.OnBindingTransformFunc, Object.OnDuplicateFunc, Object.OnNotify, Object.OnToggleNotify, Object.OnWeakNotify -
Field Summary
FieldsFields 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_UNREALIZEFields inherited from class ch.bailu.gtk.gobject.Object
SIGNAL_ON_NOTIFY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionImplements interfaceAccessible.Implements interfaceBuildable.Implements interfaceConstraintTarget.booleanGets whether the tabs automatically hide.static ClassHandlerGets the widget shown after the tabs.booleanGets whether tabs expand to full width.static intbooleanGets whether tabs use inverted layout.booleanGets whether @self is overflowing.static longstatic TypeSystem.TypeSizeGets the widget shown before the tabs.booleanGets whether the tabs are currently revealed.static longstatic TypeSystem.TypeSizegetView()Gets the tab view @self controls.Connect to signal "extra-drag-drop".voidsetAutohide(boolean autohide) Sets whether the tabs automatically hide.voidsetEndActionWidget(Widget widget) Sets the widget to show after the tabs.voidsetExpandTabs(boolean expand_tabs) Sets whether tabs expand to full width.voidsetInverted(boolean inverted) Sets whether tabs tabs use inverted layout.voidsetStartActionWidget(Widget widget) Sets the widget to show before the tabs.voidsetupExtraDropTarget(int actions, Int64 types, long n_types) Sets the supported types for this drop target.voidSets 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, unsetStateFlagsMethods 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, weakUnrefMethods inherited from class ch.bailu.gtk.type.Pointer
asCPointer, cast, connectSignal, disconnectSignals, disconnectSignals, equals, hashCode, throwIfNull, throwNullPointerException, toString, unregisterCallbacks, unregisterCallbacksMethods inherited from class ch.bailu.gtk.type.Type
asCPointer, asCPointer, asCPointerNotNull, asJnaPointer, asJnaPointer, asPointer, asPointer, cast, cast, throwIfNullMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods 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_DROPcontains 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:
asAccessiblein classWidget- Returns:
Accessible
-
asBuildable
Implements interfaceBuildable. Call this to get access to interface functions.- Overrides:
asBuildablein classWidget- Returns:
Buildable
-
asConstraintTarget
Implements interfaceConstraintTarget. Call this to get access to interface functions.- Overrides:
asConstraintTargetin classWidget- Returns:
ConstraintTarget
-
getTypeID
public static long getTypeID() -
getParentTypeID
public static long getParentTypeID() -
getTypeSize
-
getParentTypeSize
-
getInstanceSize
public static int getInstanceSize()
-