diff --git a/Mainpage.dox b/Mainpage.dox index a6d1f1fe..e11c9e9b 100644 --- a/Mainpage.dox +++ b/Mainpage.dox @@ -1,211 +1,212 @@ /* This file is part of Kirigami Copyright (C) 2016 Marco Martin This program is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details You should have received a copy of the GNU Library General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ /** \mainpage kirigami \section overview Introduction Kirigami is a set of QtQuick components at the moment targeted for mobile use (in the future desktop as well) targeting both Plasma Mobile and Android. It’s not a whole set of components (all the “Primitive” ones like buttons and textboxes are a job for QtQuickControls2), but it’s a set of high-level components to make the creation of applications that look and feel great on mobile as well as desktop devices and follow the KDE Human Interface Guidelines. The target of those components is anybody that wants to do an application using QtQuick as its main UI, especially if targeting a mobile platform, without adding many dependencies. They work on a variety of platforms, such as Plasma Mobile, Desktop Linux, Android, iOS and Windows. It is a Tier-1 KDE Framework starting with KDE Frameworks 5.37. \section components Main Components - \link org::kde::kirigami::ApplicationWindow ApplicationWindow \endlink - \link org::kde::kirigami::Action Action \endlink - \link org::kde::kirigami::GlobalDrawer GlobalDrawer \endlink - \link org::kde::kirigami::ContextDrawer ContextDrawer \endlink - \link org::kde::kirigami::OverlayDrawer OverlayDrawer \endlink - \link org::kde::kirigami::Page Page \endlink - \link org::kde::kirigami::ScrollablePage ScrollablePage \endlink - \link org::kde::kirigami::OverlaySheet OverlaySheet \endlink - \link org::kde::kirigami::Theme Theme \endlink - \link org::kde::kirigami::Units Units \endlink - \link org::kde::kirigami::Icon Icon \endlink - \link org::kde::kirigami::AbstractApplicationHeader AbstractApplicationHeader \endlink - \link org::kde::kirigami::AbstractApplicationWindow AbstractApplicationWindow \endlink - \link org::kde::kirigami::AbstractListItem AbstractListItem \endlink - \link org::kde::kirigami::ApplicationHeader ApplicationHeader \endlink - \link org::kde::kirigami::BasicListItem BasicListItem \endlink +- \link org::kde::kirigami::ListSectionHeader ListSectionHeader \endlink - \link org::kde::kirigami::SwipeListItem SwipeListItem \endlink - \link org::kde::kirigami::Heading Heading \endlink - \link org::kde::kirigami::Label Label \endlink \section example Minimal Example @code import QtQuick 2.1 import QtQuick.Controls 2.0 as QQC2 import org.kde.kirigami 2.4 as Kirigami Kirigami.ApplicationWindow { id: root header: Kirigami.ApplicationHeader {} globalDrawer: Kirigami.GlobalDrawer { title: "Hello App" titleIcon: "applications-graphics" actions: [ Kirigami.Action { text: "View" iconName: "view-list-icons" Kirigami.Action { text: "action 1" } Kirigami.Action { text: "action 2" } Kirigami.Action { text: "action 3" } }, Kirigami.Action { text: "action 3" }, Kirigami.Action { text: "action 4" } ] } contextDrawer: Kirigami.ContextDrawer { id: contextDrawer } pageStack.initialPage: mainPageComponent Component { id: mainPageComponent Kirigami.ScrollablePage { title: "Hello" actions { main: Kirigami.Action { iconName: sheet.sheetOpen ? "dialog-cancel" : "document-edit" onTriggered: { print("Action button in buttons page clicked"); sheet.sheetOpen = !sheet.sheetOpen } } left: Kirigami.Action { iconName: "go-previous" onTriggered: { print("Left action triggered") } } right: Kirigami.Action { iconName: "go-next" onTriggered: { print("Right action triggered") } } contextualActions: [ Kirigami.Action { text:"Action for buttons" iconName: "bookmarks" onTriggered: print("Action 1 clicked") }, Kirigami.Action { text:"Action 2" iconName: "folder" enabled: false }, Kirigami.Action { text: "Action for Sheet" visible: sheet.sheetOpen } ] } Kirigami.OverlaySheet { id: sheet onSheetOpenChanged: page.actions.main.checked = sheetOpen QQC2.Label { wrapMode: Text.WordWrap text: "Lorem ipsum dolor sit amet" } } //Page contents... } } } @endcode \section deployment Deployment CMake is recomended for both building Kirigami and the project using it, QMake is supported as well, so we can have several configurations, depending what is the host build system and how the deployment needs to be done. Kirigami can be built in two ways: both as a module or statically linked in the application, leading to four combinations: * Kirigami built as a module with CMake * Kirigami statically built with CMake (needed to link statically from applications built with CMake) * Kirigami built as a module with QMake * Kirigami statically built with QMake (needed to link statically from applications built with QMake) The simplest and recomended way to use Kirigami is to just use the module provided by the Linux distribution, or build it as a module and deploy it together the main application. For example when building an application on Android with CMake, if Kirigami for Android is built and installed in the same temporary directory before the application, the create-apk- step of the application will include the Kirigami files as well in the APK. If QMake needs to be used, it's recomended to follow the schema of the example app present in the folder examples/minimalqmake of the Kirigami source code. It will use Kirigami statically linked only on Android, while on desktop systems it will use the version provided by the distribution. What platforms use the static version and what the dynamic one can be freely adjusted. The application needs to have a folder called "3rdparty" containing clones of two KDE repositories: kirigami and breeze-icons (available at git://anongit.kde.org/kirigami.git and git://anongit.kde.org/breeze-icons.git). The relevant part in the .pro file is: @code android: { include(3rdparty/kirigami/kirigami.pri) } @endcode While the main.cpp file will have something like: @code #include #include #ifdef Q_OS_ANDROID #include "./3rdparty/kirigami/src/kirigamiplugin.h" #endif int main(int argc, char *argv[]) { QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); QGuiApplication app(argc, argv); QQmlApplicationEngine engine; #ifdef Q_OS_ANDROID KirigamiPlugin::getInstance().registerTypes(); #endif .... } @endcode @authors Marco Martin \
Sebastian Kuegler \
Aleix Pol Gonzalez \
Dirk Hohndel \
@maintainers Marco Martin \ @licenses @lgpl */ // DOXYGEN_SET_RECURSIVE = YES // DOXYGEN_SET_EXCLUDE_PATTERNS += *_p.h */private/* */examples/* // DOXYGEN_SET_PROJECT_NAME = Kirigami // vim:ts=4:sw=4:expandtab:filetype=doxygen diff --git a/kirigami.qrc.in b/kirigami.qrc.in index 47e194ac..3c123af3 100644 --- a/kirigami.qrc.in +++ b/kirigami.qrc.in @@ -1,90 +1,91 @@ @kirigami_QML_DIR@/src/controls/AbstractApplicationWindow.qml @kirigami_QML_DIR@/src/controls/ContextDrawer.qml @kirigami_QML_DIR@/src/controls/Action.qml @kirigami_QML_DIR@/src/controls/Page.qml @kirigami_QML_DIR@/src/controls/PageRow.qml @kirigami_QML_DIR@/src/controls/AbstractListItem.qml @kirigami_QML_DIR@/src/controls/Theme.qml @kirigami_QML_DIR@/src/controls/AbstractCard.qml @kirigami_QML_DIR@/src/controls/templates/AbstractCard.qml @kirigami_QML_DIR@/src/controls/Card.qml @kirigami_QML_DIR@/src/controls/CardsLayout.qml @kirigami_QML_DIR@/src/controls/CardsListView.qml @kirigami_QML_DIR@/src/controls/CardsGridView.qml @kirigami_QML_DIR@/src/controls/ActionToolBar.qml @kirigami_QML_DIR@/src/controls/templates/InlineMessage.qml @kirigami_QML_DIR@/src/controls/InlineMessage.qml @kirigami_QML_DIR@/src/controls/ToolBarApplicationHeader.qml @kirigami_QML_DIR@/src/controls/ActionTextField.qml @kirigami_QML_DIR@/src/controls/SearchField.qml @kirigami_QML_DIR@/src/controls/PasswordField.qml @kirigami_QML_DIR@/src/controls/private/PrivateActionToolButton.qml @kirigami_QML_DIR@/src/controls/private/GlobalDrawerActionItem.qml @kirigami_QML_DIR@/src/controls/private/ContextDrawerActionItem.qml @kirigami_QML_DIR@/src/controls/private/RefreshableScrollView.qml @kirigami_QML_DIR@/src/controls/private/SwipeItemEventFilter.qml @kirigami_QML_DIR@/src/controls/private/PageActionPropertyGroup.qml @kirigami_QML_DIR@/src/controls/private/ActionIconGroup.qml @kirigami_QML_DIR@/src/controls/private/CornerShadow.qml @kirigami_QML_DIR@/src/controls/private/ActionButton.qml @kirigami_QML_DIR@/src/controls/private/DefaultListItemBackground.qml @kirigami_QML_DIR@/src/controls/private/BannerImage.qml @kirigami_QML_DIR@/src/controls/private/EdgeShadow.qml @kirigami_QML_DIR@/src/controls/private/globaltoolbar/AbstractPageHeader.qml @kirigami_QML_DIR@/src/controls/private/globaltoolbar/BreadcrumbControl.qml @kirigami_QML_DIR@/src/controls/private/globaltoolbar/PageRowGlobalToolBarStyleGroup.qml @kirigami_QML_DIR@/src/controls/private/globaltoolbar/PageRowGlobalToolBarUI.qml @kirigami_QML_DIR@/src/controls/private/PrivateActionToolButton.qml @kirigami_QML_DIR@/src/controls/private/globaltoolbar/TabBarControl.qml @kirigami_QML_DIR@/src/controls/private/globaltoolbar/TitlesPageHeader.qml @kirigami_QML_DIR@/src/controls/private/globaltoolbar/ToolBarPageHeader.qml @kirigami_QML_DIR@/src/controls/private/ActionsMenu.qml @kirigami_QML_DIR@/src/controls/private/ActionMenuItem.qml @kirigami_QML_DIR@/src/controls/Separator.qml @kirigami_QML_DIR@/src/controls/OverlayDrawer.qml @kirigami_QML_DIR@/src/controls/OverlaySheet.qml @kirigami_QML_DIR@/src/controls/GlobalDrawer.qml @kirigami_QML_DIR@/src/controls/templates/AbstractListItem.qml @kirigami_QML_DIR@/src/controls/templates/private/MenuIcon.qml @kirigami_QML_DIR@/src/controls/templates/private/GenericDrawerIcon.qml @kirigami_QML_DIR@/src/controls/templates/private/PassiveNotification.qml @kirigami_QML_DIR@/src/controls/templates/private/ContextIcon.qml @kirigami_QML_DIR@/src/controls/templates/private/ScrollView.qml @kirigami_QML_DIR@/src/controls/templates/private/BackButton.qml @kirigami_QML_DIR@/src/controls/templates/private/IconPropertiesGroup.qml @kirigami_QML_DIR@/src/controls/templates/private/ForwardButton.qml @kirigami_QML_DIR@/src/controls/templates/OverlayDrawer.qml @kirigami_QML_DIR@/src/controls/templates/OverlaySheet.qml @kirigami_QML_DIR@/src/controls/templates/SwipeListItem.qml @kirigami_QML_DIR@/src/controls/templates/ApplicationHeader.qml @kirigami_QML_DIR@/src/controls/templates/AbstractApplicationHeader.qml @kirigami_QML_DIR@/src/controls/Units.qml @kirigami_QML_DIR@/src/controls/SwipeListItem.qml @kirigami_QML_DIR@/src/controls/ApplicationWindow.qml @kirigami_QML_DIR@/src/controls/AbstractApplicationItem.qml @kirigami_QML_DIR@/src/controls/ApplicationItem.qml @kirigami_QML_DIR@/src/controls/ApplicationHeader.qml @kirigami_QML_DIR@/src/controls/Heading.qml @kirigami_QML_DIR@/src/controls/ScrollablePage.qml @kirigami_QML_DIR@/src/controls/AboutPage.qml @kirigami_QML_DIR@/src/controls/UrlButton.qml @kirigami_QML_DIR@/src/controls/LinkButton.qml @kirigami_QML_DIR@/src/controls/Label.qml @kirigami_QML_DIR@/src/controls/BasicListItem.qml + @kirigami_QML_DIR@/src/controls/ListSectionHeader.qml @kirigami_QML_DIR@/src/controls/AbstractApplicationHeader.qml @kirigami_QML_DIR@/src/controls/FormLayout.qml @kirigami_QML_DIR@/src/controls/ListItemDragHandle.qml @kirigami_QML_DIR@/src/styles/Material/AbstractListItem.qml @kirigami_QML_DIR@/src/styles/Material/Theme.qml @kirigami_QML_DIR@/src/styles/Material/SwipeListItem.qml @kirigami_QML_DIR@/src/styles/Material/Label.qml @kirigami_QML_DIR@/src/styles/org.kde.desktop/AbstractListItem.qml @kirigami_QML_DIR@/src/styles/org.kde.desktop/Theme.qml @kirigami_QML_DIR@/src/styles/org.kde.desktop/Units.qml @kirigami_QML_DIR@/src/styles/org.kde.desktop/SwipeListItem.qml @kirigami_QML_DIR@/src/styles/org.kde.desktop/ApplicationWindow.qml @kirigami_QML_DIR@/src/styles/org.kde.desktop/AbstractApplicationHeader.qml diff --git a/src/controls/ListSectionHeader.qml b/src/controls/ListSectionHeader.qml new file mode 100644 index 00000000..1309fc31 --- /dev/null +++ b/src/controls/ListSectionHeader.qml @@ -0,0 +1,80 @@ +/* + * Copyright 2019 Björn Feber + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Library General Public License as + * published by the Free Software Foundation; either version 2, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Library General Public License for more details + * + * You should have received a copy of the GNU Library General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 2.010-1301, USA. + */ + +import QtQuick 2.5 +import QtQuick.Layouts 1.2 +import QtQuick.Controls 2.5 as QQC2 +import org.kde.kirigami 2.10 + +/** + * A section delegate for the primitive ListView component. + * + * It's intended to make all listviews look coherent. + * + * Example usage: + * @code + * import QtQuick 2.5 + * import QtQuick.Controls 2.5 as QQC2 + * + * import org.kde.kirigami 2.10 as Kirigami + * + * ListView { + * [...] + * section.delegate: Kirigami.ListSectionHeader { + * label: section + * + * QQC2.Button { + * text: "Button 1" + * } + * QQC2.Button { + * text: "Button 2" + * } + * } + * [...] + * } + * @endcode + * + */ +AbstractListItem { + id: listSection + + /** + * string: bool + * A single text label the list section header will contain + */ + property alias label: listSection.text + + default property alias _contents: rowLayout.data + + backgroundColor: Theme.alternateBackgroundColor + separatorVisible: false + sectionDelegate: true + hoverEnabled: false + supportsMouseEvents: false + + contentItem: RowLayout { + id: rowLayout + + Heading { + level: 3 + text: listSection.text + Layout.fillWidth: true + } + } +} diff --git a/src/controls/plugins.qmltypes b/src/controls/plugins.qmltypes index 2b7081af..d111c86f 100644 --- a/src/controls/plugins.qmltypes +++ b/src/controls/plugins.qmltypes @@ -1,2059 +1,2078 @@ import QtQuick.tooling 1.2 // This file describes the plugin-supplied types contained in the library. // It is used for QML tooling purposes only. // // This file was auto-generated by: // 'qmlplugindump -noinstantiate -notrelocatable org.kde.kirigami 2.5 /opt/kde5/qml' Module { dependencies: [ "QtGraphicalEffects 1.0", "QtQml 2.1", "QtQml.Models 2.2", "QtQuick 2.9", "QtQuick.Controls 2.4", "QtQuick.Controls.Fusion 2.4", "QtQuick.Controls.Fusion.impl 2.4", "QtQuick.Controls.Imagine 2.4", "QtQuick.Controls.Imagine.impl 2.4", "QtQuick.Controls.Material 2.4", "QtQuick.Controls.Material.impl 2.4", "QtQuick.Controls.Styles 1.4", "QtQuick.Controls.Styles.Plasma 2.0", "QtQuick.Controls.Universal 2.4", "QtQuick.Controls.Universal.impl 2.4", "QtQuick.Controls.impl 2.4", "QtQuick.Extras 1.4", "QtQuick.Layouts 1.2", "QtQuick.Templates 2.4", "QtQuick.Window 2.3", "org.kde.kconfig 1.0", "org.kde.kquickcontrolsaddons 2.0", "org.kde.plasma.components 2.0", "org.kde.plasma.core 2.0", "org.kde.plasma.extras 2.0" ] Component { name: "ApplicationHeaderStyle" prototype: "QObject" exports: ["org.kde.kirigami/ApplicationHeaderStyle 2.0"] isCreatable: false exportMetaObjectRevisions: [0] Enum { name: "Status" values: { "Auto": 0, "Breadcrumb": 1, "Titles": 2, "TabBar": 3, "ToolBar": 4, "None": 5 } } } Component { name: "DelegateRecycler" defaultProperty: "data" prototype: "QQuickItem" exports: ["org.kde.kirigami/DelegateRecycler 2.4"] exportMetaObjectRevisions: [0] Property { name: "sourceComponent"; type: "QQmlComponent"; isPointer: true } } Component { name: "DesktopIcon" defaultProperty: "data" prototype: "QQuickItem" exports: ["org.kde.kirigami/Icon 2.0"] exportMetaObjectRevisions: [0] Property { name: "source"; type: "QVariant" } Property { name: "smooth"; type: "bool" } Property { name: "implicitWidth"; type: "int"; isReadonly: true } Property { name: "implicitHeight"; type: "int"; isReadonly: true } Property { name: "enabled"; type: "bool" } Property { name: "active"; type: "bool" } Property { name: "valid"; type: "bool"; isReadonly: true } Property { name: "selected"; type: "bool" } Property { name: "isMask"; type: "bool" } Property { name: "color"; type: "QColor" } } Component { name: "FormLayoutAttached" prototype: "QObject" exports: ["org.kde.kirigami/FormData 2.3"] isCreatable: false exportMetaObjectRevisions: [0] Property { name: "label"; type: "string" } Property { name: "isSection"; type: "bool" } Property { name: "checkable"; type: "bool" } Property { name: "checked"; type: "bool" } Property { name: "enabled"; type: "bool" } Property { name: "buddyFor"; type: "QQuickItem"; isPointer: true } } Component { name: "Kirigami::PlatformTheme" prototype: "QObject" exports: ["org.kde.kirigami/Theme 2.2"] isCreatable: false exportMetaObjectRevisions: [0] Enum { name: "ColorSet" values: { "View": 0, "Window": 1, "Button": 2, "Selection": 3, "Tooltip": 4, "Complementary": 5 } } Enum { name: "ColorGroup" values: { "Disabled": 1, "Active": 0, "Inactive": 2, "Normal": 0 } } Property { name: "colorSet"; type: "ColorSet" } Property { name: "colorGroup"; type: "ColorGroup" } Property { name: "inherit"; type: "bool" } Property { name: "textColor"; type: "QColor" } Property { name: "disabledTextColor"; type: "QColor" } Property { name: "highlightedTextColor"; type: "QColor" } Property { name: "activeTextColor"; type: "QColor" } Property { name: "linkColor"; type: "QColor" } Property { name: "visitedLinkColor"; type: "QColor" } Property { name: "negativeTextColor"; type: "QColor" } Property { name: "neutralTextColor"; type: "QColor" } Property { name: "positiveTextColor"; type: "QColor" } Property { name: "backgroundColor"; type: "QColor" } Property { name: "highlightColor"; type: "QColor" } Property { name: "focusColor"; type: "QColor" } Property { name: "hoverColor"; type: "QColor" } Property { name: "defaultFont"; type: "QFont"; isReadonly: true } Property { name: "palette"; type: "QPalette"; isReadonly: true } Signal { name: "colorsChanged" } Signal { name: "defaultFontChanged" Parameter { name: "font"; type: "QFont" } } Signal { name: "colorSetChanged" Parameter { name: "colorSet"; type: "Kirigami::PlatformTheme::ColorSet" } } Signal { name: "colorGroupChanged" Parameter { name: "colorGroup"; type: "Kirigami::PlatformTheme::ColorGroup" } } Signal { name: "paletteChanged" Parameter { name: "pal"; type: "QPalette" } } Signal { name: "inheritChanged" Parameter { name: "inherit"; type: "bool" } } Method { name: "iconFromTheme" type: "QIcon" Parameter { name: "name"; type: "string" } Parameter { name: "customColor"; type: "QColor" } } Method { name: "iconFromTheme" type: "QIcon" Parameter { name: "name"; type: "string" } } } Component { name: "MessageType" prototype: "QObject" exports: ["org.kde.kirigami/MessageType 2.4"] isCreatable: false exportMetaObjectRevisions: [0] Enum { name: "Type" values: { "Information": 0, "Positive": 1, "Warning": 2, "Error": 3 } } } Component { name: "MnemonicAttached" prototype: "QObject" exports: ["org.kde.kirigami/MnemonicData 2.3"] isCreatable: false exportMetaObjectRevisions: [0] Enum { name: "ControlType" values: { "ActionElement": 0, "DialogButton": 1, "MenuItem": 2, "FormLabel": 3, "SecondaryControl": 4 } } Property { name: "label"; type: "string" } Property { name: "richTextLabel"; type: "string"; isReadonly: true } Property { name: "mnemonicLabel"; type: "string"; isReadonly: true } Property { name: "enabled"; type: "bool" } Property { name: "controlType"; type: "MnemonicAttached::ControlType" } Property { name: "sequence"; type: "QKeySequence"; isReadonly: true } } Component { name: "ScenePositionAttached" prototype: "QObject" exports: ["org.kde.kirigami/ScenePosition 2.5"] isCreatable: false exportMetaObjectRevisions: [0] Property { name: "x"; type: "int"; isReadonly: true } Property { name: "y"; type: "int"; isReadonly: true } } Component { name: "Settings" prototype: "QObject" exports: ["org.kde.kirigami/Settings 2.0"] isCreatable: false isSingleton: true exportMetaObjectRevisions: [0] Property { name: "tabletModeAvailable"; type: "bool"; isReadonly: true } Property { name: "isMobile"; type: "bool"; isReadonly: true } Property { name: "tabletMode"; type: "bool"; isReadonly: true } Property { name: "style"; type: "string"; isReadonly: true } Property { name: "mouseWheelScrollLines"; type: "int"; isReadonly: true } } Component { prototype: "QQuickItem" name: "org.kde.kirigami/AbstractApplicationHeader 2.0" exports: ["org.kde.kirigami/AbstractApplicationHeader 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentItem" Property { name: "minimumHeight"; type: "int" } Property { name: "preferredHeight"; type: "int" } Property { name: "maximumHeight"; type: "int" } Property { name: "pageRow"; type: "PageRow_QMLTYPE_5"; isPointer: true } Property { name: "page"; type: "Page_QMLTYPE_14"; isPointer: true } Property { name: "paintedHeight"; type: "int"; isReadonly: true } Property { name: "leftPadding"; type: "int" } Property { name: "topPadding"; type: "int" } Property { name: "rightPadding"; type: "int" } Property { name: "bottomPadding"; type: "int" } Property { name: "separatorVisible"; type: "bool" } Property { name: "__appWindow"; type: "QObject"; isPointer: true } Property { name: "background"; type: "QQuickItem"; isPointer: true } Property { name: "contentItem"; type: "QObject"; isList: true; isReadonly: true } } Component { prototype: "QQuickItem" name: "org.kde.kirigami/AbstractApplicationItem 2.1" exports: ["org.kde.kirigami/AbstractApplicationItem 2.1"] exportMetaObjectRevisions: [1] isComposite: true defaultProperty: "__data" Property { name: "pageStack"; type: "QQuickItem"; isPointer: true } Property { name: "activeFocusItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } Property { name: "header"; type: "QQuickItem"; isPointer: true } Property { name: "footer"; type: "QQuickItem"; isPointer: true } Property { name: "controlsVisible"; type: "bool" } Property { name: "globalDrawer"; type: "OverlayDrawer_QMLTYPE_23"; isPointer: true } Property { name: "wideScreen"; type: "bool" } Property { name: "contextDrawer"; type: "OverlayDrawer_QMLTYPE_23"; isPointer: true } Property { name: "reachableMode"; type: "bool" } Property { name: "reachableModeEnabled"; type: "bool" } Property { name: "contentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } Property { name: "overlay"; type: "QQuickItem"; isReadonly: true; isPointer: true } Property { name: "__data"; type: "QObject"; isList: true; isReadonly: true } Method { name: "showPassiveNotification" type: "QVariant" Parameter { name: "message"; type: "QVariant" } Parameter { name: "timeout"; type: "QVariant" } Parameter { name: "actionText"; type: "QVariant" } Parameter { name: "callBack"; type: "QVariant" } } Method { name: "hidePassiveNotification"; type: "QVariant" } Method { name: "applicationWindow"; type: "QVariant" } } Component { prototype: "QQuickApplicationWindow" name: "org.kde.kirigami/AbstractApplicationWindow 2.0" exports: ["org.kde.kirigami/AbstractApplicationWindow 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" Property { name: "pageStack"; type: "QQuickItem"; isPointer: true } Property { name: "controlsVisible"; type: "bool" } Property { name: "globalDrawer"; type: "OverlayDrawer_QMLTYPE_23"; isPointer: true } Property { name: "wideScreen"; type: "bool" } Property { name: "contextDrawer"; type: "OverlayDrawer_QMLTYPE_23"; isPointer: true } Property { name: "reachableMode"; type: "bool" } Property { name: "reachableModeEnabled"; type: "bool" } Method { name: "showPassiveNotification" type: "QVariant" Parameter { name: "message"; type: "QVariant" } Parameter { name: "timeout"; type: "QVariant" } Parameter { name: "actionText"; type: "QVariant" } Parameter { name: "callBack"; type: "QVariant" } } Method { name: "hidePassiveNotification"; type: "QVariant" } Method { name: "applicationWindow"; type: "QVariant" } } Component { prototype: "QQuickAbstractButton" name: "QtQuick.Controls/AbstractButton 2.0" exports: ["QtQuick.Controls/AbstractButton 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickItemDelegate" name: "org.kde.kirigami/AbstractCard 2.4" exports: ["org.kde.kirigami/AbstractCard 2.4"] exportMetaObjectRevisions: [4] isComposite: true defaultProperty: "data" Property { name: "header"; type: "QQuickItem"; isPointer: true } Property { name: "headerOrientation"; type: "int" } Property { name: "footer"; type: "QQuickItem"; isPointer: true } Property { name: "showClickFeedback"; type: "bool" } } Component { prototype: "QQuickControl" name: "org.kde.kirigami/AbstractItemViewHeader 2.1" exports: ["org.kde.kirigami/AbstractItemViewHeader 2.1"] exportMetaObjectRevisions: [1] isComposite: true defaultProperty: "data" Property { name: "minimumHeight"; type: "int" } Property { name: "maximumHeight"; type: "int" } Property { name: "view"; type: "QQuickListView"; isPointer: true } } Component { prototype: "QQuickItemDelegate" name: "org.kde.kirigami/AbstractListItem 2.0" exports: ["org.kde.kirigami/AbstractListItem 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "_default" Property { name: "supportsMouseEvents"; type: "bool" } Property { name: "sectionDelegate"; type: "bool" } Property { name: "separatorVisible"; type: "bool" } Property { name: "textColor"; type: "QColor" } Property { name: "backgroundColor"; type: "QColor" } Property { name: "activeTextColor"; type: "QColor" } Property { name: "activeBackgroundColor"; type: "QColor" } Property { name: "containsMouse"; type: "bool"; isReadonly: true } Property { name: "_default"; type: "QQuickItem"; isPointer: true } } Component { prototype: "QObject" name: "org.kde.kirigami/Action 2.0" exports: ["org.kde.kirigami/Action 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "children" Property { name: "visible"; type: "bool" } Property { name: "checkable"; type: "bool" } Property { name: "checked"; type: "bool" } Property { name: "enabled"; type: "bool" } Property { name: "icon"; type: "ActionIconGroup_QMLTYPE_52"; isPointer: true } Property { name: "text"; type: "string" } Property { name: "tooltip"; type: "string" } Property { name: "__children"; type: "QObject"; isList: true; isReadonly: true } Property { name: "__shortcut"; type: "QQuickShortcut"; isPointer: true } Property { name: "iconName"; type: "string" } Property { name: "iconSource"; type: "string" } Property { name: "shortcut"; type: "QVariant" } Property { name: "children"; type: "QObject"; isList: true; isReadonly: true } Signal { name: "toggled" Parameter { name: "checked"; type: "bool" } } Signal { name: "triggered" Parameter { name: "source"; type: "QObject"; isPointer: true } } Method { name: "trigger" type: "QVariant" Parameter { name: "source"; type: "QVariant" } } } Component { prototype: "QQuickAction" name: "QtQuick.Controls/Action 2.3" exports: ["QtQuick.Controls/Action 2.3"] exportMetaObjectRevisions: [3] isComposite: true } Component { prototype: "QQuickActionGroup" name: "QtQuick.Controls/ActionGroup 2.3" exports: ["QtQuick.Controls/ActionGroup 2.3"] exportMetaObjectRevisions: [3] isComposite: true defaultProperty: "actions" } Component { prototype: "QQuickItem" name: "org.kde.kirigami/ActionToolBar 2.5" exports: ["org.kde.kirigami/ActionToolBar 2.5"] exportMetaObjectRevisions: [5] isComposite: true defaultProperty: "data" Property { name: "actions"; type: "QObject"; isList: true; isReadonly: true } Property { name: "hiddenActions"; type: "QObject"; isList: true; isReadonly: true } Property { name: "flat"; type: "bool" } } Component { prototype: "QQuickItem" name: "org.kde.kirigami/ApplicationHeader 2.0" exports: ["org.kde.kirigami/ApplicationHeader 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentItem" Property { name: "headerStyle"; type: "int" } Property { name: "backButtonEnabled"; type: "bool" } Property { name: "pageDelegate"; type: "QQmlComponent"; isPointer: true } Property { name: "minimumHeight"; type: "int" } Property { name: "preferredHeight"; type: "int" } Property { name: "maximumHeight"; type: "int" } Property { name: "pageRow"; type: "PageRow_QMLTYPE_5"; isPointer: true } Property { name: "page"; type: "Page_QMLTYPE_14"; isPointer: true } Property { name: "paintedHeight"; type: "int"; isReadonly: true } Property { name: "leftPadding"; type: "int" } Property { name: "topPadding"; type: "int" } Property { name: "rightPadding"; type: "int" } Property { name: "bottomPadding"; type: "int" } Property { name: "separatorVisible"; type: "bool" } Property { name: "__appWindow"; type: "QObject"; isPointer: true } Property { name: "background"; type: "QQuickItem"; isPointer: true } Property { name: "contentItem"; type: "QObject"; isList: true; isReadonly: true } } Component { prototype: "QQuickItem" name: "org.kde.kirigami/ApplicationItem 2.1" exports: ["org.kde.kirigami/ApplicationItem 2.1"] exportMetaObjectRevisions: [1] isComposite: true defaultProperty: "__data" Property { name: "pageStack"; type: "PageRow_QMLTYPE_5"; isReadonly: true; isPointer: true } Property { name: "activeFocusItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } Property { name: "header"; type: "QQuickItem"; isPointer: true } Property { name: "footer"; type: "QQuickItem"; isPointer: true } Property { name: "controlsVisible"; type: "bool" } Property { name: "globalDrawer"; type: "OverlayDrawer_QMLTYPE_23"; isPointer: true } Property { name: "wideScreen"; type: "bool" } Property { name: "contextDrawer"; type: "OverlayDrawer_QMLTYPE_23"; isPointer: true } Property { name: "reachableMode"; type: "bool" } Property { name: "reachableModeEnabled"; type: "bool" } Property { name: "contentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } Property { name: "overlay"; type: "QQuickItem"; isReadonly: true; isPointer: true } Property { name: "__data"; type: "QObject"; isList: true; isReadonly: true } Method { name: "showPassiveNotification" type: "QVariant" Parameter { name: "message"; type: "QVariant" } Parameter { name: "timeout"; type: "QVariant" } Parameter { name: "actionText"; type: "QVariant" } Parameter { name: "callBack"; type: "QVariant" } } Method { name: "hidePassiveNotification"; type: "QVariant" } Method { name: "applicationWindow"; type: "QVariant" } } Component { prototype: "QQuickApplicationWindow" name: "QtQuick.Controls/ApplicationWindow 2.0" exports: ["QtQuick.Controls/ApplicationWindow 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickApplicationWindow" name: "org.kde.kirigami/ApplicationWindow 2.0" exports: ["org.kde.kirigami/ApplicationWindow 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" Property { name: "pageStack"; type: "PageRow_QMLTYPE_5"; isReadonly: true; isPointer: true } Property { name: "controlsVisible"; type: "bool" } Property { name: "globalDrawer"; type: "OverlayDrawer_QMLTYPE_23"; isPointer: true } Property { name: "wideScreen"; type: "bool" } Property { name: "contextDrawer"; type: "OverlayDrawer_QMLTYPE_23"; isPointer: true } Property { name: "reachableMode"; type: "bool" } Property { name: "reachableModeEnabled"; type: "bool" } Method { name: "showPassiveNotification" type: "QVariant" Parameter { name: "message"; type: "QVariant" } Parameter { name: "timeout"; type: "QVariant" } Parameter { name: "actionText"; type: "QVariant" } Parameter { name: "callBack"; type: "QVariant" } } Method { name: "hidePassiveNotification"; type: "QVariant" } Method { name: "applicationWindow"; type: "QVariant" } } Component { prototype: "QQuickItemDelegate" name: "org.kde.kirigami/BasicListItem 2.0" exports: ["org.kde.kirigami/BasicListItem 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "_basicDefault" Property { name: "icon"; type: "QVariant" } Property { name: "label"; type: "string" } Property { name: "reserveSpaceForIcon"; type: "bool" } Property { name: "_basicDefault"; type: "QQuickItem"; isList: true; isReadonly: true } Property { name: "supportsMouseEvents"; type: "bool" } Property { name: "sectionDelegate"; type: "bool" } Property { name: "separatorVisible"; type: "bool" } Property { name: "textColor"; type: "QColor" } Property { name: "backgroundColor"; type: "QColor" } Property { name: "activeTextColor"; type: "QColor" } Property { name: "activeBackgroundColor"; type: "QColor" } Property { name: "containsMouse"; type: "bool"; isReadonly: true } Property { name: "_default"; type: "QQuickItem"; isPointer: true } } + Component { + prototype: "QQuickItemDelegate" + name: "org.kde.kirigami/ListSectionHeader 2.10" + exports: ["org.kde.kirigami/ListSectionHeader 2.10"] + exportMetaObjectRevisions: [0] + isComposite: true + defaultProperty: "_contents" + Property { name: "label"; type: "string" } + Property { name: "_contents"; type: "QQuickItem"; isList: true; isReadonly: true } + Property { name: "supportsMouseEvents"; type: "bool" } + Property { name: "sectionDelegate"; type: "bool" } + Property { name: "separatorVisible"; type: "bool" } + Property { name: "textColor"; type: "QColor" } + Property { name: "backgroundColor"; type: "QColor" } + Property { name: "activeTextColor"; type: "QColor" } + Property { name: "activeBackgroundColor"; type: "QColor" } + Property { name: "containsMouse"; type: "bool"; isReadonly: true } + Property { name: "_default"; type: "QQuickItem"; isPointer: true } + } Component { prototype: "QQuickItem" name: "QtQuick.Controls.Material.impl/BoxShadow 2.0" exports: ["QtQuick.Controls.Material.impl/BoxShadow 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "offsetX"; type: "int" } Property { name: "offsetY"; type: "int" } Property { name: "blurRadius"; type: "int" } Property { name: "spreadRadius"; type: "int" } Property { name: "source"; type: "QQuickItem"; isPointer: true } Property { name: "fullWidth"; type: "bool" } Property { name: "fullHeight"; type: "bool" } Property { name: "glowRadius"; type: "double" } Property { name: "spread"; type: "double" } Property { name: "color"; type: "QColor" } Property { name: "cornerRadius"; type: "double" } Property { name: "cached"; type: "bool" } } Component { prototype: "QQuickBusyIndicator" name: "QtQuick.Controls/BusyIndicator 2.0" exports: ["QtQuick.Controls/BusyIndicator 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickButton" name: "QtQuick.Controls/Button 2.0" exports: ["QtQuick.Controls/Button 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickButtonGroup" name: "QtQuick.Controls/ButtonGroup 2.0" exports: ["QtQuick.Controls/ButtonGroup 2.0"] exportMetaObjectRevisions: [0] isComposite: true } Component { prototype: "QQuickRectangle" name: "QtQuick.Controls.Fusion.impl/ButtonPanel 2.3" exports: ["QtQuick.Controls.Fusion.impl/ButtonPanel 2.3"] exportMetaObjectRevisions: [3] isComposite: true defaultProperty: "data" Property { name: "control"; type: "QQuickItem"; isPointer: true } Property { name: "highlighted"; type: "bool" } } Component { prototype: "QQuickItemDelegate" name: "org.kde.kirigami/Card 2.4" exports: ["org.kde.kirigami/Card 2.4"] exportMetaObjectRevisions: [4] isComposite: true defaultProperty: "data" Property { name: "actions"; type: "QObject"; isList: true; isReadonly: true } Property { name: "hiddenActions"; type: "QObject"; isList: true; isReadonly: true } Property { name: "banner"; type: "BannerImage_QMLTYPE_85"; isReadonly: true; isPointer: true } Property { name: "header"; type: "QQuickItem"; isPointer: true } Property { name: "headerOrientation"; type: "int" } Property { name: "footer"; type: "QQuickItem"; isPointer: true } Property { name: "showClickFeedback"; type: "bool" } } Component { prototype: "QQuickGridView" name: "org.kde.kirigami/CardsGridView 2.4" exports: ["org.kde.kirigami/CardsGridView 2.4"] exportMetaObjectRevisions: [4] isComposite: true defaultProperty: "delegate" Property { name: "columns"; type: "int"; isReadonly: true } Property { name: "maximumColumns"; type: "int" } Property { name: "maximumColumnWidth"; type: "int" } Property { name: "minimumColumnWidth"; type: "int" } Property { name: "delegate"; type: "QQmlComponent"; isPointer: true } Property { name: "_delegateComponent"; type: "QQmlComponent"; isPointer: true } } Component { prototype: "QQuickGridLayout" name: "org.kde.kirigami/CardsLayout 2.4" exports: ["org.kde.kirigami/CardsLayout 2.4"] exportMetaObjectRevisions: [4] isComposite: true defaultProperty: "data" Property { name: "maximumColumns"; type: "int" } Property { name: "maximumColumnWidth"; type: "int" } Property { name: "minimumColumnWidth"; type: "int" } } Component { prototype: "QQuickListView" name: "org.kde.kirigami/CardsListView 2.4" exports: ["org.kde.kirigami/CardsListView 2.4"] exportMetaObjectRevisions: [4] isComposite: true defaultProperty: "data" Property { name: "delegate"; type: "QQmlComponent"; isPointer: true } Property { name: "_delegateComponent"; type: "QQmlComponent"; isPointer: true } } Component { prototype: "QQuickCheckBox" name: "QtQuick.Controls/CheckBox 2.0" exports: ["QtQuick.Controls/CheckBox 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickCheckDelegate" name: "QtQuick.Controls/CheckDelegate 2.0" exports: ["QtQuick.Controls/CheckDelegate 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickRectangle" name: "QtQuick.Controls.Material.impl/CheckIndicator 2.0" exports: ["QtQuick.Controls.Material.impl/CheckIndicator 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "control"; type: "QQuickItem"; isPointer: true } Property { name: "checkState"; type: "int" } } Component { prototype: "QQuickRectangle" name: "QtQuick.Controls.Fusion.impl/CheckIndicator 2.3" exports: ["QtQuick.Controls.Fusion.impl/CheckIndicator 2.3"] exportMetaObjectRevisions: [3] isComposite: true defaultProperty: "data" Property { name: "control"; type: "QQuickItem"; isPointer: true } Property { name: "pressedColor"; type: "QColor"; isReadonly: true } Property { name: "checkMarkColor"; type: "QColor"; isReadonly: true } } Component { prototype: "QQuickRectangle" name: "QtQuick.Controls.Universal.impl/CheckIndicator 2.0" exports: ["QtQuick.Controls.Universal.impl/CheckIndicator 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "control"; type: "QQuickItem"; isPointer: true } Property { name: "partiallyChecked"; type: "bool"; isReadonly: true } } Component { prototype: "QQuickFocusScope" name: "QtQuick.Extras.Private/CircularButton 1.0" exports: ["QtQuick.Extras.Private/CircularButton 1.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "isDefault"; type: "bool" } Property { name: "menu"; type: "Menu_QMLTYPE_126"; isPointer: true } Property { name: "checkable"; type: "bool" } Property { name: "checked"; type: "bool" } Property { name: "exclusiveGroup"; type: "QQuickExclusiveGroup1"; isPointer: true } Property { name: "action"; type: "QQuickAction1"; isPointer: true } Property { name: "activeFocusOnPress"; type: "bool" } Property { name: "text"; type: "string" } Property { name: "tooltip"; type: "string" } Property { name: "iconSource"; type: "QUrl" } Property { name: "iconName"; type: "string" } Property { name: "__position"; type: "string" } Property { name: "__iconOverriden"; type: "bool"; isReadonly: true } Property { name: "__action"; type: "QQuickAction1"; isPointer: true } Property { name: "__iconAction"; type: "QQuickAction1"; isReadonly: true; isPointer: true } Property { name: "__behavior"; type: "QVariant" } Property { name: "__effectivePressed"; type: "bool" } Property { name: "pressed"; type: "bool"; isReadonly: true } Property { name: "hovered"; type: "bool"; isReadonly: true } Signal { name: "clicked" } Method { name: "accessiblePressAction"; type: "QVariant" } Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__style"; type: "QObject"; isPointer: true } Property { name: "__panel"; type: "QQuickItem"; isPointer: true } Property { name: "styleHints"; type: "QVariant" } Property { name: "__styleData"; type: "QObject"; isPointer: true } } Component { prototype: "QObject" name: "QtQuick.Extras.Private/CircularButtonStyleHelper 1.0" exports: ["QtQuick.Extras.Private/CircularButtonStyleHelper 1.0"] exportMetaObjectRevisions: [0] isComposite: true Property { name: "control"; type: "QQuickItem"; isPointer: true } Property { name: "buttonColorUpTop"; type: "QColor" } Property { name: "buttonColorUpBottom"; type: "QColor" } Property { name: "buttonColorDownTop"; type: "QColor" } Property { name: "buttonColorDownBottom"; type: "QColor" } Property { name: "outerArcColorTop"; type: "QColor" } Property { name: "outerArcColorBottom"; type: "QColor" } Property { name: "innerArcColorTop"; type: "QColor" } Property { name: "innerArcColorBottom"; type: "QColor" } Property { name: "innerArcColorBottomStop"; type: "double" } Property { name: "shineColor"; type: "QColor" } Property { name: "smallestAxis"; type: "double" } Property { name: "outerArcLineWidth"; type: "double" } Property { name: "innerArcLineWidth"; type: "double" } Property { name: "shineArcLineWidth"; type: "double" } Property { name: "implicitWidth"; type: "double" } Property { name: "implicitHeight"; type: "double" } Property { name: "textColorUp"; type: "QColor" } Property { name: "textColorDown"; type: "QColor" } Property { name: "textRaisedColorUp"; type: "QColor" } Property { name: "textRaisedColorDown"; type: "QColor" } Property { name: "radius"; type: "double" } Property { name: "halfRadius"; type: "double" } Property { name: "outerArcRadius"; type: "double" } Property { name: "innerArcRadius"; type: "double" } Property { name: "shineArcRadius"; type: "double" } Property { name: "zeroAngle"; type: "double" } Property { name: "buttonColorTop"; type: "QColor" } Property { name: "buttonColorBottom"; type: "QColor" } Method { name: "toPixels" type: "QVariant" Parameter { name: "percentageOfSmallestAxis"; type: "QVariant" } } Method { name: "paintBackground" type: "QVariant" Parameter { name: "ctx"; type: "QVariant" } } } Component { prototype: "QQuickFocusScope" name: "QtQuick.Extras/CircularGauge 1.0" exports: ["QtQuick.Extras/CircularGauge 1.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "tickmarksVisible"; type: "bool" } Property { name: "minimumValue"; type: "double" } Property { name: "maximumValue"; type: "double" } Property { name: "value"; type: "double" } Property { name: "stepSize"; type: "double" } Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__style"; type: "QObject"; isPointer: true } Property { name: "__panel"; type: "QQuickItem"; isPointer: true } Property { name: "styleHints"; type: "QVariant" } Property { name: "__styleData"; type: "QObject"; isPointer: true } } Component { prototype: "QQuickFocusScope" name: "QtQuick.Extras.Private/CircularTickmarkLabel 1.0" exports: ["QtQuick.Extras.Private/CircularTickmarkLabel 1.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "minimumValueAngle"; type: "double" } Property { name: "maximumValueAngle"; type: "double" } Property { name: "angleRange"; type: "double"; isReadonly: true } Property { name: "tickmarkStepSize"; type: "double" } Property { name: "tickmarkInset"; type: "double" } Property { name: "tickmarkCount"; type: "int"; isReadonly: true } Property { name: "minorTickmarkCount"; type: "int" } Property { name: "minorTickmarkInset"; type: "double" } Property { name: "labelInset"; type: "double" } Property { name: "labelStepSize"; type: "double" } Property { name: "labelCount"; type: "int"; isReadonly: true } Property { name: "__tickmarkCount"; type: "double"; isReadonly: true } Property { name: "tickmarksVisible"; type: "bool" } Property { name: "minimumValue"; type: "double" } Property { name: "maximumValue"; type: "double" } Property { name: "stepSize"; type: "double" } Method { name: "valueToAngle" type: "QVariant" Parameter { name: "value"; type: "QVariant" } } Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__style"; type: "QObject"; isPointer: true } Property { name: "__panel"; type: "QQuickItem"; isPointer: true } Property { name: "styleHints"; type: "QVariant" } Property { name: "__styleData"; type: "QObject"; isPointer: true } } Component { prototype: "QQuickComboBox" name: "QtQuick.Controls/ComboBox 2.0" exports: ["QtQuick.Controls/ComboBox 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickContainer" name: "QtQuick.Controls/Container 2.0" exports: ["QtQuick.Controls/Container 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickDrawer" name: "org.kde.kirigami/ContextDrawer 2.0" exports: ["org.kde.kirigami/ContextDrawer 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" Property { name: "title"; type: "string" } Property { name: "actions"; type: "QVariant" } Property { name: "drawerOpen"; type: "bool" } Property { name: "enabled"; type: "bool" } Property { name: "peeking"; type: "bool" } Property { name: "animating"; type: "bool"; isReadonly: true } Property { name: "collapsible"; type: "bool" } Property { name: "collapsed"; type: "bool" } Property { name: "collapsedSize"; type: "int" } Property { name: "handleOpenIcon"; type: "QObject"; isReadonly: true; isPointer: true } Property { name: "handleClosedIcon"; type: "QObject"; isReadonly: true; isPointer: true } Property { name: "handleVisible"; type: "bool" } Property { name: "handle"; type: "QQuickItem"; isReadonly: true; isPointer: true } Property { name: "__internal"; type: "QObject"; isPointer: true } } Component { prototype: "QQuickControl" name: "QtQuick.Controls/Control 2.0" exports: ["QtQuick.Controls/Control 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickRectangle" name: "QtQuick.Controls.Material.impl/CursorDelegate 2.0" exports: ["QtQuick.Controls.Material.impl/CursorDelegate 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickFocusScope" name: "QtQuick.Extras/DelayButton 1.0" exports: ["QtQuick.Extras/DelayButton 1.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "delay"; type: "int" } Property { name: "__progress"; type: "double" } Property { name: "progress"; type: "double"; isReadonly: true } Signal { name: "activated" } Property { name: "isDefault"; type: "bool" } Property { name: "menu"; type: "Menu_QMLTYPE_126"; isPointer: true } Property { name: "checkable"; type: "bool" } Property { name: "checked"; type: "bool" } Property { name: "exclusiveGroup"; type: "QQuickExclusiveGroup1"; isPointer: true } Property { name: "action"; type: "QQuickAction1"; isPointer: true } Property { name: "activeFocusOnPress"; type: "bool" } Property { name: "text"; type: "string" } Property { name: "tooltip"; type: "string" } Property { name: "iconSource"; type: "QUrl" } Property { name: "iconName"; type: "string" } Property { name: "__position"; type: "string" } Property { name: "__iconOverriden"; type: "bool"; isReadonly: true } Property { name: "__action"; type: "QQuickAction1"; isPointer: true } Property { name: "__iconAction"; type: "QQuickAction1"; isReadonly: true; isPointer: true } Property { name: "__behavior"; type: "QVariant" } Property { name: "__effectivePressed"; type: "bool" } Property { name: "pressed"; type: "bool"; isReadonly: true } Property { name: "hovered"; type: "bool"; isReadonly: true } Signal { name: "clicked" } Method { name: "accessiblePressAction"; type: "QVariant" } Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__style"; type: "QObject"; isPointer: true } Property { name: "__panel"; type: "QQuickItem"; isPointer: true } Property { name: "styleHints"; type: "QVariant" } Property { name: "__styleData"; type: "QObject"; isPointer: true } } Component { prototype: "QQuickDelayButton" name: "QtQuick.Controls/DelayButton 2.2" exports: ["QtQuick.Controls/DelayButton 2.2"] exportMetaObjectRevisions: [2] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickFocusScope" name: "QtQuick.Extras/Dial 1.1" exports: ["QtQuick.Extras/Dial 1.1"] exportMetaObjectRevisions: [1] isComposite: true defaultProperty: "data" Property { name: "__wrap"; type: "bool" } Property { name: "activeFocusOnPress"; type: "bool" } Property { name: "tickmarksVisible"; type: "bool" } Property { name: "value"; type: "double" } Property { name: "minimumValue"; type: "double" } Property { name: "maximumValue"; type: "double" } Property { name: "hovered"; type: "bool"; isReadonly: true } Property { name: "stepSize"; type: "double" } Property { name: "pressed"; type: "bool"; isReadonly: true } Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__style"; type: "QObject"; isPointer: true } Property { name: "__panel"; type: "QQuickItem"; isPointer: true } Property { name: "styleHints"; type: "QVariant" } Property { name: "__styleData"; type: "QObject"; isPointer: true } } Component { prototype: "QQuickFocusScope" name: "QtQuick.Extras/Dial 1.0" exports: ["QtQuick.Extras/Dial 1.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "__wrap"; type: "bool" } Property { name: "activeFocusOnPress"; type: "bool" } Property { name: "tickmarksVisible"; type: "bool" } Property { name: "value"; type: "double" } Property { name: "minimumValue"; type: "double" } Property { name: "maximumValue"; type: "double" } Property { name: "hovered"; type: "bool"; isReadonly: true } Property { name: "stepSize"; type: "double" } Property { name: "pressed"; type: "bool"; isReadonly: true } Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__style"; type: "QObject"; isPointer: true } Property { name: "__panel"; type: "QQuickItem"; isPointer: true } Property { name: "styleHints"; type: "QVariant" } Property { name: "__styleData"; type: "QObject"; isPointer: true } } Component { prototype: "QQuickDial" name: "QtQuick.Controls/Dial 2.0" exports: ["QtQuick.Controls/Dial 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickDialog" name: "QtQuick.Controls/Dialog 2.1" exports: ["QtQuick.Controls/Dialog 2.1"] exportMetaObjectRevisions: [1] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickDialogButtonBox" name: "QtQuick.Controls/DialogButtonBox 2.1" exports: ["QtQuick.Controls/DialogButtonBox 2.1"] exportMetaObjectRevisions: [1] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickDrawer" name: "QtQuick.Controls/Drawer 2.0" exports: ["QtQuick.Controls/Drawer 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickItem" name: "QtQuick.Controls.Material.impl/ElevationEffect 2.0" exports: ["QtQuick.Controls.Material.impl/ElevationEffect 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "source"; type: "QVariant" } Property { name: "elevation"; type: "int" } Property { name: "fullWidth"; type: "bool" } Property { name: "fullHeight"; type: "bool" } Property { name: "sourceItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } Property { name: "_shadows"; type: "QVariant"; isReadonly: true } Property { name: "_shadow"; type: "QVariant"; isReadonly: true } } Component { prototype: "QQuickItem" name: "org.kde.kirigami/FormLayout 2.3" exports: ["org.kde.kirigami/FormLayout 2.3"] exportMetaObjectRevisions: [3] isComposite: true defaultProperty: "data" Property { name: "wideMode"; type: "bool" } } Component { prototype: "QQuickFrame" name: "QtQuick.Controls/Frame 2.0" exports: ["QtQuick.Controls/Frame 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickFocusScope" name: "QtQuick.Extras/Gauge 1.0" exports: ["QtQuick.Extras/Gauge 1.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "orientation"; type: "int" } Property { name: "tickmarkAlignment"; type: "int" } Property { name: "__tickmarkAlignment"; type: "int" } Property { name: "__tickmarksInside"; type: "bool" } Property { name: "tickmarkStepSize"; type: "double" } Property { name: "minorTickmarkCount"; type: "int" } Property { name: "formatValue"; type: "QVariant" } Property { name: "minimumValue"; type: "double" } Property { name: "value"; type: "double" } Property { name: "maximumValue"; type: "double" } Property { name: "font"; type: "QFont" } Property { name: "__hiddenText"; type: "QQuickText"; isReadonly: true; isPointer: true } Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__style"; type: "QObject"; isPointer: true } Property { name: "__panel"; type: "QQuickItem"; isPointer: true } Property { name: "styleHints"; type: "QVariant" } Property { name: "__styleData"; type: "QObject"; isPointer: true } } Component { prototype: "QQuickDrawer" name: "org.kde.kirigami/GlobalDrawer 2.0" exports: ["org.kde.kirigami/GlobalDrawer 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "content" Property { name: "actions"; type: "QObject"; isList: true; isReadonly: true } Property { name: "showContentWhenCollapsed"; type: "bool" } Property { name: "showTopContentWhenCollapsed"; type: "bool" } Property { name: "resetMenuOnTriggered"; type: "bool" } Property { name: "currentSubMenu"; type: "Action_QMLTYPE_53"; isReadonly: true; isPointer: true } Property { name: "title"; type: "string" } Property { name: "titleIcon"; type: "QVariant" } Property { name: "bannerImageSource"; type: "QUrl" } Property { name: "content"; type: "QObject"; isList: true; isReadonly: true } Property { name: "topContent"; type: "QObject"; isList: true; isReadonly: true } Signal { name: "bannerClicked" } Method { name: "resetMenu"; type: "QVariant" } Property { name: "drawerOpen"; type: "bool" } Property { name: "enabled"; type: "bool" } Property { name: "peeking"; type: "bool" } Property { name: "animating"; type: "bool"; isReadonly: true } Property { name: "collapsible"; type: "bool" } Property { name: "collapsed"; type: "bool" } Property { name: "collapsedSize"; type: "int" } Property { name: "handleOpenIcon"; type: "QObject"; isReadonly: true; isPointer: true } Property { name: "handleClosedIcon"; type: "QObject"; isReadonly: true; isPointer: true } Property { name: "handleVisible"; type: "bool" } Property { name: "handle"; type: "QQuickItem"; isReadonly: true; isPointer: true } Property { name: "__internal"; type: "QObject"; isPointer: true } } Component { prototype: "QQuickGroupBox" name: "QtQuick.Controls/GroupBox 2.0" exports: ["QtQuick.Controls/GroupBox 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickLabel" name: "org.kde.kirigami/Heading 2.0" exports: ["org.kde.kirigami/Heading 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "level"; type: "int" } Property { name: "step"; type: "int" } Method { name: "headerPointSize" type: "QVariant" Parameter { name: "l"; type: "QVariant" } } } Component { prototype: "QQuickControl" name: "org.kde.kirigami/InlineMessage 2.4" exports: ["org.kde.kirigami/InlineMessage 2.4"] exportMetaObjectRevisions: [4] isComposite: true defaultProperty: "data" Property { name: "_animating"; type: "bool" } Property { name: "type"; type: "int" } Property { name: "icon"; type: "IconPropertiesGroup_QMLTYPE_22"; isPointer: true } Property { name: "text"; type: "string" } Property { name: "showCloseButton"; type: "bool" } Property { name: "actions"; type: "QObject"; isList: true; isReadonly: true } Property { name: "animating"; type: "bool"; isReadonly: true } Signal { name: "linkHovered" Parameter { name: "link"; type: "string" } } Signal { name: "linkActivated" Parameter { name: "link"; type: "string" } } } Component { prototype: "QQuickItemDelegate" name: "QtQuick.Controls/ItemDelegate 2.0" exports: ["QtQuick.Controls/ItemDelegate 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickControl" name: "org.kde.kirigami/ItemViewHeader 2.1" exports: ["org.kde.kirigami/ItemViewHeader 2.1"] exportMetaObjectRevisions: [1] isComposite: true defaultProperty: "data" Property { name: "title"; type: "string" } Property { name: "color"; type: "QColor" } Property { name: "backgroundImage"; type: "QQuickImage"; isReadonly: true; isPointer: true } Property { name: "minimumHeight"; type: "int" } Property { name: "maximumHeight"; type: "int" } Property { name: "view"; type: "QQuickListView"; isPointer: true } } Component { prototype: "QQuickLabel" name: "org.kde.kirigami/Label 2.0" exports: ["org.kde.kirigami/Label 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickLabel" name: "QtQuick.Controls/Label 2.0" exports: ["QtQuick.Controls/Label 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickItem" name: "org.kde.kirigami/ListItemDragHandle 2.5" exports: ["org.kde.kirigami/ListItemDragHandle 2.5"] exportMetaObjectRevisions: [5] isComposite: true defaultProperty: "data" Property { name: "listItem"; type: "QQuickItem"; isPointer: true } Property { name: "listView"; type: "QQuickListView"; isPointer: true } Signal { name: "moveRequested" Parameter { name: "oldIndex"; type: "int" } Parameter { name: "newIndex"; type: "int" } } Signal { name: "dropped" } } Component { prototype: "QQuickMenu" name: "QtQuick.Controls/Menu 2.0" exports: ["QtQuick.Controls/Menu 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickMenuBar" name: "QtQuick.Controls/MenuBar 2.3" exports: ["QtQuick.Controls/MenuBar 2.3"] exportMetaObjectRevisions: [3] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickMenuBarItem" name: "QtQuick.Controls/MenuBarItem 2.3" exports: ["QtQuick.Controls/MenuBarItem 2.3"] exportMetaObjectRevisions: [3] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickMenuItem" name: "QtQuick.Controls/MenuItem 2.0" exports: ["QtQuick.Controls/MenuItem 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickMenuSeparator" name: "QtQuick.Controls/MenuSeparator 2.1" exports: ["QtQuick.Controls/MenuSeparator 2.1"] exportMetaObjectRevisions: [1] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickDrawer" name: "org.kde.kirigami/OverlayDrawer 2.0" exports: ["org.kde.kirigami/OverlayDrawer 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" Property { name: "drawerOpen"; type: "bool" } Property { name: "enabled"; type: "bool" } Property { name: "peeking"; type: "bool" } Property { name: "animating"; type: "bool"; isReadonly: true } Property { name: "collapsible"; type: "bool" } Property { name: "collapsed"; type: "bool" } Property { name: "collapsedSize"; type: "int" } Property { name: "handleOpenIcon"; type: "QObject"; isReadonly: true; isPointer: true } Property { name: "handleClosedIcon"; type: "QObject"; isReadonly: true; isPointer: true } Property { name: "handleVisible"; type: "bool" } Property { name: "handle"; type: "QQuickItem"; isReadonly: true; isPointer: true } Property { name: "__internal"; type: "QObject"; isPointer: true } } Component { prototype: "QObject" name: "org.kde.kirigami/OverlaySheet 2.0" exports: ["org.kde.kirigami/OverlaySheet 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentItem" Property { name: "contentItem"; type: "QQuickItem"; isPointer: true } Property { name: "sheetOpen"; type: "bool" } Property { name: "leftPadding"; type: "int" } Property { name: "topPadding"; type: "int" } Property { name: "rightPadding"; type: "int" } Property { name: "bottomPadding"; type: "int" } Property { name: "header"; type: "QQuickItem"; isPointer: true } Property { name: "footer"; type: "QQuickItem"; isPointer: true } Property { name: "background"; type: "QQuickItem"; isPointer: true } Property { name: "parent"; type: "QQuickItem"; isPointer: true } Property { name: "rootItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } Property { name: "showCloseButton"; type: "bool" } Method { name: "open"; type: "QVariant" } Method { name: "close"; type: "QVariant" } } Component { prototype: "QQuickPage" name: "org.kde.kirigami/Page 2.0" exports: ["org.kde.kirigami/Page 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" Property { name: "flickable"; type: "QQuickFlickable"; isPointer: true } Property { name: "isCurrentPage"; type: "bool"; isReadonly: true } Property { name: "contextualActions"; type: "QObject"; isList: true; isReadonly: true } Property { name: "mainAction"; type: "QObject"; isPointer: true } Property { name: "leftAction"; type: "QObject"; isPointer: true } Property { name: "rightAction"; type: "QObject"; isPointer: true } Property { name: "actions" type: "PageActionPropertyGroup_QMLTYPE_3" isReadonly: true isPointer: true } Signal { name: "backRequested" Parameter { name: "event"; type: "QVariant" } } } Component { prototype: "QQuickPage" name: "QtQuick.Controls/Page 2.0" exports: ["QtQuick.Controls/Page 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickPageIndicator" name: "QtQuick.Controls/PageIndicator 2.0" exports: ["QtQuick.Controls/PageIndicator 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickControl" name: "org.kde.kirigami/PageRow 2.0" exports: ["org.kde.kirigami/PageRow 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "depth"; type: "int"; isReadonly: true } Property { name: "lastItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } Property { name: "currentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } Property { name: "initialPage"; type: "QVariant" } Property { name: "defaultColumnWidth"; type: "int" } Property { name: "wideMode"; type: "bool"; isReadonly: true } Property { name: "separatorVisible"; type: "bool" } Property { name: "currentIndex"; type: "int" } Property { name: "interactive"; type: "bool" } Property { name: "globalToolBar" type: "PageRowGlobalToolBarStyleGroup_QMLTYPE_4" isReadonly: true isPointer: true } Property { name: "layers"; type: "QQuickStackView"; isReadonly: true; isPointer: true } Signal { name: "pagePushed" Parameter { name: "page"; type: "QQuickItem"; isPointer: true } } Signal { name: "pageRemoved" Parameter { name: "page"; type: "QQuickItem"; isPointer: true } } Method { name: "push" type: "QVariant" Parameter { name: "page"; type: "QVariant" } Parameter { name: "properties"; type: "QVariant" } } Method { name: "pop" type: "QVariant" Parameter { name: "page"; type: "QVariant" } } Method { name: "replace" type: "QVariant" Parameter { name: "page"; type: "QVariant" } Parameter { name: "properties"; type: "QVariant" } } Method { name: "clear"; type: "QVariant" } Method { name: "get" type: "QVariant" Parameter { name: "idx"; type: "QVariant" } } Method { name: "flickBack"; type: "QVariant" } } Component { prototype: "QQuickPane" name: "QtQuick.Controls/Pane 2.0" exports: ["QtQuick.Controls/Pane 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickFocusScope" name: "QtQuick.Extras/PieMenu 1.0" exports: ["QtQuick.Extras/PieMenu 1.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "menuItems" Property { name: "selectionAngle"; type: "double"; isReadonly: true } Property { name: "triggerMode"; type: "int" } Property { name: "title"; type: "string" } Property { name: "boundingItem"; type: "QQuickItem"; isPointer: true } Property { name: "__protectedScope"; type: "QObject"; isPointer: true } Property { name: "activationMode"; type: "int" } Property { name: "menuItems"; type: "QQuickMenuItem1"; isList: true; isReadonly: true } Property { name: "currentIndex"; type: "int"; isReadonly: true } Property { name: "currentItem"; type: "QQuickMenuItem1"; isReadonly: true; isPointer: true } Property { name: "__mouseThief"; type: "QQuickMouseThief"; isReadonly: true; isPointer: true } Method { name: "popup" type: "QVariant" Parameter { name: "x"; type: "QVariant" } Parameter { name: "y"; type: "QVariant" } } Method { name: "addItem" type: "QVariant" Parameter { name: "text"; type: "QVariant" } } Method { name: "insertItem" type: "QVariant" Parameter { name: "before"; type: "QVariant" } Parameter { name: "text"; type: "QVariant" } } Method { name: "removeItem" type: "QVariant" Parameter { name: "item"; type: "QVariant" } } Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__style"; type: "QObject"; isPointer: true } Property { name: "__panel"; type: "QQuickItem"; isPointer: true } Property { name: "styleHints"; type: "QVariant" } Property { name: "__styleData"; type: "QObject"; isPointer: true } } Component { prototype: "QQuickLoader" name: "QtQuick.Extras.Private/PieMenuIcon 1.0" exports: ["QtQuick.Extras.Private/PieMenuIcon 1.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "control"; type: "PieMenu_QMLTYPE_222"; isPointer: true } Property { name: "styleData"; type: "QObject"; isPointer: true } Property { name: "iconSource"; type: "string"; isReadonly: true } } Component { prototype: "QQuickPopup" name: "QtQuick.Controls/Popup 2.0" exports: ["QtQuick.Controls/Popup 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickProgressBar" name: "QtQuick.Controls/ProgressBar 2.0" exports: ["QtQuick.Controls/ProgressBar 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickRadioButton" name: "QtQuick.Controls/RadioButton 2.0" exports: ["QtQuick.Controls/RadioButton 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickRadioDelegate" name: "QtQuick.Controls/RadioDelegate 2.0" exports: ["QtQuick.Controls/RadioDelegate 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickRectangle" name: "QtQuick.Controls.Fusion.impl/RadioIndicator 2.3" exports: ["QtQuick.Controls.Fusion.impl/RadioIndicator 2.3"] exportMetaObjectRevisions: [3] isComposite: true defaultProperty: "data" Property { name: "control"; type: "QQuickItem"; isPointer: true } Property { name: "pressedColor"; type: "QColor"; isReadonly: true } Property { name: "checkMarkColor"; type: "QColor"; isReadonly: true } } Component { prototype: "QQuickRectangle" name: "QtQuick.Controls.Material.impl/RadioIndicator 2.0" exports: ["QtQuick.Controls.Material.impl/RadioIndicator 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "control"; type: "QQuickItem"; isPointer: true } } Component { prototype: "QQuickRectangle" name: "QtQuick.Controls.Universal.impl/RadioIndicator 2.0" exports: ["QtQuick.Controls.Universal.impl/RadioIndicator 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "control"; type: "QVariant" } } Component { prototype: "QQuickRangeSlider" name: "QtQuick.Controls/RangeSlider 2.0" exports: ["QtQuick.Controls/RangeSlider 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickItem" name: "QtQuick.Controls.Material.impl/RectangularGlow 2.0" exports: ["QtQuick.Controls.Material.impl/RectangularGlow 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "glowRadius"; type: "double" } Property { name: "spread"; type: "double" } Property { name: "color"; type: "QColor" } Property { name: "cornerRadius"; type: "double" } Property { name: "cached"; type: "bool" } } Component { prototype: "QQuickRoundButton" name: "QtQuick.Controls/RoundButton 2.1" exports: ["QtQuick.Controls/RoundButton 2.1"] exportMetaObjectRevisions: [1] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickScrollBar" name: "QtQuick.Controls/ScrollBar 2.0" exports: ["QtQuick.Controls/ScrollBar 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickScrollIndicator" name: "QtQuick.Controls/ScrollIndicator 2.0" exports: ["QtQuick.Controls/ScrollIndicator 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickScrollView" name: "QtQuick.Controls/ScrollView 2.2" exports: ["QtQuick.Controls/ScrollView 2.2"] exportMetaObjectRevisions: [2] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickPage" name: "org.kde.kirigami/ScrollablePage 2.0" exports: ["org.kde.kirigami/ScrollablePage 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "mainItem" Property { name: "mainItem"; type: "QObject"; isPointer: true } Property { name: "keyboardNavigationEnabled"; type: "bool" } Property { name: "refreshing"; type: "bool" } Property { name: "supportsRefreshing"; type: "bool" } Property { name: "flickable"; type: "QQuickFlickable"; isPointer: true } Property { name: "verticalScrollBarPolicy"; type: "int" } Property { name: "horizontalScrollBarPolicy"; type: "int" } Property { name: "isCurrentPage"; type: "bool"; isReadonly: true } Property { name: "contextualActions"; type: "QObject"; isList: true; isReadonly: true } Property { name: "mainAction"; type: "QObject"; isPointer: true } Property { name: "leftAction"; type: "QObject"; isPointer: true } Property { name: "rightAction"; type: "QObject"; isPointer: true } Property { name: "actions" type: "PageActionPropertyGroup_QMLTYPE_3" isReadonly: true isPointer: true } Signal { name: "backRequested" Parameter { name: "event"; type: "QVariant" } } } Component { prototype: "QQuickRectangle" name: "org.kde.kirigami/Separator 2.0" exports: ["org.kde.kirigami/Separator 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickSlider" name: "QtQuick.Controls/Slider 2.0" exports: ["QtQuick.Controls/Slider 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickRectangle" name: "QtQuick.Controls.Fusion.impl/SliderGroove 2.3" exports: ["QtQuick.Controls.Fusion.impl/SliderGroove 2.3"] exportMetaObjectRevisions: [3] isComposite: true defaultProperty: "data" Property { name: "control"; type: "QQuickItem"; isPointer: true } Property { name: "offset"; type: "double" } Property { name: "progress"; type: "double" } Property { name: "visualProgress"; type: "double" } } Component { prototype: "QQuickItem" name: "QtQuick.Controls.Material.impl/SliderHandle 2.0" exports: ["QtQuick.Controls.Material.impl/SliderHandle 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "value"; type: "double" } Property { name: "handleHasFocus"; type: "bool" } Property { name: "handlePressed"; type: "bool" } Property { name: "handleHovered"; type: "bool" } Property { name: "initialSize"; type: "int"; isReadonly: true } Property { name: "control"; type: "QVariant"; isReadonly: true } } Component { prototype: "QQuickRectangle" name: "QtQuick.Controls.Fusion.impl/SliderHandle 2.3" exports: ["QtQuick.Controls.Fusion.impl/SliderHandle 2.3"] exportMetaObjectRevisions: [3] isComposite: true defaultProperty: "data" Property { name: "palette"; type: "QVariant" } Property { name: "pressed"; type: "bool" } Property { name: "hovered"; type: "bool" } Property { name: "vertical"; type: "bool" } Property { name: "visualFocus"; type: "bool" } } Component { prototype: "QQuickSpinBox" name: "QtQuick.Controls/SpinBox 2.0" exports: ["QtQuick.Controls/SpinBox 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickStackView" name: "QtQuick.Controls/StackView 2.0" exports: ["QtQuick.Controls/StackView 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickFocusScope" name: "QtQuick.Extras/StatusIndicator 1.0" exports: ["QtQuick.Extras/StatusIndicator 1.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "active"; type: "bool" } Property { name: "color"; type: "QColor" } Property { name: "on"; type: "bool" } Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__style"; type: "QObject"; isPointer: true } Property { name: "__panel"; type: "QQuickItem"; isPointer: true } Property { name: "styleHints"; type: "QVariant" } Property { name: "__styleData"; type: "QObject"; isPointer: true } } Component { prototype: "QQuickFocusScope" name: "QtQuick.Extras/StatusIndicator 1.1" exports: ["QtQuick.Extras/StatusIndicator 1.1"] exportMetaObjectRevisions: [1] isComposite: true defaultProperty: "data" Property { name: "active"; type: "bool" } Property { name: "color"; type: "QColor" } Property { name: "on"; type: "bool" } Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__style"; type: "QObject"; isPointer: true } Property { name: "__panel"; type: "QQuickItem"; isPointer: true } Property { name: "styleHints"; type: "QVariant" } Property { name: "__styleData"; type: "QObject"; isPointer: true } } Component { prototype: "QQuickSwipeDelegate" name: "QtQuick.Controls/SwipeDelegate 2.0" exports: ["QtQuick.Controls/SwipeDelegate 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickItemDelegate" name: "org.kde.kirigami/SwipeListItem 2.0" exports: ["org.kde.kirigami/SwipeListItem 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "_default" Property { name: "sectionDelegate"; type: "bool" } Property { name: "separatorVisible"; type: "bool" } Property { name: "actions"; type: "Action_QMLTYPE_53"; isList: true; isReadonly: true } Property { name: "textColor"; type: "QColor" } Property { name: "backgroundColor"; type: "QColor" } Property { name: "activeTextColor"; type: "QColor" } Property { name: "activeBackgroundColor"; type: "QColor" } Property { name: "supportsMouseEvents"; type: "bool" } Property { name: "containsMouse"; type: "bool"; isReadonly: true } Property { name: "actionsVisible"; type: "bool" } Property { name: "_default"; type: "QQuickItem"; isPointer: true } } Component { prototype: "QQuickSwipeView" name: "QtQuick.Controls/SwipeView 2.0" exports: ["QtQuick.Controls/SwipeView 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickSwitch" name: "QtQuick.Controls/Switch 2.0" exports: ["QtQuick.Controls/Switch 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickSwitchDelegate" name: "QtQuick.Controls/SwitchDelegate 2.0" exports: ["QtQuick.Controls/SwitchDelegate 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickItem" name: "QtQuick.Controls.Universal.impl/SwitchIndicator 2.0" exports: ["QtQuick.Controls.Universal.impl/SwitchIndicator 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "control"; type: "QQuickItem"; isPointer: true } } Component { prototype: "QQuickRectangle" name: "QtQuick.Controls.Fusion.impl/SwitchIndicator 2.3" exports: ["QtQuick.Controls.Fusion.impl/SwitchIndicator 2.3"] exportMetaObjectRevisions: [3] isComposite: true defaultProperty: "data" Property { name: "control"; type: "QQuickItem"; isPointer: true } Property { name: "pressedColor"; type: "QColor"; isReadonly: true } Property { name: "checkMarkColor"; type: "QColor"; isReadonly: true } } Component { prototype: "QQuickItem" name: "QtQuick.Controls.Material.impl/SwitchIndicator 2.0" exports: ["QtQuick.Controls.Material.impl/SwitchIndicator 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "control"; type: "QQuickItem"; isPointer: true } Property { name: "handle"; type: "QQuickRectangle"; isReadonly: true; isPointer: true } } Component { prototype: "QQuickTabBar" name: "QtQuick.Controls/TabBar 2.0" exports: ["QtQuick.Controls/TabBar 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickTabButton" name: "QtQuick.Controls/TabButton 2.0" exports: ["QtQuick.Controls/TabButton 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickTextArea" name: "QtQuick.Controls/TextArea 2.0" exports: ["QtQuick.Controls/TextArea 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickTextField" name: "QtQuick.Controls/TextField 2.0" exports: ["QtQuick.Controls/TextField 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickText" name: "QtQuick.Extras.Private/TextSingleton 1.0" exports: ["QtQuick.Extras.Private/TextSingleton 1.0"] exportMetaObjectRevisions: [0] isComposite: true isCreatable: false isSingleton: true defaultProperty: "data" } Component { prototype: "QObject" name: "org.kde.kirigami/Theme 2.0" exports: ["org.kde.kirigami/Theme 2.0"] exportMetaObjectRevisions: [0] isComposite: true isCreatable: false isSingleton: true Property { name: "textColor"; type: "QColor" } Property { name: "disabledTextColor"; type: "QColor" } Property { name: "highlightColor"; type: "QColor" } Property { name: "highlightedTextColor"; type: "QColor" } Property { name: "backgroundColor"; type: "QColor" } Property { name: "activeTextColor"; type: "QColor" } Property { name: "linkColor"; type: "QColor" } Property { name: "visitedLinkColor"; type: "QColor" } Property { name: "hoverColor"; type: "QColor" } Property { name: "focusColor"; type: "QColor" } Property { name: "negativeTextColor"; type: "QColor" } Property { name: "neutralTextColor"; type: "QColor" } Property { name: "positiveTextColor"; type: "QColor" } Property { name: "buttonTextColor"; type: "QColor" } Property { name: "buttonBackgroundColor"; type: "QColor" } Property { name: "buttonHoverColor"; type: "QColor" } Property { name: "buttonFocusColor"; type: "QColor" } Property { name: "viewTextColor"; type: "QColor" } Property { name: "viewBackgroundColor"; type: "QColor" } Property { name: "viewHoverColor"; type: "QColor" } Property { name: "viewFocusColor"; type: "QColor" } Property { name: "selectionTextColor"; type: "QColor" } Property { name: "selectionBackgroundColor"; type: "QColor" } Property { name: "selectionHoverColor"; type: "QColor" } Property { name: "selectionFocusColor"; type: "QColor" } Property { name: "tooltipTextColor"; type: "QColor" } Property { name: "tooltipBackgroundColor"; type: "QColor" } Property { name: "tooltipHoverColor"; type: "QColor" } Property { name: "tooltipFocusColor"; type: "QColor" } Property { name: "complementaryTextColor"; type: "QColor" } Property { name: "complementaryBackgroundColor"; type: "QColor" } Property { name: "complementaryHoverColor"; type: "QColor" } Property { name: "complementaryFocusColor"; type: "QColor" } Property { name: "defaultFont"; type: "QFont" } Property { name: "children"; type: "QObject"; isList: true; isReadonly: true } Method { name: "__propagateColorSet" type: "QVariant" Parameter { name: "object"; type: "QVariant" } Parameter { name: "context"; type: "QVariant" } } Method { name: "__propagateTextColor" type: "QVariant" Parameter { name: "object"; type: "QVariant" } Parameter { name: "color"; type: "QVariant" } } Method { name: "__propagateBackgroundColor" type: "QVariant" Parameter { name: "object"; type: "QVariant" } Parameter { name: "color"; type: "QVariant" } } Method { name: "__propagatePrimaryColor" type: "QVariant" Parameter { name: "object"; type: "QVariant" } Parameter { name: "color"; type: "QVariant" } } Method { name: "__propagateAccentColor" type: "QVariant" Parameter { name: "object"; type: "QVariant" } Parameter { name: "color"; type: "QVariant" } } } Component { prototype: "QQuickFocusScope" name: "QtQuick.Extras/ToggleButton 1.0" exports: ["QtQuick.Extras/ToggleButton 1.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" Property { name: "isDefault"; type: "bool" } Property { name: "menu"; type: "Menu_QMLTYPE_126"; isPointer: true } Property { name: "checkable"; type: "bool" } Property { name: "checked"; type: "bool" } Property { name: "exclusiveGroup"; type: "QQuickExclusiveGroup1"; isPointer: true } Property { name: "action"; type: "QQuickAction1"; isPointer: true } Property { name: "activeFocusOnPress"; type: "bool" } Property { name: "text"; type: "string" } Property { name: "tooltip"; type: "string" } Property { name: "iconSource"; type: "QUrl" } Property { name: "iconName"; type: "string" } Property { name: "__position"; type: "string" } Property { name: "__iconOverriden"; type: "bool"; isReadonly: true } Property { name: "__action"; type: "QQuickAction1"; isPointer: true } Property { name: "__iconAction"; type: "QQuickAction1"; isReadonly: true; isPointer: true } Property { name: "__behavior"; type: "QVariant" } Property { name: "__effectivePressed"; type: "bool" } Property { name: "pressed"; type: "bool"; isReadonly: true } Property { name: "hovered"; type: "bool"; isReadonly: true } Signal { name: "clicked" } Method { name: "accessiblePressAction"; type: "QVariant" } Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__style"; type: "QObject"; isPointer: true } Property { name: "__panel"; type: "QQuickItem"; isPointer: true } Property { name: "styleHints"; type: "QVariant" } Property { name: "__styleData"; type: "QObject"; isPointer: true } } Component { prototype: "QQuickToolBar" name: "QtQuick.Controls/ToolBar 2.0" exports: ["QtQuick.Controls/ToolBar 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickItem" name: "org.kde.kirigami/ToolBarApplicationHeader 2.0" exports: ["org.kde.kirigami/ToolBarApplicationHeader 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentItem" Property { name: "_internal"; type: "string" } Property { name: "headerStyle"; type: "int" } Property { name: "backButtonEnabled"; type: "bool" } Property { name: "pageDelegate"; type: "QQmlComponent"; isPointer: true } Property { name: "minimumHeight"; type: "int" } Property { name: "preferredHeight"; type: "int" } Property { name: "maximumHeight"; type: "int" } Property { name: "pageRow"; type: "PageRow_QMLTYPE_5"; isPointer: true } Property { name: "page"; type: "Page_QMLTYPE_14"; isPointer: true } Property { name: "paintedHeight"; type: "int"; isReadonly: true } Property { name: "leftPadding"; type: "int" } Property { name: "topPadding"; type: "int" } Property { name: "rightPadding"; type: "int" } Property { name: "bottomPadding"; type: "int" } Property { name: "separatorVisible"; type: "bool" } Property { name: "__appWindow"; type: "QObject"; isPointer: true } Property { name: "background"; type: "QQuickItem"; isPointer: true } Property { name: "contentItem"; type: "QObject"; isList: true; isReadonly: true } } Component { prototype: "QQuickToolButton" name: "QtQuick.Controls/ToolButton 2.0" exports: ["QtQuick.Controls/ToolButton 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickToolSeparator" name: "QtQuick.Controls/ToolSeparator 2.1" exports: ["QtQuick.Controls/ToolSeparator 2.1"] exportMetaObjectRevisions: [1] isComposite: true defaultProperty: "data" } Component { prototype: "QQuickToolTip" name: "QtQuick.Controls/ToolTip 2.0" exports: ["QtQuick.Controls/ToolTip 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "contentData" } Component { prototype: "QQuickFocusScope" name: "QtQuick.Extras/Tumbler 1.2" exports: ["QtQuick.Extras/Tumbler 1.2"] exportMetaObjectRevisions: [2] isComposite: true defaultProperty: "data" Property { name: "__highlightMoveDuration"; type: "int" } Property { name: "columnCount"; type: "int"; isReadonly: true } Property { name: "__columnRow"; type: "QQuickRow"; isReadonly: true; isPointer: true } Property { name: "__movementDelayTimer"; type: "QQmlTimer"; isReadonly: true; isPointer: true } Method { name: "__isValidColumnIndex" type: "QVariant" Parameter { name: "index"; type: "QVariant" } } Method { name: "__isValidColumnAndItemIndex" type: "QVariant" Parameter { name: "columnIndex"; type: "QVariant" } Parameter { name: "itemIndex"; type: "QVariant" } } Method { name: "currentIndexAt" type: "QVariant" Parameter { name: "columnIndex"; type: "QVariant" } } Method { name: "setCurrentIndexAt" type: "QVariant" Parameter { name: "columnIndex"; type: "QVariant" } Parameter { name: "itemIndex"; type: "QVariant" } Parameter { name: "interval"; type: "QVariant" } } Method { name: "getColumn" type: "QVariant" Parameter { name: "columnIndex"; type: "QVariant" } } Method { name: "addColumn" type: "QVariant" Parameter { name: "column"; type: "QVariant" } } Method { name: "insertColumn" type: "QVariant" Parameter { name: "index"; type: "QVariant" } Parameter { name: "column"; type: "QVariant" } } Method { name: "__viewAt" type: "QVariant" Parameter { name: "index"; type: "QVariant" } } Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__style"; type: "QObject"; isPointer: true } Property { name: "__panel"; type: "QQuickItem"; isPointer: true } Property { name: "styleHints"; type: "QVariant" } Property { name: "__styleData"; type: "QObject"; isPointer: true } } Component { prototype: "QQuickTumbler" name: "QtQuick.Controls/Tumbler 2.0" exports: ["QtQuick.Controls/Tumbler 2.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" } Component { prototype: "QObject" name: "QtQuick.Extras/TumblerColumn 1.2" exports: ["QtQuick.Extras/TumblerColumn 1.2"] exportMetaObjectRevisions: [2] isComposite: true Property { name: "__tumbler"; type: "QQuickItem"; isPointer: true } Property { name: "__index"; type: "int" } Property { name: "__currentIndex"; type: "int" } Property { name: "model"; type: "QVariant" } Property { name: "role"; type: "string" } Property { name: "delegate"; type: "QQmlComponent"; isPointer: true } Property { name: "highlight"; type: "QQmlComponent"; isPointer: true } Property { name: "columnForeground"; type: "QQmlComponent"; isPointer: true } Property { name: "visible"; type: "bool" } Property { name: "activeFocus"; type: "bool"; isReadonly: true } Property { name: "width"; type: "double" } Property { name: "currentIndex"; type: "int"; isReadonly: true } } Component { prototype: "QObject" name: "org.kde.kirigami/Units 2.0" exports: ["org.kde.kirigami/Units 2.0"] exportMetaObjectRevisions: [0] isComposite: true isCreatable: false isSingleton: true Property { name: "gridUnit"; type: "int" } Property { name: "iconSizes"; type: "QObject"; isPointer: true } Property { name: "smallSpacing"; type: "int" } Property { name: "largeSpacing"; type: "int" } Property { name: "devicePixelRatio"; type: "double" } Property { name: "longDuration"; type: "int" } Property { name: "shortDuration"; type: "int" } Property { name: "toolTipDelay"; type: "int" } Property { name: "wheelScrollLines"; type: "int"; isReadonly: true } Property { name: "fontMetrics"; type: "QVariant" } } } diff --git a/src/kirigamiplugin.cpp b/src/kirigamiplugin.cpp index 018fcd79..026fe9c4 100644 --- a/src/kirigamiplugin.cpp +++ b/src/kirigamiplugin.cpp @@ -1,200 +1,203 @@ /* * Copyright 2009 by Alan Alpert * Copyright 2010 by Ménard Alexis * Copyright 2010 by Marco Martin * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Library General Public License as * published by the Free Software Foundation; either version 2, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Library General Public License for more details * * You should have received a copy of the GNU Library General Public * License along with this program; if not, write to the * Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "kirigamiplugin.h" #include "columnview.h" #include "enums.h" #include "icon.h" #include "settings.h" #include "formlayoutattached.h" #include "mnemonicattached.h" #include "delegaterecycler.h" #include "scenepositionattached.h" #include "wheelhandler.h" #include #include #include #include #include "libkirigami/platformtheme.h" static QString s_selectedStyle; //Q_INIT_RESOURCE(kirigami); #ifdef KIRIGAMI_BUILD_TYPE_STATIC #include #endif QUrl KirigamiPlugin::componentUrl(const QString &fileName) const { for (const QString &style : qAsConst(m_stylesFallbackChain)) { const QString candidate = QStringLiteral("styles/") + style + QLatin1Char('/') + fileName; if (QFile::exists(resolveFilePath(candidate))) { #ifdef KIRIGAMI_BUILD_TYPE_STATIC return QUrl(QStringLiteral("qrc:/org/kde/kirigami/styles/") + style + QLatin1Char('/') + fileName); #else return QUrl(resolveFileUrl(candidate)); #endif } } #ifdef KIRIGAMI_BUILD_TYPE_STATIC return QUrl(QStringLiteral("qrc:/org/kde/kirigami/") + fileName); #else return QUrl(resolveFileUrl(fileName)); #endif } void KirigamiPlugin::registerTypes(const char *uri) { Q_ASSERT(QLatin1String(uri) == QLatin1String("org.kde.kirigami")); const QString style = QQuickStyle::name(); if (QIcon::themeName().isEmpty() && !qEnvironmentVariableIsSet("XDG_CURRENT_DESKTOP")) { QIcon::setThemeSearchPaths({resolveFilePath(QStringLiteral(".")), QStringLiteral(":/icons")}); QIcon::setThemeName(QStringLiteral("breeze-internal")); } #if !defined(Q_OS_ANDROID) && !defined(Q_OS_IOS) //org.kde.desktop.plasma is a couple of files that fall back to desktop by purpose if ((style.isEmpty() || style == QStringLiteral("org.kde.desktop.plasma")) && QFile::exists(resolveFilePath(QStringLiteral("/styles/org.kde.desktop")))) { m_stylesFallbackChain.prepend(QStringLiteral("org.kde.desktop")); } #elif defined(Q_OS_ANDROID) if (!m_stylesFallbackChain.contains(QLatin1String("Material"))) { m_stylesFallbackChain.prepend(QStringLiteral("Material")); } #else // do we have an iOS specific style? if (!m_stylesFallbackChain.contains(QLatin1String("Material"))) { m_stylesFallbackChain.prepend(QStringLiteral("Material")); } #endif if (!style.isEmpty() && QFile::exists(resolveFilePath(QStringLiteral("/styles/") + style)) && !m_stylesFallbackChain.contains(style)) { m_stylesFallbackChain.prepend(style); //if we have plasma deps installed, use them for extra integration if (style == QStringLiteral("org.kde.desktop") && QFile::exists(resolveFilePath(QStringLiteral("/styles/org.kde.desktop.plasma")))) { m_stylesFallbackChain.prepend(QStringLiteral("org.kde.desktop.plasma")); } } else { #if !defined(Q_OS_ANDROID) && !defined(Q_OS_IOS) m_stylesFallbackChain.prepend(QStringLiteral("org.kde.desktop")); #endif } //At this point the fallback chain will be selected->org.kde.desktop->Fallback s_selectedStyle = m_stylesFallbackChain.first(); qmlRegisterSingletonType(uri, 2, 0, "Settings", [](QQmlEngine *e, QJSEngine*) -> QObject* { Settings *settings = Settings::self(); //singleton managed internally, qml should never delete it e->setObjectOwnership(settings, QQmlEngine::CppOwnership); settings->setStyle(s_selectedStyle); return settings; } ); qmlRegisterUncreatableType(uri, 2, 0, "ApplicationHeaderStyle", QStringLiteral("Cannot create objects of type ApplicationHeaderStyle")); //old legacy retrocompatible Theme qmlRegisterSingletonType(componentUrl(QStringLiteral("Theme.qml")), uri, 2, 0, "Theme"); qmlRegisterSingletonType(componentUrl(QStringLiteral("Units.qml")), uri, 2, 0, "Units"); qmlRegisterType(componentUrl(QStringLiteral("Action.qml")), uri, 2, 0, "Action"); qmlRegisterType(componentUrl(QStringLiteral("AbstractApplicationHeader.qml")), uri, 2, 0, "AbstractApplicationHeader"); qmlRegisterType(componentUrl(QStringLiteral("AbstractApplicationWindow.qml")), uri, 2, 0, "AbstractApplicationWindow"); qmlRegisterType(componentUrl(QStringLiteral("AbstractListItem.qml")), uri, 2, 0, "AbstractListItem"); qmlRegisterType(componentUrl(QStringLiteral("ApplicationHeader.qml")), uri, 2, 0, "ApplicationHeader"); qmlRegisterType(componentUrl(QStringLiteral("ToolBarApplicationHeader.qml")), uri, 2, 0, "ToolBarApplicationHeader"); qmlRegisterType(componentUrl(QStringLiteral("ApplicationWindow.qml")), uri, 2, 0, "ApplicationWindow"); qmlRegisterType(componentUrl(QStringLiteral("BasicListItem.qml")), uri, 2, 0, "BasicListItem"); qmlRegisterType(componentUrl(QStringLiteral("OverlayDrawer.qml")), uri, 2, 0, "OverlayDrawer"); qmlRegisterType(componentUrl(QStringLiteral("ContextDrawer.qml")), uri, 2, 0, "ContextDrawer"); qmlRegisterType(componentUrl(QStringLiteral("GlobalDrawer.qml")), uri, 2, 0, "GlobalDrawer"); qmlRegisterType(componentUrl(QStringLiteral("Heading.qml")), uri, 2, 0, "Heading"); qmlRegisterType(componentUrl(QStringLiteral("Separator.qml")), uri, 2, 0, "Separator"); qmlRegisterType(componentUrl(QStringLiteral("PageRow.qml")), uri, 2, 0, "PageRow"); qmlRegisterType(uri, 2, 0, "Icon"); qmlRegisterType(componentUrl(QStringLiteral("Label.qml")), uri, 2, 0, "Label"); //TODO: uncomment for 2.3 release //qmlRegisterTypeNotAvailable(uri, 2, 3, "Label", "Label type not supported anymore, use QtQuick.Controls.Label 2.0 instead"); qmlRegisterType(componentUrl(QStringLiteral("OverlaySheet.qml")), uri, 2, 0, "OverlaySheet"); qmlRegisterType(componentUrl(QStringLiteral("Page.qml")), uri, 2, 0, "Page"); qmlRegisterType(componentUrl(QStringLiteral("ScrollablePage.qml")), uri, 2, 0, "ScrollablePage"); qmlRegisterType(componentUrl(QStringLiteral("SplitDrawer.qml")), uri, 2, 0, "SplitDrawer"); qmlRegisterType(componentUrl(QStringLiteral("SwipeListItem.qml")), uri, 2, 0, "SwipeListItem"); //2.1 qmlRegisterType(componentUrl(QStringLiteral("AbstractItemViewHeader.qml")), uri, 2, 1, "AbstractItemViewHeader"); qmlRegisterType(componentUrl(QStringLiteral("ItemViewHeader.qml")), uri, 2, 1, "ItemViewHeader"); qmlRegisterType(componentUrl(QStringLiteral("AbstractApplicationItem.qml")), uri, 2, 1, "AbstractApplicationItem"); qmlRegisterType(componentUrl(QStringLiteral("ApplicationItem.qml")), uri, 2, 1, "ApplicationItem"); //2.2 //Theme changed from a singleton to an attached property qmlRegisterUncreatableType(uri, 2, 2, "Theme", QStringLiteral("Cannot create objects of type Theme, use it as an attached property")); //2.3 qmlRegisterType(componentUrl(QStringLiteral("FormLayout.qml")), uri, 2, 3, "FormLayout"); qmlRegisterUncreatableType(uri, 2, 3, "FormData", QStringLiteral("Cannot create objects of type FormData, use it as an attached property")); qmlRegisterUncreatableType(uri, 2, 3, "MnemonicData", QStringLiteral("Cannot create objects of type MnemonicData, use it as an attached property")); //2.4 qmlRegisterType(componentUrl(QStringLiteral("AbstractCard.qml")), uri, 2, 4, "AbstractCard"); qmlRegisterType(componentUrl(QStringLiteral("Card.qml")), uri, 2, 4, "Card"); qmlRegisterType(componentUrl(QStringLiteral("CardsListView.qml")), uri, 2, 4, "CardsListView"); qmlRegisterType(componentUrl(QStringLiteral("CardsGridView.qml")), uri, 2, 4, "CardsGridView"); qmlRegisterType(componentUrl(QStringLiteral("CardsLayout.qml")), uri, 2, 4, "CardsLayout"); qmlRegisterType(componentUrl(QStringLiteral("InlineMessage.qml")), uri, 2, 4, "InlineMessage"); qmlRegisterUncreatableType(uri, 2, 4, "MessageType", QStringLiteral("Cannot create objects of type MessageType")); qmlRegisterType(uri, 2, 4, "DelegateRecycler"); //2.5 qmlRegisterType(componentUrl(QStringLiteral("ListItemDragHandle.qml")), uri, 2, 5, "ListItemDragHandle"); qmlRegisterType(componentUrl(QStringLiteral("ActionToolBar.qml")), uri, 2, 5, "ActionToolBar"); qmlRegisterUncreatableType(uri, 2, 5, "ScenePosition", QStringLiteral("Cannot create objects of type ScenePosition, use it as an attached property")); //2.6 qmlRegisterType(componentUrl(QStringLiteral("AboutPage.qml")), uri, 2, 6, "AboutPage"); qmlRegisterType(componentUrl(QStringLiteral("LinkButton.qml")), uri, 2, 6, "LinkButton"); qmlRegisterType(componentUrl(QStringLiteral("UrlButton.qml")), uri, 2, 6, "UrlButton"); //2.7 qmlRegisterType(uri, 2, 7, "ColumnView"); qmlRegisterType(componentUrl(QStringLiteral("ActionTextField.qml")), uri, 2, 7, "ActionTextField"); //2.8 qmlRegisterType(componentUrl(QStringLiteral("SearchField.qml")), uri, 2, 8, "SearchField"); qmlRegisterType(componentUrl(QStringLiteral("PasswordField.qml")), uri, 2, 8, "PasswordField"); //2.9 qmlRegisterType(uri, 2, 9, "WheelHandler"); qmlRegisterUncreatableType(uri, 2, 9, "WheelEvent", QStringLiteral("Cannot create objects of type WheelEvent.")); + //2.10 + qmlRegisterType(componentUrl(QStringLiteral("ListSectionHeader.qml")), uri, 2, 10, "ListSectionHeader"); + qmlProtectModule(uri, 2); } #include "moc_kirigamiplugin.cpp" diff --git a/src/qmldir b/src/qmldir index 739673b6..f52950ed 100644 --- a/src/qmldir +++ b/src/qmldir @@ -1,52 +1,53 @@ module org.kde.kirigami classname KirigamiPlugin depends QtQuick.Controls 2.0 depends QtGraphicalEffects 1.0 designersupported typeinfo plugins.qmltypes singleton Theme 2.2 Theme.qml OverlaySheet 2.5 OverlaySheet.qml ApplicationItem 2.1 ApplicationItem.qml AbstractApplicationWindow 2.5 AbstractApplicationWindow.qml FormLayout 2.5 FormLayout.qml GlobalDrawer 2.5 GlobalDrawer.qml OverlayDrawer 2.5 OverlayDrawer.qml BasicListItem 2.5 BasicListItem.qml AbstractItemViewHeader 2.1 AbstractItemViewHeader.qml Heading 2.5 Heading.qml Action 2.5 Action.qml Separator 2.5 Separator.qml ItemViewHeader 2.1 ItemViewHeader.qml SwipeListItem 2.5 SwipeListItem.qml AbstractListItem 2.5 AbstractListItem.qml Icon 2.5 Icon.qml Units 2.5 Units.qml Page 2.5 Page.qml Label 2.5 Label.qml AbstractApplicationItem 2.1 AbstractApplicationItem.qml ToolBarApplicationHeader 2.5 ToolBarApplicationHeader.qml ScrollablePage 2.5 ScrollablePage.qml ApplicationHeader 2.5 ApplicationHeader.qml AbstractApplicationHeader 2.5 AbstractApplicationHeader.qml ContextDrawer 2.5 ContextDrawer.qml ApplicationWindow 2.5 ApplicationWindow.qml PageRow 2.5 PageRow.qml AbstractCard 2.5 AbstractCard.qml Card 2.5 Card.qml CardsLayout 2.5 CardsLayout.qml CardsListView 2.5 CardsListView.qml CardsGridView 2.5 CardsGridView.qml InlineMessage 2.5 InlineMessage.qml ListItemDragHandle 2.5 ListItemDragHandle.qml ActionToolBar 2.5 ActionToolBar.qml BannerImage 2.5 private/BannerImage.qml AboutPage 2.6 AboutPage.qml UrlButton 2.6 UrlButton.qml LinkButton 2.6 LinkButton.qml ActionTextField 2.7 ActionTextField.qml SearchField 2.8 SearchField.qml PasswordField 2.8 PasswordField.qml +ListSectionHeader 2.10 ListSectionHeader.qml