Package ch.bailu.gtk.adw
Class ViewSwitcherTitle
java.lang.Object
ch.bailu.gtk.type.Type
ch.bailu.gtk.type.Pointer
ch.bailu.gtk.gobject.Object
ch.bailu.gtk.gobject.InitiallyUnowned
ch.bailu.gtk.gtk.Widget
ch.bailu.gtk.adw.ViewSwitcherTitle
- All Implemented Interfaces:
PointerInterface
A view switcher title.
<picture>
<source srcset="view-switcher-title-dark.png" media="(prefers-color-scheme: dark)">
<img src="view-switcher-title.png" alt="view-switcher-title">
</picture>
A widget letting you switch between multiple views contained by a
[class@ViewStack] via an [class@ViewSwitcher].
It is designed to be used as the title widget of a [class@HeaderBar], and
will display the window's title when the window is too narrow to fit the view
switcher e.g. on mobile phones, or if there are less than two views.
In order to center the title in narrow windows, the header bar should have
[property@HeaderBar:centering-policy] set to
`ADW_CENTERING_POLICY_STRICT`.
`AdwViewSwitcherTitle` is intended to be used together with
[class@ViewSwitcherBar].
A common use case is to bind the [property@ViewSwitcherBar:reveal] property
to [property@ViewSwitcherTitle:title-visible] to automatically reveal the
view switcher bar when the title label is displayed in place of the view
switcher, as follows:
```xml
<object class="GtkWindow">
<property name="titlebar">
<object class="AdwHeaderBar">
<property name="centering-policy">strict</property>
<property name="title-widget">
<object class="AdwViewSwitcherTitle" id="title">
<property name="stack">stack</property>
</object>
</property>
</object>
</property>
<property name="child">
<object class="GtkBox">
<property name="orientation">vertical</property>
<child>
<object class="AdwViewStack" id="stack"/>
</child>
<child>
<object class="AdwViewSwitcherBar">
<property name="stack">stack</property>
<binding name="reveal">
<lookup name="title-visible">title</lookup>
</binding>
</object>
</child>
</object>
</property>
</object>
```
## CSS nodes
`AdwViewSwitcherTitle` has a single CSS node with name `viewswitchertitle`.
<picture>
<source srcset="view-switcher-title-dark.png" media="(prefers-color-scheme: dark)">
<img src="view-switcher-title.png" alt="view-switcher-title">
</picture>
A widget letting you switch between multiple views contained by a
[class@ViewStack] via an [class@ViewSwitcher].
It is designed to be used as the title widget of a [class@HeaderBar], and
will display the window's title when the window is too narrow to fit the view
switcher e.g. on mobile phones, or if there are less than two views.
In order to center the title in narrow windows, the header bar should have
[property@HeaderBar:centering-policy] set to
`ADW_CENTERING_POLICY_STRICT`.
`AdwViewSwitcherTitle` is intended to be used together with
[class@ViewSwitcherBar].
A common use case is to bind the [property@ViewSwitcherBar:reveal] property
to [property@ViewSwitcherTitle:title-visible] to automatically reveal the
view switcher bar when the title label is displayed in place of the view
switcher, as follows:
```xml
<object class="GtkWindow">
<property name="titlebar">
<object class="AdwHeaderBar">
<property name="centering-policy">strict</property>
<property name="title-widget">
<object class="AdwViewSwitcherTitle" id="title">
<property name="stack">stack</property>
</object>
</property>
</object>
</property>
<property name="child">
<object class="GtkBox">
<property name="orientation">vertical</property>
<child>
<object class="AdwViewStack" id="stack"/>
</child>
<child>
<object class="AdwViewSwitcherBar">
<property name="stack">stack</property>
<binding name="reveal">
<lookup name="title-visible">title</lookup>
</binding>
</object>
</child>
</object>
</property>
</object>
```
## CSS nodes
`AdwViewSwitcherTitle` has a single CSS node with name `viewswitchertitle`.
https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/class.ViewSwitcherTitle.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
ConstructorDescriptionCreates a new `AdwViewSwitcherTitle`.ViewSwitcherTitle
(PointerContainer pointer) -
Method Summary
Modifier and TypeMethodDescriptionImplements interfaceAccessible
.Implements interfaceBuildable
.Implements interfaceConstraintTarget
.static ClassHandler
static int
static long
static TypeSystem.TypeSize
getStack()
Gets the stack controlled by @self.Gets the subtitle of @self.getTitle()
Gets the title of @self.boolean
Gets whether the title of @self is currently visible.static long
static TypeSystem.TypeSize
boolean
Gets whether @self's view switcher is enabled.void
Sets the stack controlled by @self.void
setSubtitle
(Str subtitle) Sets the subtitle of @self.void
setSubtitle
(String subtitle) Sets the subtitle of @self.void
Sets the title of @self.void
Sets the title of @self.void
setViewSwitcherEnabled
(boolean enabled) Sets whether @self's view switcher is enabled.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
-
Constructor Details
-
ViewSwitcherTitle
-
ViewSwitcherTitle
public ViewSwitcherTitle()Creates a new `AdwViewSwitcherTitle`.
-
-
Method Details
-
getClassHandler
-
getStack
Gets the stack controlled by @self.- Returns:
- the stack
-
getSubtitle
Gets the subtitle of @self.- Returns:
- the subtitle
-
getTitle
Gets the title of @self.- Returns:
- the title
-
getTitleVisible
public boolean getTitleVisible()Gets whether the title of @self is currently visible.
If the title is visible, it means the view switcher is hidden an it may be
wanted to show an alternative switcher, e.g. a [class@ViewSwitcherBar].- Returns:
- whether the title of @self is currently visible
-
getViewSwitcherEnabled
public boolean getViewSwitcherEnabled()Gets whether @self's view switcher is enabled.- Returns:
- whether the view switcher is enabled
-
setStack
Sets the stack controlled by @self.- Parameters:
stack
- a stack
-
setSubtitle
Sets the subtitle of @self.
The subtitle should give the user additional details.- Parameters:
subtitle
- a subtitle
-
setSubtitle
Sets the subtitle of @self.
The subtitle should give the user additional details.- Parameters:
subtitle
- a subtitle
-
setTitle
Sets the title of @self.
The title typically identifies the current view or content item, and
generally does not use the application name.- Parameters:
title
- a title
-
setTitle
Sets the title of @self.
The title typically identifies the current view or content item, and
generally does not use the application name.- Parameters:
title
- a title
-
setViewSwitcherEnabled
public void setViewSwitcherEnabled(boolean enabled) Sets whether @self's view switcher is enabled.
If it is disabled, the title will be displayed instead. This allows to
programmatically hide the view switcher even if it fits in the available
space.
This can be used e.g. to ensure the view switcher is hidden below a certain
window width, or any other constraint you find suitable.- Parameters:
enabled
- whether the view switcher is enabled
-
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()
-