MauiKit Controls
Page.qml
34 * <a href="https://doc.qt.io/qt-6/qml-qtquick-controls-pane.html">This control inherits from QQC2 Pane, to checkout its inherited properties refer to the Qt Docs.</a>
41 * Any other item can be placed as the header or footer. And the default toolbars can be populated easily via the aliases:
59 * @image html Page/page_structure.png "A Page with a header and footer - and then the header moved to the bottom under the footer"
63 * Among other features, the page can have a reference to a flickable element to allow to have pull-back
68 * Pull-back bars allow to expand the contents areas by pulling away the header or footer when content is being flicked/scrolled - which is useful on phone screens. To enable this behaviour you need to reference the Flickable element via the flickable property.
71 * And set the header/footer positioning properties to ListView.PullBackHeader. By default this is set to the header if a flickable element has been assigned, so you can disable it by setting the property to ListView.InlineHeader.
77 * As mentioned before, the Page has a header and footer area- the header can be moved to the bottom via the alternate header property. But you can also stack multiple bars vertically. So you can have two or more header/footer bars.
107 * The header/footer layout is handled by a Column control, which can be accessed via the aliases to tweak the spacing for example.
111 * @image html Page/headerColumn.png "A Page with a default header bar and two rectangles stacked as part of the header column"
115 * The header and/or footer bars can be set to a floating position - which means they will flow over the page contents at the bottom and top. When this is enable a translucency effect will be applied to hint about the content being covered underneath.
119 * The bars can also be set to auto-hide, when the cursor moves out or shown again when the cursor enters the bar area.
127 * And to finetune the target area which reacts to enter and exit events, use the margins property:
131 * @image html Page/floating_header.png "A Page with a floating header - and a translucent effect"
134 * This component is an alternative to the QQC2 Page control, where the header and footer can not be moved easily - and it adds a few more functionality.
136 * The padding properties will affect the header and footer, so if instead you meant to add internal padding to the page contents, you can use the margins properties.
138 * When used in a StackView or SwipeView, this Page emits two signals for the go forward/back actions, which can be consumed to pop or push pages.
155 * @image html Page/alt_header_dark.png "An ApplicationWindow filled with a Page and with the CSD controls enabled"
157 * <a href="https://invent.kde.org/maui/mauikit/-/blob/qt6-2/examples/Page.qml">You can find a more complete example at this link.</a>
159 * @note This control supports the attached Controls.showCSD property to display the window control buttons when using CSD. This is only supported if used with the MauiKit ToolBar as the header bar - which is the default. If use with another header element, the window control buttons need to be added manually.
198 * @brief A flickable element can be referenced in order to support the header and footer positioning options such as Inline, Pullback or floating.
200 * And watch for changes in the Flickable properties, such as contentX and contentY in order to support the formerly mentioned features.
205 * @brief The footer bar can be place static and always visible with the InlineFooter value, or moved along with the flickable contents when using the PullBackFooter value.
217 * @brief The header bar can be place static and always visible with the InlineHeader value, or moved along with the flickable contents when using the PullBackHeader value.
221 * By default this is set to `InlineHeader` unless a Flickable has been attached, in which case it is set to `PullBackHeader`.
243 * This title is shown in the middle of the default header bar if the show title property is set to true.
247 property string title
250 * @brief If a title is set and this is set to true, such title will be displayed in the default header bar in the middle.
293 property alias headerContainer : _headerContent
332 property bool autoHideHeader : false
341 * @brief Size in pixels for the cursor enter/exit threshold for when the header should autohide.
347 * @brief Size in pixels for the cursor enter/exit threshold for when the footer should autohide.
366 * @brief If the header bar should float over the page contents, if set- then the default footer bar will have a translucent `ShaderEffect` to hint about the content under it.
389 property int topMargin : (!control.altHeader ? (control.floatingHeader ? 0 : _headerContent.implicitHeight) : 0) + control.topMargin
390 property int bottomMargin: ((control.floatingFooter && control.footerPositioning === ListView.InlineFooter ? 0 : _footerContent.implicitHeight) + (control.altHeader ? _headerContent.implicitHeight : 0))
409 when: control.floatingFooter && control.footerPositioning === ListView.InlineFooter && _footerContent.implicitHeight > 0
420 enabled: control.flickable && ((control.header && control.headerPositioning === ListView.PullBackHeader) || (control.footer && control.footerPositioning === ListView.PullBackFooter))
450 if (control.footer && control.footerPositioning === ListView.PullBackFooter && control.footer.visible)
458 if (control.header && control.headerPositioning === ListView.PullBackHeader && control.header.visible && !control.altHeader)
467 if (control.header && oldHHeight !== control.header.height && control.header.visible && !control.altHeader)
480 if (control.header && control.header.visible && control.headerPositioning === ListView.PullBackHeader && !control.altHeader)
484 if (control.header.height >= (control.header.implicitHeight/2) || control.flickable.atYBeginning )
494 if (control.footer && control.footer.visible && control.footerPositioning === ListView.PullBackFooter)
531 Maui.Controls.showCSD: control.Maui.Controls.showCSD && control.Maui.Controls.showCSD === true && !control.altHeader
535 sourceRect: _headBar.background ? (control.floatingHeader ? Qt.rect(0, (_headBar.position === ToolBar.Header ? 0 : _content.height - _headBar.background.height), _headBar.background.width, _headBar.background.height) : Qt.rect(0, (_headBar.position === ToolBar.Header ? 0 - (_headBar.background.height) : _content.height), _headBar.background.width, _headBar.background.height)) : null
593 //text: _footBar.visibleCount + " / " + _footBar.count + " - " + _footBar.height + " / " + footer.height + " - " + _footBar.visible + " / " + footer.visible + " / " + footer.height + " / " + _footerContent.implicitHeight + " / " + _footerContent.implicitHeight
614 sourceRect: _footBar.background ? (control.floatingFooter ? Qt.rect(0, _content.height - _footBar.background.height, _footBar.background.width, _footBar.background.height) : Qt.rect(0, _content.height, _footBar.background.width, _footBar.background.height)) : Qt.rect()
An alternative to QQC2 ToolBar, with a custom horizontal layout - divided into three main sections - ...
Definition ToolBar.qml:115
void stop(Ekos::AlignState mode)
AKONADI_MIME_EXPORT const char Header[]
enabled
implicitHeight
width
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri May 3 2024 11:47:05 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri May 3 2024 11:47:05 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.