Class ViewSwitcherBar

All Implemented Interfaces:
PointerInterface

public class ViewSwitcherBar extends Widget
A view switcher action bar.

<picture>
<source srcset="view-switcher-bar-dark.png" media="(prefers-color-scheme: dark)">
<img src="view-switcher-bar.png" alt="view-switcher-bar">
</picture>

An action bar letting you switch between multiple views contained in a
[class@ViewStack], via an [class@ViewSwitcher]. It is designed to be put at
the bottom of a window and to be revealed only on really narrow windows, e.g.
on mobile phones. It can't be revealed if there are less than two pages.

`AdwViewSwitcherBar` is intended to be used together with
[class@ViewSwitcherTitle].

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

`AdwViewSwitcherBar` has a single CSS node with name` viewswitcherbar`.

https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/class.ViewSwitcherBar.html

  • Constructor Details

    • ViewSwitcherBar

      public ViewSwitcherBar(PointerContainer pointer)
    • ViewSwitcherBar

      public ViewSwitcherBar()
      Creates a new `AdwViewSwitcherBar`.
  • Method Details

    • getClassHandler

      public static ClassHandler getClassHandler()
    • getReveal

      public boolean getReveal()
      Gets whether @self should be revealed or hidden.
      Returns:
      whether @self is revealed
    • getStack

      public ViewStack getStack()
      Gets the stack controlled by @self.
      Returns:
      the stack
    • setReveal

      public void setReveal(boolean reveal)
      Sets whether @self should be revealed or hidden.
      Parameters:
      reveal - whether to reveal @self
    • setStack

      public void setStack(@Nullable ViewStack stack)
      Sets the stack controlled by @self.
      Parameters:
      stack - a stack
    • asAccessible

      public Accessible asAccessible()
      Implements interface Accessible. Call this to get access to interface functions.
      Overrides:
      asAccessible in class Widget
      Returns:
      Accessible
    • asBuildable

      public Buildable asBuildable()
      Implements interface Buildable. Call this to get access to interface functions.
      Overrides:
      asBuildable in class Widget
      Returns:
      Buildable
    • asConstraintTarget

      public ConstraintTarget asConstraintTarget()
      Implements interface ConstraintTarget. Call this to get access to interface functions.
      Overrides:
      asConstraintTarget in class Widget
      Returns:
      ConstraintTarget
    • getTypeID

      public static long getTypeID()
    • getParentTypeID

      public static long getParentTypeID()
    • getTypeSize

      public static TypeSystem.TypeSize getTypeSize()
    • getParentTypeSize

      public static TypeSystem.TypeSize getParentTypeSize()
    • getInstanceSize

      public static int getInstanceSize()