MauiKit Controls
ListBrowser.qml
28 * <a href="https://doc.qt.io/qt-6/qml-qtquick-controls-item.html">This controls inherits from QQC2 Item, to checkout its inherited properties refer to the Qt Docs.</a>
30 * This component might seem similar to QQC2 ListView - and it does uses it underneath - but this one includes a few more predefined elements, such as a placeholder element, pinch to zoom gestures, lasso selection support, and some predefined behaviour.
33 * The browser has a dedicated placeholder element handled by MauiKit Holder, where a message can be set when the view is on a determined state the user should be warned about, such as if the view is empty, or not search results were found.
36 * The lasso selection feature works with a mouse or a track-pad, and allows to select multiple items in the browser-view that are under the lasso rectangle area. A signal is emitted when the selection has been triggered - this is when the lasso rectangle is released - sending as an argument an array of numbers representing the indexes of the selected items.
41 * To position the delegates you can use the ListView attached properties, such as `ListView.view.width` to set the width of the delegate correctly.
65 * <a href="https://invent.kde.org/maui/mauikit/-/blob/qt6-2/examples/ListBrowser.qml">You can find a more complete example at this link.</a>
74 implicitWidth: contentWidth + leftPadding + rightPadding
80 property alias model : _listView.model
84 * @note Consider using the MauiKit delegate controls, such as ListBrowserDelegate, ListDelegate or LabelDelegate.
153 property alias spacing: _listView.spacing
165 readonly property alias scrollView : _scrollView
184 readonly property alias atYEnd : _listView.atYEnd
212 property alias rightPadding: _scrollView.rightPadding
231 * The default value of this is picked based on the Style property `Style.scrollBarPolicy`, unless the orientation of the view is set to horizontal, in which case this is set to 'ScrollBar.AlwaysOff`.
329 * @param indexes A array of index numbers is sent as the argument, representing the index value of the items under the lasso rectangle area.
448 selectLayer.width = (mouseX + 10) < (control.x + control.width) ? (mouseX - selectLayer.x) : selectLayer.width;
455 selectLayer.height = (mouseY + 10) < (control.y + control.height) ? (mouseY - selectLayer.y) : selectLayer.height;
471 if (mouse.source === Qt.MouseEventNotSynthesized && control.enableLassoSelection && mouse.button === Qt.LeftButton && control.count > 0)
485 if ( mouse.source !== Qt.MouseEventNotSynthesized && control.enableLassoSelection && !selectLayer.visible && !Maui.Handy.hasTransientTouchInput && !Maui.Handy.isAndroid)
542 color: Qt.rgba(control.Maui.Theme.highlightColor.r,control.Maui.Theme.highlightColor.g, control.Maui.Theme.highlightColor.b, 0.2)
void itemsSelected(var indexes)
Emitted when the lasso selection has been released.
void areaClicked(var mouse)
Emitted when an empty space of the background area has been clicked.
bool enableLassoSelection
Whether to enable the lasso selection, to select multiple items.
Definition ListBrowser.qml:236
void keyPress(var event)
Emitted when a physical key from the device has been pressed.
alias contentHeight
The total height of all the elements listed in the view.
Definition ListBrowser.qml:153
void areaRightClicked()
Emitted when an empty space of the area area background has been right clicked.
alias snapMode
How to snap the elements of the list view while scrolling.
Definition ListBrowser.qml:130
int horizontalScrollBarPolicy
The policy of the horizontal scroll bar from the scroll view.
Definition ListBrowser.qml:222
This file is part of the KDE documentation.
Documentation copyright © 1996-2025 The KDE developers.
Generated on Fri May 2 2025 11:57:11 by doxygen 1.13.2 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2025 The KDE developers.
Generated on Fri May 2 2025 11:57:11 by doxygen 1.13.2 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.