Package ch.bailu.gtk.adw
Klasse MultiLayoutView
- Alle implementierten Schnittstellen:
PointerInterface
A widget for switching between different layouts.
`AdwMultiLayoutView` contains layouts and children. Each child has
an ID, each layout has slots inside it, each slot also has an ID. When
switching layouts, children are inserted into slots with matching IDs. The
[property@Gtk.Widget:visible] property of each slot is updated to match
that of the inserted child.
This can be useful for rearranging children when it's difficult to do so
otherwise, for example to move a child from a sidebar to a bottom bar.
The currently used layout can be switched using the
[property@MultiLayoutView:layout] or [property@MultiLayoutView:layout-name]
properties. For example, it can be done via a [class@Adw.Breakpoint] setter
to change layouts depending on the window size.
## AdwMultiLayoutView as GtkBuildable
The `AdwMultiLayoutView` implementation of the [iface@Gtk.Buildable]
interface supports adding layouts via `<child>` element with the `type`
attribute omitted.
It also supports setting children via `<child type="ID">`.
Example of an `AdwMultiLayoutView` UI definition that can display a secondary
child as either a sidebar or a bottom sheet.
```xml
<object class="AdwMultiLayoutView">
<child>
<object class="AdwLayout">
<property name="name">sidebar</property>
<property name="content">
<object class="AdwOverlaySplitView">
<property name="sidebar">
<object class="AdwLayoutSlot">
<property name="id">secondary</property>
</object>
</property>
<property name="content">
<object class="AdwLayoutSlot">
<property name="id">primary</property>
</object>
</property>
</object>
</property>
</object>
</child>
<child>
<object class="AdwLayout">
<property name="name">bottom-sheet</property>
<property name="content">
<object class="AdwBottomSheet">
<property name="open">True</property>
<property name="content">
<object class="AdwLayoutSlot">
<property name="id">primary</property>
</object>
</property>
<property name="sheet">
<object class="AdwLayoutSlot">
<property name="id">secondary</property>
</object>
</property>
</object>
</property>
</object>
</child>
<child type="primary">
<!-- ... -->
</child>
<child type="secondary">
<!-- ... -->
</child>
</object>
```
## CSS nodes
`AdwMultiLayoutView` has a single CSS node with name `multi-layout-view`.
`AdwMultiLayoutView` contains layouts and children. Each child has
an ID, each layout has slots inside it, each slot also has an ID. When
switching layouts, children are inserted into slots with matching IDs. The
[property@Gtk.Widget:visible] property of each slot is updated to match
that of the inserted child.
This can be useful for rearranging children when it's difficult to do so
otherwise, for example to move a child from a sidebar to a bottom bar.
The currently used layout can be switched using the
[property@MultiLayoutView:layout] or [property@MultiLayoutView:layout-name]
properties. For example, it can be done via a [class@Adw.Breakpoint] setter
to change layouts depending on the window size.
## AdwMultiLayoutView as GtkBuildable
The `AdwMultiLayoutView` implementation of the [iface@Gtk.Buildable]
interface supports adding layouts via `<child>` element with the `type`
attribute omitted.
It also supports setting children via `<child type="ID">`.
Example of an `AdwMultiLayoutView` UI definition that can display a secondary
child as either a sidebar or a bottom sheet.
```xml
<object class="AdwMultiLayoutView">
<child>
<object class="AdwLayout">
<property name="name">sidebar</property>
<property name="content">
<object class="AdwOverlaySplitView">
<property name="sidebar">
<object class="AdwLayoutSlot">
<property name="id">secondary</property>
</object>
</property>
<property name="content">
<object class="AdwLayoutSlot">
<property name="id">primary</property>
</object>
</property>
</object>
</property>
</object>
</child>
<child>
<object class="AdwLayout">
<property name="name">bottom-sheet</property>
<property name="content">
<object class="AdwBottomSheet">
<property name="open">True</property>
<property name="content">
<object class="AdwLayoutSlot">
<property name="id">primary</property>
</object>
</property>
<property name="sheet">
<object class="AdwLayoutSlot">
<property name="id">secondary</property>
</object>
</property>
</object>
</property>
</object>
</child>
<child type="primary">
<!-- ... -->
</child>
<child type="secondary">
<!-- ... -->
</child>
</object>
```
## CSS nodes
`AdwMultiLayoutView` has a single CSS node with name `multi-layout-view`.
https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/class.MultiLayoutView.html
-
Verschachtelte Klassen - Übersicht
Von Klasse geerbte verschachtelte Klassen/Schnittstellen 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
Von Klasse geerbte verschachtelte Klassen/Schnittstellen ch.bailu.gtk.gobject.Object
Object.OnBindingTransformFunc, Object.OnDuplicateFunc, Object.OnNotify, Object.OnToggleNotify, Object.OnWeakNotify
-
Feldübersicht
Von Klasse geerbte Felder 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
Von Klasse geerbte Felder ch.bailu.gtk.gobject.Object
SIGNAL_ON_NOTIFY
-
Konstruktorübersicht
KonstruktorenKonstruktorBeschreibungCreates a new `AdwMultiLayoutView`.MultiLayoutView
(PointerContainer pointer) -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungvoid
Adds @layout to @self.Implements interfaceAccessible
.Implements interfaceBuildable
.Implements interfaceConstraintTarget
.Gets the child for @id to @self.Gets the child for @id to @self.static ClassHandler
static int
Gets the currently used layout of @self.getLayoutByName
(Str name) Gets layout with the name @name from @self, or `NULL` if it doesn't exist.getLayoutByName
(String name) Gets layout with the name @name from @self, or `NULL` if it doesn't exist.Returns the name of the currently used layout of @self.static long
static TypeSystem.TypeSize
static long
static TypeSystem.TypeSize
void
removeLayout
(Layout layout) Removes @layout from @self.void
Sets @child as the child for @id in @self.void
Sets @child as the child for @id in @self.void
Makes @layout the current layout of @self.void
setLayoutName
(Str name) Makes the layout with @name the current layout of @self.void
setLayoutName
(String name) Makes the layout with @name the current layout of @self.Von Klasse geerbte Methoden 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, getBaseline, getCanFocus, getCanTarget, getChildVisible, getClipboard, getColor, getCssClasses, getCssName, getCursor, getDefaultDirection, getDirection, getDisplay, getFirstChild, getFocusable, getFocusChild, getFocusOnClick, getFontMap, getFontOptions, getFrameClock, getHalign, getHasTooltip, getHeight, getHexpand, getHexpandSet, getLastChild, getLayoutManager, getLimitEvents, 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, setLimitEvents, 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
Von Klasse geerbte Methoden ch.bailu.gtk.type.PropertyHolder
getBooleanProperty, getIntProperty, getObjectProperty, getStringProperty, getStrProperty, setBooleanProperty, setIntProperty, setObjectProperty, setStringProperty, setStrProperty
Von Klasse geerbte Methoden 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
Von Klasse geerbte Methoden ch.bailu.gtk.type.Pointer
asCPointer, cast, connectSignal, disconnectSignals, disconnectSignals, equals, hashCode, throwIfNull, throwNullPointerException, toString, unregisterCallbacks, unregisterCallbacks
Von Klasse geerbte Methoden ch.bailu.gtk.type.Type
asCPointer, asCPointer, asCPointerNotNull, asJnaPointer, asJnaPointer, asPointer, asPointer, cast, cast, throwIfNull
Von Klasse geerbte Methoden java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Von Schnittstelle geerbte Methoden ch.bailu.gtk.type.PointerInterface
asCPointerNotNull, asJnaPointer, asPointer, isNotNull, isNull
-
Konstruktordetails
-
MultiLayoutView
-
MultiLayoutView
public MultiLayoutView()Creates a new `AdwMultiLayoutView`.
-
-
Methodendetails
-
getClassHandler
-
addLayout
Adds @layout to @self.- Parameter:
layout
- the layout to add
-
getChild
Gets the child for @id to @self.- Parameter:
id
- the id of the child- Gibt zurück:
- the child for @id
-
getChild
Gets the child for @id to @self.- Parameter:
id
- the id of the child- Gibt zurück:
- the child for @id
-
getLayout
Gets the currently used layout of @self.- Gibt zurück:
- the current layout
-
getLayoutByName
Gets layout with the name @name from @self, or `NULL` if it doesn't exist.
See [property@Layout:name].- Parameter:
name
- the name of the layout- Gibt zurück:
- the layout with @name
-
getLayoutByName
Gets layout with the name @name from @self, or `NULL` if it doesn't exist.
See [property@Layout:name].- Parameter:
name
- the name of the layout- Gibt zurück:
- the layout with @name
-
getLayoutName
Returns the name of the currently used layout of @self.- Gibt zurück:
- the name of the current layout
-
removeLayout
Removes @layout from @self.- Parameter:
layout
- the layout to add
-
setChild
Sets @child as the child for @id in @self.
When changing layouts, it will be inserted into the slot with @id.- Parameter:
id
- the id of the childchild
- the child to set
-
setChild
Sets @child as the child for @id in @self.
When changing layouts, it will be inserted into the slot with @id.- Parameter:
id
- the id of the childchild
- the child to set
-
setLayout
Makes @layout the current layout of @self.- Parameter:
layout
- a layout in @self
-
setLayoutName
Makes the layout with @name the current layout of @self.
See [property@Layout:name].- Parameter:
name
- the name of the layout
-
setLayoutName
Makes the layout with @name the current layout of @self.
See [property@Layout:name].- Parameter:
name
- the name of the layout
-
asAccessible
Implements interfaceAccessible
. Call this to get access to interface functions.- Setzt außer Kraft:
asAccessible
in KlasseWidget
- Gibt zurück:
Accessible
-
asBuildable
Implements interfaceBuildable
. Call this to get access to interface functions.- Setzt außer Kraft:
asBuildable
in KlasseWidget
- Gibt zurück:
Buildable
-
asConstraintTarget
Implements interfaceConstraintTarget
. Call this to get access to interface functions.- Setzt außer Kraft:
asConstraintTarget
in KlasseWidget
- Gibt zurück:
ConstraintTarget
-
getTypeID
public static long getTypeID() -
getParentTypeID
public static long getParentTypeID() -
getTypeSize
-
getParentTypeSize
-
getInstanceSize
public static int getInstanceSize()
-