From f770dbe9d38214a37e12adb591498dcd1ad0293e Mon Sep 17 00:00:00 2001 From: Richard Moe Gustavsen Date: Fri, 28 Aug 2015 13:37:31 +0200 Subject: iOS: add shortcuts to edit menu items On iOS, the virtual keyboard contains buttons for standard edit actions like cut, copy and paste. When triggered, we send key events that corresponds to the shortcut sequence for those actions. With this patch, you can then trigger the menu items directly from the virtual keyboard. Change-Id: I350f74942b9ae443387bb253aeafa053e7544f7e Reviewed-by: J-P Nurmi --- src/controls/Private/EditMenu_ios.qml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/controls/Private/EditMenu_ios.qml b/src/controls/Private/EditMenu_ios.qml index 7b0787f0..94c4617a 100644 --- a/src/controls/Private/EditMenu_ios.qml +++ b/src/controls/Private/EditMenu_ios.qml @@ -34,8 +34,8 @@ ** ****************************************************************************/ -import QtQuick 2.1 -import QtQuick.Controls 1.1 +import QtQuick 2.2 +import QtQuick.Controls 1.2 import QtQuick.Controls.Styles 1.1 import QtQuick.Controls.Private 1.0 @@ -46,6 +46,7 @@ Item { property Component defaultMenu: Menu { MenuItem { text: qsTr("Cut") + shortcut: StandardKey.Cut visible: !input.readOnly && selectionStart !== selectionEnd onTriggered: { cut(); @@ -54,6 +55,7 @@ Item { } MenuItem { text: qsTr("Copy") + shortcut: StandardKey.Copy visible: selectionStart !== selectionEnd onTriggered: { copy(); @@ -62,21 +64,25 @@ Item { } MenuItem { text: qsTr("Paste") + shortcut: StandardKey.Paste visible: input.canPaste onTriggered: paste(); } MenuItem { text: qsTr("Delete") + shortcut: StandardKey.Delete visible: !input.readOnly && selectionStart !== selectionEnd onTriggered: remove(selectionStart, selectionEnd) } MenuItem { text: qsTr("Select") + shortcut: StandardKey.Select visible: selectionStart === selectionEnd && input.length > 0 onTriggered: selectWord(); } MenuItem { text: qsTr("Select All") + shortcut: StandardKey.SelectAll visible: !(selectionStart === 0 && selectionEnd === length) onTriggered: selectAll(); } -- cgit v1.2.1 From 1c6a510c16b35c937af202f517604620b4a97ff0 Mon Sep 17 00:00:00 2001 From: Mitch Curtis Date: Mon, 7 Sep 2015 13:28:15 +0200 Subject: Button: only enable mnemonic if button itself is enabled. Otherwise users can trigger shortcuts even when buttons are disabled. Change-Id: If97c6a3c3df574a4271c53cf7bcfd8fdb1a059d6 Task-number: QTBUG-48144 Reviewed-by: J-P Nurmi --- src/controls/Private/BasicButton.qml | 1 + tests/auto/controls/data/tst_button.qml | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/src/controls/Private/BasicButton.qml b/src/controls/Private/BasicButton.qml index 5de95aa9..1756a296 100644 --- a/src/controls/Private/BasicButton.qml +++ b/src/controls/Private/BasicButton.qml @@ -146,6 +146,7 @@ Control { Action { id: ownAction + enabled: button.enabled iconSource: !button.action || __iconOverriden ? button.iconSource : "" iconName: !button.action || __iconOverriden ? button.iconName : "" diff --git a/tests/auto/controls/data/tst_button.qml b/tests/auto/controls/data/tst_button.qml index 136f82cc..0d226ffc 100644 --- a/tests/auto/controls/data/tst_button.qml +++ b/tests/auto/controls/data/tst_button.qml @@ -40,6 +40,7 @@ import QtQuick 2.2 import QtTest 1.0 +import QtQuick.Controls 1.4 import QtQuickControlsTests 1.0 Item { @@ -278,5 +279,26 @@ TestCase { button.destroy() } + + Component { + id: mnemonicButtonComponent + + Button { + text: "&Hi" + enabled: false + } + } + + function test_mnemonic() { + var button = mnemonicButtonComponent.createObject(container); + verify(button); + + clickSpy.clear(); + clickSpy.target = button; + keyClick(Qt.Key_H, Qt.AltModifier); + compare(clickSpy.count, 0); + + button.destroy(); + } } } -- cgit v1.2.1 From f3872ba9435457f3415bbe1fe09b9b9b7555ca57 Mon Sep 17 00:00:00 2001 From: Richard Moe Gustavsen Date: Wed, 9 Sep 2015 11:05:50 +0200 Subject: Flat style: set correct classname to enable static linking The classname in qmldir needs to match the name of the c++ class that represents the plugin. Otherwise qmlimportscanner will be confused. Task-number: QTBUG-47489 Change-Id: Iac56803127cad7bf072f29c611936df16dcf32d4 Reviewed-by: Mitch Curtis --- src/extras/Styles/Flat/qmldir | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/extras/Styles/Flat/qmldir b/src/extras/Styles/Flat/qmldir index 2b6390a4..74a5a967 100644 --- a/src/extras/Styles/Flat/qmldir +++ b/src/extras/Styles/Flat/qmldir @@ -1,3 +1,3 @@ module QtQuick.Controls.Styles.Flat plugin qtquickextrasflatplugin -classname QtQuickExtrasFlatPlugin +classname QtQuickExtrasStylesPlugin -- cgit v1.2.1 From 5e252f9b9ceea72fc1acb5fb41b81abc34cab46d Mon Sep 17 00:00:00 2001 From: Liang Qi Date: Tue, 8 Sep 2015 08:48:31 +0200 Subject: Add changelog for Qt 5.5.1 release Change-Id: Ib94de261355ced4072f8c75c988b62c093a129ca Reviewed-by: Shawn Rutledge --- dist/changes-5.5.1 | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 dist/changes-5.5.1 diff --git a/dist/changes-5.5.1 b/dist/changes-5.5.1 new file mode 100644 index 00000000..da2a6415 --- /dev/null +++ b/dist/changes-5.5.1 @@ -0,0 +1,59 @@ +Qt 5.5.1 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 5.5.0. + +For more details, refer to the online documentation included in this +distribution. The documentation is also available online: + + http://doc.qt.io/qt-5/index.html + +The Qt version 5.5 series is binary compatible with the 5.4.x series. +Applications compiled for 5.4 will continue to run with 5.5. + +Some of the changes listed in this file include issue tracking numbers +corresponding to tasks in the Qt Bug Tracker: + + https://bugreports.qt.io/ + +Each of these identifiers can be entered in the bug tracker to obtain more +information about a particular change. + +**************************************************************************** +* Controls * +**************************************************************************** + + - ComboBox: + * [QTBUG-46611] Fixed the selected text to follow model changes + + - Menu: + * [QTBUG-47092] Fixed popups so that they do not cross screen boundaries + * Made MenuBar, Menu properly accessible + * [QTBUG-47233] Removed native menus from native menubar on destruction + * [QTBUG-45131] Android: fixed hardware menu button to open the options menu + * iOS: added shortcuts to edit menu items + + - TableView: + * [QTBUG-46468] Fixed extra row with headerVisible:false + * [QTBUG-44185] Made sort indicator follow moved columns + + - TextArea: + * [QTBUG-41375] Fixed EditMenu so that it does not clear the text selection + + - TreeView: + * [QTBUG-46891] Fixed to track model indexes during selection + +**************************************************************************** +* Dialogs * +**************************************************************************** + + - General: + * Changed to emit accepted and rejected signals instead of calling accept + and reject. Don't close the dialog by default for Help, Apply, Reset + + - FileDialog: + * [QTBUG-46688] Ensured that options are set early enough + +**************************************************************************** +* Styles * +**************************************************************************** + + - [QTBUG-46960][QTBUG-46881] Fixed some minor issues about Android style -- cgit v1.2.1 From 3799188e704e48ff8e9aa728cd76101b15f21fd2 Mon Sep 17 00:00:00 2001 From: Gabriel de Dietrich Date: Mon, 7 Sep 2015 14:35:47 +0200 Subject: Menu: Schedule popup deletion when it's about to hide This leads to serious memory/OpenGL context leaks on Windows. No such thing has been noticed on Linux which may hint to differences in the backend. Task-number: QTBUG-47682 Change-Id: I274ed98db348ffe2c78707f2c92b812f272c2723 Reviewed-by: Mitch Curtis --- src/controls/Menu.qml | 2 +- src/controls/MenuBar.qml | 2 +- tests/auto/controls/data/tst_combobox.qml | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/controls/Menu.qml b/src/controls/Menu.qml index 7334c28c..0eb0c357 100644 --- a/src/controls/Menu.qml +++ b/src/controls/Menu.qml @@ -150,7 +150,7 @@ MenuPrivate { /*! \internal */ property int __currentIndex: -1 /*! \internal */ - onAboutToHide: __currentIndex = -1 + onAboutToHide: { __currentIndex = -1; __destroyMenuPopup() } on__MenuPopupDestroyed: contentLoader.active = false onPopupVisibleChanged: { if (__popupVisible) diff --git a/src/controls/MenuBar.qml b/src/controls/MenuBar.qml index 0d9f8ee8..be182e29 100644 --- a/src/controls/MenuBar.qml +++ b/src/controls/MenuBar.qml @@ -302,7 +302,7 @@ MenuBarPrivate { anchors.fill: parent hoverEnabled: Settings.hoverEnabled - onPositionChanged: updateCurrentItem(mouse, false) + onPositionChanged: updateCurrentItem(mouse) onPressed: { if (updateCurrentItem(mouse)) { d.preselectMenuItem = false diff --git a/tests/auto/controls/data/tst_combobox.qml b/tests/auto/controls/data/tst_combobox.qml index af1fc9dd..057ff471 100644 --- a/tests/auto/controls/data/tst_combobox.qml +++ b/tests/auto/controls/data/tst_combobox.qml @@ -74,6 +74,7 @@ TestCase { function cleanup() { if (model !== 0) model.destroy() + wait(0) // spin the event loop to get all popups to close } function test_keyupdown() { -- cgit v1.2.1 From 229473ebc5a6c64103565d34e7ada08ecbdcd76d Mon Sep 17 00:00:00 2001 From: Marco Benelli Date: Fri, 28 Aug 2015 16:01:01 +0200 Subject: Updated plugin.qmltypes. Manually edited to fix broken inheritance. The plugin.qmltypes has been regenerate using qmlplugindump in order to include new components. Since we are still missing a working dependency handler, some components (QQuickWindowQmlImpl, QQuickWindow, QWindow) have been manually added, like it was in the previous version. Change-Id: Ie794710de49c248b13ad36a01d5a02b1cb1ecea1 Reviewed-by: Thomas Hartmann --- src/controls/plugins.qmltypes | 2898 ++++++++++++++++++++++------------------- 1 file changed, 1587 insertions(+), 1311 deletions(-) diff --git a/src/controls/plugins.qmltypes b/src/controls/plugins.qmltypes index 616951f0..866ef043 100644 --- a/src/controls/plugins.qmltypes +++ b/src/controls/plugins.qmltypes @@ -1,12 +1,22 @@ -import QtQuick.tooling 1.1 +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 -nonrelocatable QtQuick.Controls 1.3' +// 'qmlplugindump -nonrelocatable QtQuick.Controls 1.4' Module { + dependencies: [ + "QtGraphicalEffects 1.0", + "QtQml.Models 2.2", + "QtQuick 2.5", + "QtQuick.Controls.Styles 1.4", + "QtQuick.Extras 1.4", + "QtQuick.Extras.Private.CppUtils 1.1", + "QtQuick.Layouts 1.1", + "QtQuick.Window 2.2" + ] Component { name: "QQuickAbstractStyle" defaultProperty: "data" @@ -105,6 +115,27 @@ Module { Property { name: "dragThreshold"; type: "double"; isReadonly: true } Property { name: "hasTouchScreen"; type: "bool"; isReadonly: true } Property { name: "isMobile"; type: "bool"; isReadonly: true } + Property { name: "hoverEnabled"; type: "bool"; isReadonly: true } + Method { + name: "styleComponent" + type: "QQmlComponent*" + Parameter { name: "styleDirUrl"; type: "QUrl" } + Parameter { name: "controlStyleName"; type: "string" } + Parameter { name: "control"; type: "QObject"; isPointer: true } + } + } + Component { + name: "QQuickControlsPrivate" + prototype: "QObject" + exports: ["QtQuick.Controls.Private/Controls 1.0"] + isCreatable: false + exportMetaObjectRevisions: [0] + attachedType: "QQuickControlsPrivateAttached" + } + Component { + name: "QQuickControlsPrivateAttached" + prototype: "QObject" + Property { name: "window"; type: "QQuickWindow"; isReadonly: true; isPointer: true } } Component { name: "QQuickExclusiveGroup" @@ -147,12 +178,16 @@ Module { Property { name: "__yOffset"; type: "double" } Property { name: "__action"; type: "QQuickAction"; isReadonly: true; isPointer: true } Property { name: "__popupGeometry"; type: "QRect"; isReadonly: true } - Signal { name: "__menuClosed" } + Signal { name: "aboutToShow" } + Signal { name: "aboutToHide" } Signal { name: "popupVisibleChanged" } + Signal { name: "__menuPopupDestroyed" } Signal { name: "menuContentItemChanged" } Signal { name: "minimumWidthChanged" } Method { name: "__closeMenu" } Method { name: "__dismissMenu" } + Method { name: "__destroyMenuPopup" } + Method { name: "__destroyAllMenuPopups" } Method { name: "popup" } Method { name: "addItem" @@ -386,17 +421,13 @@ Module { Property { name: "maximumDate"; type: "QDate" } } Component { - name: "QQuickRootItem" - defaultProperty: "data" - prototype: "QQuickItem" - Method { - name: "setWidth" - Parameter { name: "w"; type: "int" } - } - Method { - name: "setHeight" - Parameter { name: "h"; type: "int" } - } + name: "QQuickScenePosListener" + prototype: "QObject" + exports: ["QtQuick.Controls.Private/ScenePosListener 1.0"] + exportMetaObjectRevisions: [0] + Property { name: "item"; type: "QQuickItem"; isPointer: true } + Property { name: "scenePos"; type: "QPointF"; isReadonly: true } + Property { name: "enabled"; type: "bool" } } Component { name: "QQuickSelectionMode" @@ -566,6 +597,53 @@ Module { } Method { name: "hideText" } } + Component { + name: "QQuickTreeModelAdaptor" + prototype: "QAbstractListModel" + exports: ["QtQuick.Controls.Private/TreeModelAdaptor 1.0"] + exportMetaObjectRevisions: [0] + Property { name: "model"; type: "QAbstractItemModel"; isPointer: true } + Signal { + name: "modelChanged" + Parameter { name: "model"; type: "QAbstractItemModel"; isPointer: true } + } + Signal { + name: "expanded" + Parameter { name: "index"; type: "QModelIndex" } + } + Signal { + name: "collapsed" + Parameter { name: "index"; type: "QModelIndex" } + } + Method { + name: "expand" + Parameter { type: "QModelIndex" } + } + Method { + name: "collapse" + Parameter { type: "QModelIndex" } + } + Method { + name: "setModel" + Parameter { name: "model"; type: "QAbstractItemModel"; isPointer: true } + } + Method { + name: "mapRowToModelIndex" + type: "QModelIndex" + Parameter { name: "row"; type: "int" } + } + Method { + name: "selectionForRowRange" + type: "QItemSelection" + Parameter { name: "fromIndex"; type: "QModelIndex" } + Parameter { name: "toIndex"; type: "QModelIndex" } + } + Method { + name: "isExpanded" + type: "bool" + Parameter { type: "QModelIndex" } + } + } Component { name: "QQuickWheelArea" defaultProperty: "data" @@ -586,642 +664,332 @@ Module { Signal { name: "horizontalWheelMoved" } } Component { - name: "QQuickWindow" + prototype: "QQuickWindowQmlImpl" + name: "QtQuick.Controls/ApplicationWindow" + exports: ["QtQuick.Controls/ApplicationWindow 1.0"] + exportMetaObjectRevisions: [0] + isComposite: true defaultProperty: "data" - prototype: "QWindow" - Enum { - name: "SceneGraphError" - values: { - "ContextNotAvailable": 1 - } - } + Property { name: "menuBar"; type: "MenuBar_QMLTYPE_3"; isPointer: true } + Property { name: "toolBar"; type: "QQuickItem"; isPointer: true } + Property { name: "statusBar"; type: "QQuickItem"; isPointer: true } + Property { name: "style"; type: "QQmlComponent"; isPointer: true } + Property { name: "__topBottomMargins"; type: "double" } + Property { name: "__qwindowsize_max"; type: "double"; isReadonly: true } + Property { name: "__width"; type: "double" } + Property { name: "__height"; type: "double" } + Property { name: "contentItem"; type: "ContentItem_QMLTYPE_1"; isReadonly: true; isPointer: true } + Property { name: "__style"; type: "QObject"; isReadonly: true; isPointer: true } + Property { name: "__panel"; type: "QObject"; isReadonly: true; isPointer: true } Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "color"; type: "QColor" } - Property { name: "contentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { - name: "activeFocusItem" - revision: 1 - type: "QQuickItem" - isReadonly: true - isPointer: true - } - Signal { name: "frameSwapped" } - Signal { - name: "openglContextCreated" - revision: 2 - Parameter { name: "context"; type: "QOpenGLContext"; isPointer: true } - } - Signal { name: "sceneGraphInitialized" } - Signal { name: "sceneGraphInvalidated" } - Signal { name: "beforeSynchronizing" } - Signal { name: "afterSynchronizing"; revision: 2 } - Signal { name: "beforeRendering" } - Signal { name: "afterRendering" } - Signal { name: "afterAnimating"; revision: 2 } - Signal { name: "sceneGraphAboutToStop"; revision: 2 } - Signal { - name: "closing" - revision: 1 - Parameter { name: "close"; type: "QQuickCloseEvent"; isPointer: true } - } - Signal { - name: "colorChanged" - Parameter { type: "QColor" } - } - Signal { name: "activeFocusItemChanged"; revision: 1 } - Signal { - name: "sceneGraphError" - revision: 2 - Parameter { name: "error"; type: "QQuickWindow::SceneGraphError" } - Parameter { name: "message"; type: "string" } - } - Method { name: "update" } - Method { name: "releaseResources" } } Component { - name: "QWindow" - prototype: "QObject" - Enum { - name: "Visibility" - values: { - "Hidden": 0, - "AutomaticVisibility": 1, - "Windowed": 2, - "Minimized": 3, - "Maximized": 4, - "FullScreen": 5 - } - } - Property { name: "title"; type: "string" } - Property { name: "modality"; type: "Qt::WindowModality" } - Property { name: "flags"; type: "Qt::WindowFlags" } - Property { name: "x"; type: "int" } - Property { name: "y"; type: "int" } - Property { name: "width"; type: "int" } - Property { name: "height"; type: "int" } - Property { name: "minimumWidth"; type: "int" } - Property { name: "minimumHeight"; type: "int" } - Property { name: "maximumWidth"; type: "int" } - Property { name: "maximumHeight"; type: "int" } - Property { name: "visible"; type: "bool" } - Property { name: "active"; revision: 1; type: "bool"; isReadonly: true } - Property { name: "visibility"; revision: 1; type: "Visibility" } - Property { name: "contentOrientation"; type: "Qt::ScreenOrientation" } - Property { name: "opacity"; revision: 1; type: "double" } - Signal { - name: "screenChanged" - Parameter { name: "screen"; type: "QScreen"; isPointer: true } - } - Signal { - name: "modalityChanged" - Parameter { name: "modality"; type: "Qt::WindowModality" } - } - Signal { - name: "windowStateChanged" - Parameter { name: "windowState"; type: "Qt::WindowState" } - } - Signal { - name: "windowTitleChanged" - revision: 2 - Parameter { name: "title"; type: "string" } - } - Signal { - name: "xChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "yChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "widthChanged" - Parameter { name: "arg"; type: "int" } - } + prototype: "QQuickFocusScope" + name: "QtQuick.Controls/BusyIndicator" + exports: ["QtQuick.Controls/BusyIndicator 1.1"] + exportMetaObjectRevisions: [1] + isComposite: true + defaultProperty: "data" + Property { name: "running"; 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.Controls/Button" + exports: ["QtQuick.Controls/Button 1.0"] + exportMetaObjectRevisions: [0] + isComposite: true + defaultProperty: "data" + Property { name: "isDefault"; type: "bool" } + Property { name: "menu"; type: "Menu_QMLTYPE_50"; isPointer: true } + Property { name: "checkable"; type: "bool" } + Property { name: "checked"; type: "bool" } + Property { name: "exclusiveGroup"; type: "QQuickExclusiveGroup"; isPointer: true } + Property { name: "action"; type: "QQuickAction"; 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: "QQuickAction"; isPointer: true } + Property { name: "__iconAction"; type: "QQuickAction"; isReadonly: true; isPointer: true } + Property { name: "__effectivePressed"; type: "bool" } + Property { name: "__behavior"; type: "QVariant" } + 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: "QQuickFocusScope" + name: "QtQuick.Controls/Calendar" + exports: ["QtQuick.Controls/Calendar 1.2"] + exportMetaObjectRevisions: [2] + isComposite: true + defaultProperty: "data" + Property { name: "visibleMonth"; type: "int" } + Property { name: "visibleYear"; type: "int" } + Property { name: "frameVisible"; type: "bool" } + Property { name: "weekNumbersVisible"; type: "bool" } + Property { name: "navigationBarVisible"; type: "bool" } + Property { name: "dayOfWeekFormat"; type: "int" } + Property { name: "__model"; type: "QQuickCalendarModel"; isPointer: true } + Property { name: "__locale"; type: "QVariant" } + Property { name: "selectedDate"; type: "QDate" } + Property { name: "minimumDate"; type: "QDate" } + Property { name: "maximumDate"; type: "QDate" } Signal { - name: "heightChanged" - Parameter { name: "arg"; type: "int" } + name: "hovered" + Parameter { name: "date"; type: "QDateTime" } } Signal { - name: "minimumWidthChanged" - Parameter { name: "arg"; type: "int" } + name: "pressed" + Parameter { name: "date"; type: "QDateTime" } } Signal { - name: "minimumHeightChanged" - Parameter { name: "arg"; type: "int" } + name: "released" + Parameter { name: "date"; type: "QDateTime" } } Signal { - name: "maximumWidthChanged" - Parameter { name: "arg"; type: "int" } + name: "clicked" + Parameter { name: "date"; type: "QDateTime" } } Signal { - name: "maximumHeightChanged" - Parameter { name: "arg"; type: "int" } + name: "doubleClicked" + Parameter { name: "date"; type: "QDateTime" } } Signal { - name: "visibleChanged" - Parameter { name: "arg"; type: "bool" } - } - Signal { - name: "visibilityChanged" - revision: 1 - Parameter { name: "visibility"; type: "QWindow::Visibility" } - } - Signal { name: "activeChanged"; revision: 1 } - Signal { - name: "contentOrientationChanged" - Parameter { name: "orientation"; type: "Qt::ScreenOrientation" } - } - Signal { - name: "focusObjectChanged" - Parameter { name: "object"; type: "QObject"; isPointer: true } - } - Signal { - name: "opacityChanged" - revision: 1 - Parameter { name: "opacity"; type: "double" } - } - Method { name: "requestActivate"; revision: 1 } - Method { - name: "setVisible" - Parameter { name: "visible"; type: "bool" } - } - Method { name: "show" } - Method { name: "hide" } - Method { name: "showMinimized" } - Method { name: "showMaximized" } - Method { name: "showFullScreen" } - Method { name: "showNormal" } - Method { name: "close"; type: "bool" } - Method { name: "raise" } - Method { name: "lower" } - Method { - name: "setTitle" - Parameter { type: "string" } - } - Method { - name: "setX" - Parameter { name: "arg"; type: "int" } - } - Method { - name: "setY" - Parameter { name: "arg"; type: "int" } - } - Method { - name: "setWidth" - Parameter { name: "arg"; type: "int" } - } - Method { - name: "setHeight" - Parameter { name: "arg"; type: "int" } - } - Method { - name: "setMinimumWidth" - Parameter { name: "w"; type: "int" } - } - Method { - name: "setMinimumHeight" - Parameter { name: "h"; type: "int" } - } - Method { - name: "setMaximumWidth" - Parameter { name: "w"; type: "int" } - } - Method { - name: "setMaximumHeight" - Parameter { name: "h"; type: "int" } - } - Method { - name: "alert" - revision: 1 - Parameter { name: "msec"; type: "int" } + name: "pressAndHold" + Parameter { name: "date"; type: "QDateTime" } } + Method { name: "showPreviousMonth"; type: "QVariant" } + Method { name: "showNextMonth"; type: "QVariant" } + Method { name: "showPreviousYear"; type: "QVariant" } + Method { name: "showNextYear"; type: "QVariant" } + Method { name: "__selectPreviousMonth"; type: "QVariant" } + Method { name: "__selectNextMonth"; type: "QVariant" } + Method { name: "__selectPreviousWeek"; type: "QVariant" } + Method { name: "__selectNextWeek"; type: "QVariant" } + Method { name: "__selectFirstDayOfMonth"; type: "QVariant" } + Method { name: "__selectLastDayOfMonth"; type: "QVariant" } + Method { name: "__selectPreviousDay"; type: "QVariant" } + Method { name: "__selectNextDay"; 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 { - name: "QWindow" - prototype: "QObject" - Enum { - name: "Visibility" - values: { - "Hidden": 0, - "AutomaticVisibility": 1, - "Windowed": 2, - "Minimized": 3, - "Maximized": 4, - "FullScreen": 5 - } - } - Property { name: "title"; type: "string" } - Property { name: "modality"; type: "Qt::WindowModality" } - Property { name: "flags"; type: "Qt::WindowFlags" } - Property { name: "x"; type: "int" } - Property { name: "y"; type: "int" } - Property { name: "width"; type: "int" } - Property { name: "height"; type: "int" } - Property { name: "minimumWidth"; type: "int" } - Property { name: "minimumHeight"; type: "int" } - Property { name: "maximumWidth"; type: "int" } - Property { name: "maximumHeight"; type: "int" } - Property { name: "visible"; type: "bool" } - Property { name: "active"; revision: 1; type: "bool"; isReadonly: true } - Property { name: "visibility"; revision: 1; type: "Visibility" } - Property { name: "contentOrientation"; type: "Qt::ScreenOrientation" } - Property { name: "opacity"; revision: 1; type: "double" } - Signal { - name: "screenChanged" - Parameter { name: "screen"; type: "QScreen"; isPointer: true } - } - Signal { - name: "modalityChanged" - Parameter { name: "modality"; type: "Qt::WindowModality" } - } - Signal { - name: "windowStateChanged" - Parameter { name: "windowState"; type: "Qt::WindowState" } - } - Signal { - name: "windowTitleChanged" - revision: 2 - Parameter { name: "title"; type: "string" } - } - Signal { - name: "xChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "yChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "widthChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "heightChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "minimumWidthChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "minimumHeightChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "maximumWidthChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "maximumHeightChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "visibleChanged" - Parameter { name: "arg"; type: "bool" } - } - Signal { - name: "visibilityChanged" - revision: 1 - Parameter { name: "visibility"; type: "QWindow::Visibility" } - } - Signal { name: "activeChanged"; revision: 1 } - Signal { - name: "contentOrientationChanged" - Parameter { name: "orientation"; type: "Qt::ScreenOrientation" } - } - Signal { - name: "focusObjectChanged" - Parameter { name: "object"; type: "QObject"; isPointer: true } - } - Signal { - name: "opacityChanged" - revision: 1 - Parameter { name: "opacity"; type: "double" } - } - Method { name: "requestActivate"; revision: 1 } - Method { - name: "setVisible" - Parameter { name: "visible"; type: "bool" } - } - Method { name: "show" } - Method { name: "hide" } - Method { name: "showMinimized" } - Method { name: "showMaximized" } - Method { name: "showFullScreen" } - Method { name: "showNormal" } - Method { name: "close"; type: "bool" } - Method { name: "raise" } - Method { name: "lower" } - Method { - name: "setTitle" - Parameter { type: "string" } - } - Method { - name: "setX" - Parameter { name: "arg"; type: "int" } - } - Method { - name: "setY" - Parameter { name: "arg"; type: "int" } - } - Method { - name: "setWidth" - Parameter { name: "arg"; type: "int" } - } - Method { - name: "setHeight" - Parameter { name: "arg"; type: "int" } - } - Method { - name: "setMinimumWidth" - Parameter { name: "w"; type: "int" } - } - Method { - name: "setMinimumHeight" - Parameter { name: "h"; type: "int" } - } - Method { - name: "setMaximumWidth" - Parameter { name: "w"; type: "int" } - } - Method { - name: "setMaximumHeight" - Parameter { name: "h"; type: "int" } - } - Method { - name: "alert" - revision: 1 - Parameter { name: "msec"; type: "int" } - } + prototype: "QQuickFocusScope" + name: "QtQuick.Controls/CheckBox" + exports: ["QtQuick.Controls/CheckBox 1.0"] + exportMetaObjectRevisions: [0] + isComposite: true + defaultProperty: "data" + Property { name: "checkedState"; type: "int" } + Property { name: "partiallyCheckedEnabled"; type: "bool" } + Property { name: "__ignoreChecked"; type: "bool" } + Property { name: "__ignoreCheckedState"; type: "bool" } + Method { name: "__cycleCheckBoxStates"; type: "QVariant" } + Property { name: "checked"; type: "bool" } + Property { name: "activeFocusOnPress"; type: "bool" } + Property { name: "exclusiveGroup"; type: "QQuickExclusiveGroup"; isPointer: true } + Property { name: "text"; type: "string" } + Property { name: "__cycleStatesHandler"; type: "QVariant" } + Property { name: "pressed"; type: "bool" } + Property { name: "hovered"; type: "bool"; isReadonly: true } + Signal { name: "clicked" } + 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 { - name: "QQuickWindow" + prototype: "QQuickFocusScope" + name: "QtQuick.Extras.Private/CircularButton" + exports: ["QtQuick.Extras.Private/CircularButton 1.0"] + exportMetaObjectRevisions: [0] + isComposite: true defaultProperty: "data" - prototype: "QWindow" - exports: ["QtQuick.Window/Window 2.0"] + Property { name: "isDefault"; type: "bool" } + Property { name: "menu"; type: "Menu_QMLTYPE_50"; isPointer: true } + Property { name: "checkable"; type: "bool" } + Property { name: "checked"; type: "bool" } + Property { name: "exclusiveGroup"; type: "QQuickExclusiveGroup"; isPointer: true } + Property { name: "action"; type: "QQuickAction"; 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: "QQuickAction"; isPointer: true } + Property { name: "__iconAction"; type: "QQuickAction"; isReadonly: true; isPointer: true } + Property { name: "__effectivePressed"; type: "bool" } + Property { name: "__behavior"; type: "QVariant" } + 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" + exports: ["QtQuick.Extras.Private/CircularButtonStyleHelper 1.0"] exportMetaObjectRevisions: [0] - Enum { - name: "SceneGraphError" - values: { - "ContextNotAvailable": 1 - } - } - Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "color"; type: "QColor" } - Property { name: "contentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { - name: "activeFocusItem" - revision: 1 - type: "QQuickItem" - isReadonly: true - isPointer: true - } - Signal { name: "frameSwapped" } - Signal { - name: "openglContextCreated" - revision: 2 - Parameter { name: "context"; type: "QOpenGLContext"; isPointer: true } - } - Signal { name: "sceneGraphInitialized" } - Signal { name: "sceneGraphInvalidated" } - Signal { name: "beforeSynchronizing" } - Signal { name: "afterSynchronizing"; revision: 2 } - Signal { name: "beforeRendering" } - Signal { name: "afterRendering" } - Signal { name: "afterAnimating"; revision: 2 } - Signal { name: "sceneGraphAboutToStop"; revision: 2 } - Signal { - name: "closing" - revision: 1 - Parameter { name: "close"; type: "QQuickCloseEvent"; isPointer: true } - } - Signal { - name: "colorChanged" - Parameter { type: "QColor" } - } - Signal { name: "activeFocusItemChanged"; revision: 1 } - Signal { - name: "sceneGraphError" - revision: 2 - Parameter { name: "error"; type: "QQuickWindow::SceneGraphError" } - Parameter { name: "message"; type: "string" } + 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" } } - Method { name: "update" } - Method { name: "releaseResources" } } Component { - prototype: "QQuickWindow" - name: "QtQuick.Controls/ApplicationWindow" - exports: ["QtQuick.Controls/ApplicationWindow 1.0"] + prototype: "QQuickFocusScope" + name: "QtQuick.Extras/CircularGauge" + exports: ["QtQuick.Extras/CircularGauge 1.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" - Property { name: "menuBar"; type: "MenuBar_QMLTYPE_3"; isPointer: true } - Property { name: "toolBar"; type: "QQuickItem"; isPointer: true } - Property { name: "statusBar"; type: "QQuickItem"; isPointer: true } + 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: "__topBottomMargins"; type: "double" } - Property { name: "__qwindowsize_max"; type: "double"; isReadonly: true } - Property { name: "__width"; type: "double" } - Property { name: "__height"; type: "double" } - Property { - name: "contentItem" - type: "ContentItem_QMLTYPE_11" - isReadonly: true - isPointer: true - } - Property { name: "__style"; type: "QObject"; isReadonly: true; isPointer: true } - Property { name: "__panel"; type: "QObject"; isReadonly: true; isPointer: true } - Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "visible"; type: "bool" } - Property { name: "visibility"; type: "Visibility" } - Signal { - name: "visibleChanged" - Parameter { name: "arg"; type: "bool" } - } - Signal { - name: "visibilityChanged" - Parameter { name: "visibility"; type: "QWindow::Visibility" } - } - Property { name: "color"; type: "QColor" } - Property { - name: "activeFocusItem" - revision: 1 - type: "QQuickItem" - isReadonly: true - isPointer: true - } - Signal { name: "frameSwapped" } - Signal { - name: "openglContextCreated" - revision: 2 - Parameter { name: "context"; type: "QOpenGLContext"; isPointer: true } - } - Signal { name: "sceneGraphInitialized" } - Signal { name: "sceneGraphInvalidated" } - Signal { name: "beforeSynchronizing" } - Signal { name: "afterSynchronizing"; revision: 2 } - Signal { name: "beforeRendering" } - Signal { name: "afterRendering" } - Signal { name: "afterAnimating"; revision: 2 } - Signal { name: "sceneGraphAboutToStop"; revision: 2 } - Signal { - name: "closing" - revision: 1 - Parameter { name: "close"; type: "QQuickCloseEvent"; isPointer: true } - } - Signal { - name: "colorChanged" - Parameter { type: "QColor" } - } - Signal { - name: "sceneGraphError" - revision: 2 - Parameter { name: "error"; type: "QQuickWindow::SceneGraphError" } - Parameter { name: "message"; type: "string" } - } - Method { name: "update" } - Method { name: "releaseResources" } - Property { name: "title"; type: "string" } - Property { name: "modality"; type: "Qt::WindowModality" } - Property { name: "flags"; type: "Qt::WindowFlags" } - Property { name: "x"; type: "int" } - Property { name: "y"; type: "int" } - Property { name: "width"; type: "int" } - Property { name: "height"; type: "int" } - Property { name: "minimumWidth"; type: "int" } - Property { name: "minimumHeight"; type: "int" } - Property { name: "maximumWidth"; type: "int" } - Property { name: "maximumHeight"; type: "int" } - Property { name: "active"; revision: 1; type: "bool"; isReadonly: true } - Property { name: "contentOrientation"; type: "Qt::ScreenOrientation" } - Property { name: "opacity"; revision: 1; type: "double" } - Signal { - name: "screenChanged" - Parameter { name: "screen"; type: "QScreen"; isPointer: true } - } - Signal { - name: "modalityChanged" - Parameter { name: "modality"; type: "Qt::WindowModality" } - } - Signal { - name: "windowStateChanged" - Parameter { name: "windowState"; type: "Qt::WindowState" } - } - Signal { - name: "windowTitleChanged" - revision: 2 - Parameter { name: "title"; type: "string" } - } - Signal { - name: "xChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "yChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "widthChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "heightChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "minimumWidthChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "minimumHeightChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "maximumWidthChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "maximumHeightChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "contentOrientationChanged" - Parameter { name: "orientation"; type: "Qt::ScreenOrientation" } - } - Signal { - name: "focusObjectChanged" - Parameter { name: "object"; type: "QObject"; isPointer: true } - } - Signal { - name: "opacityChanged" - revision: 1 - Parameter { name: "opacity"; type: "double" } - } - Method { name: "requestActivate"; revision: 1 } - Method { - name: "setVisible" - Parameter { name: "visible"; type: "bool" } - } - Method { name: "show" } - Method { name: "hide" } - Method { name: "showMinimized" } - Method { name: "showMaximized" } - Method { name: "showFullScreen" } - Method { name: "showNormal" } - Method { name: "close"; type: "bool" } - Method { name: "raise" } - Method { name: "lower" } - Method { - name: "setTitle" - Parameter { type: "string" } - } - Method { - name: "setX" - Parameter { name: "arg"; type: "int" } - } - Method { - name: "setY" - Parameter { name: "arg"; type: "int" } - } - Method { - name: "setWidth" - Parameter { name: "arg"; type: "int" } - } - Method { - name: "setHeight" - Parameter { name: "arg"; type: "int" } - } - Method { - name: "setMinimumWidth" - Parameter { name: "w"; type: "int" } - } - Method { - name: "setMinimumHeight" - Parameter { name: "h"; type: "int" } - } - Method { - name: "setMaximumWidth" - Parameter { name: "w"; type: "int" } - } - Method { - name: "setMaximumHeight" - Parameter { name: "h"; type: "int" } - } + 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" + 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: "alert" - revision: 1 - Parameter { name: "msec"; type: "int" } + 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: "QQuickFocusScope" - name: "QtQuick.Controls/BusyIndicator" - exports: ["QtQuick.Controls/BusyIndicator 1.1"] - exportMetaObjectRevisions: [1] + name: "QtQuick.Controls/ComboBox" + exports: ["QtQuick.Controls/ComboBox 1.0"] + exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" - Property { name: "running"; type: "bool" } + Property { name: "textRole"; type: "string" } + Property { name: "editable"; type: "bool" } + Property { name: "activeFocusOnPress"; type: "bool" } + Property { name: "pressed"; type: "bool"; isReadonly: true } + Property { name: "hovered"; type: "bool"; isReadonly: true } + Property { name: "menu"; type: "QQmlComponent"; isPointer: true } + Property { name: "selectByMouse"; type: "bool" } + Property { name: "inputMethodComposing"; type: "bool"; isReadonly: true } + Property { name: "__popup"; type: "QVariant" } + Property { name: "model"; type: "QVariant" } + Property { name: "currentIndex"; type: "int" } + Property { name: "currentText"; type: "string"; isReadonly: true } + Property { name: "editText"; type: "string" } + Property { name: "count"; type: "int"; isReadonly: true } + Property { name: "validator"; type: "QValidator"; isPointer: true } + Property { name: "acceptableInput"; type: "bool"; isReadonly: true } + Signal { name: "accepted" } + Signal { + name: "activated" + Parameter { name: "index"; type: "int" } + } + Method { + name: "textAt" + type: "QVariant" + Parameter { name: "index"; type: "QVariant" } + } + Method { + name: "find" + type: "QVariant" + Parameter { name: "text"; type: "QVariant" } + } + Method { name: "selectAll"; type: "QVariant" } + Method { name: "__selectPrevItem"; type: "QVariant" } + Method { name: "__selectNextItem"; type: "QVariant" } Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__style"; type: "QObject"; isPointer: true } Property { name: "__panel"; type: "QQuickItem"; isPointer: true } @@ -1230,13 +998,17 @@ Module { } Component { prototype: "QQuickFocusScope" - name: "QtQuick.Controls/Button" - exports: ["QtQuick.Controls/Button 1.0"] + name: "QtQuick.Extras/DelayButton" + 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_49"; isPointer: true } + Property { name: "menu"; type: "Menu_QMLTYPE_50"; isPointer: true } Property { name: "checkable"; type: "bool" } Property { name: "checked"; type: "bool" } Property { name: "exclusiveGroup"; type: "QQuickExclusiveGroup"; isPointer: true } @@ -1264,58 +1036,260 @@ Module { } Component { prototype: "QQuickFocusScope" - name: "QtQuick.Controls/Calendar" - exports: ["QtQuick.Controls/Calendar 1.2"] - exportMetaObjectRevisions: [2] + name: "QtQuick.Extras/Dial" + exports: ["QtQuick.Extras/Dial 1.1"] + exportMetaObjectRevisions: [1] isComposite: true defaultProperty: "data" - Property { name: "visibleMonth"; type: "int" } - Property { name: "visibleYear"; type: "int" } - Property { name: "frameVisible"; type: "bool" } - Property { name: "weekNumbersVisible"; type: "bool" } - Property { name: "navigationBarVisible"; type: "bool" } - Property { name: "dayOfWeekFormat"; type: "int" } - Property { name: "__model"; type: "QQuickCalendarModel"; isPointer: true } - Property { name: "__locale"; type: "QVariant" } - Property { name: "selectedDate"; type: "QDate" } - Property { name: "minimumDate"; type: "QDate" } - Property { name: "maximumDate"; type: "QDate" } - Signal { - name: "hovered" - Parameter { name: "date"; type: "QDateTime" } + 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/Gauge" + 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: "QQuickFocusScope" + name: "QtQuick.Controls/GroupBox" + exports: ["QtQuick.Controls/GroupBox 1.0"] + exportMetaObjectRevisions: [0] + isComposite: true + defaultProperty: "__content" + Property { name: "title"; type: "string" } + Property { name: "flat"; type: "bool" } + Property { name: "checkable"; type: "bool" } + Property { name: "style"; type: "QQmlComponent"; isPointer: true } + Property { name: "checked"; type: "bool" } + Property { name: "__content"; type: "QObject"; isList: true; isReadonly: true } + Property { name: "contentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } + Property { name: "__checkbox"; type: "CheckBox_QMLTYPE_74"; isReadonly: true; isPointer: true } + Property { name: "__style"; type: "QObject"; isReadonly: true; isPointer: true } + } + Component { + prototype: "QQuickText" + name: "QtQuick.Controls/Label" + exports: ["QtQuick.Controls/Label 1.0"] + exportMetaObjectRevisions: [0] + isComposite: true + defaultProperty: "data" + } + Component { + prototype: "QObject" + name: "QtQuick.Controls/Menu" + exports: ["QtQuick.Controls/Menu 1.0"] + exportMetaObjectRevisions: [0] + isComposite: true + defaultProperty: "items" + Property { name: "__selfComponent"; type: "QQmlComponent"; isPointer: true } + Property { name: "style"; type: "QQmlComponent"; isPointer: true } + Property { name: "__usingDefaultStyle"; type: "bool" } + Property { name: "__currentIndex"; type: "int" } + Property { name: "__parentContentItem"; type: "QVariant" } + Method { + name: "addMenu" + type: "QVariant" + Parameter { name: "title"; type: "QVariant" } } - Signal { - name: "pressed" - Parameter { name: "date"; type: "QDateTime" } + Method { + name: "insertMenu" + type: "QVariant" + Parameter { name: "index"; type: "QVariant" } + Parameter { name: "title"; type: "QVariant" } } - Signal { - name: "released" - Parameter { name: "date"; type: "QDateTime" } + Property { name: "title"; type: "string" } + Property { name: "items"; type: "QObject"; isList: true; isReadonly: true } + Property { name: "__selectedIndex"; type: "int" } + Property { name: "__popupVisible"; type: "bool"; isReadonly: true } + Property { name: "__contentItem"; type: "QQuickItem"; isPointer: true } + Property { name: "__minimumWidth"; type: "int" } + Property { name: "__font"; type: "QFont" } + Property { name: "__xOffset"; type: "double" } + Property { name: "__yOffset"; type: "double" } + Property { name: "__action"; type: "QQuickAction"; isReadonly: true; isPointer: true } + Property { name: "__popupGeometry"; type: "QRect"; isReadonly: true } + Signal { name: "aboutToShow" } + Signal { name: "aboutToHide" } + Signal { name: "popupVisibleChanged" } + Signal { name: "__menuPopupDestroyed" } + Signal { name: "menuContentItemChanged" } + Signal { name: "minimumWidthChanged" } + Method { name: "__closeMenu" } + Method { name: "__dismissMenu" } + Method { name: "__destroyMenuPopup" } + Method { name: "__destroyAllMenuPopups" } + Method { name: "popup" } + Method { + name: "addItem" + type: "QQuickMenuItem*" + Parameter { type: "string" } } - Signal { - name: "clicked" - Parameter { name: "date"; type: "QDateTime" } + Method { + name: "insertItem" + type: "QQuickMenuItem*" + Parameter { type: "int" } + Parameter { type: "string" } } - Signal { - name: "doubleClicked" - Parameter { name: "date"; type: "QDateTime" } + Method { name: "addSeparator" } + Method { + name: "insertSeparator" + Parameter { type: "int" } } - Signal { - name: "pressAndHold" - Parameter { name: "date"; type: "QDateTime" } + Method { + name: "removeItem" + Parameter { type: "QQuickMenuBase"; isPointer: true } + } + Method { name: "clear" } + Method { + name: "__popup" + Parameter { name: "targetRect"; type: "QRectF" } + Parameter { name: "atItemIndex"; type: "int" } + Parameter { name: "menuType"; type: "MenuType" } + } + Method { + name: "__popup" + Parameter { name: "targetRect"; type: "QRectF" } + Parameter { name: "atItemIndex"; type: "int" } + } + Method { + name: "__popup" + Parameter { name: "targetRect"; type: "QRectF" } + } + Property { name: "enabled"; type: "bool" } + Property { name: "iconSource"; type: "QUrl" } + Property { name: "iconName"; type: "string" } + Property { name: "__icon"; type: "QVariant"; isReadonly: true } + Signal { name: "__textChanged" } + Property { name: "visible"; type: "bool" } + Property { name: "type"; type: "QQuickMenuItemType::MenuItemType"; isReadonly: true } + Property { name: "__parentMenu"; type: "QObject"; isReadonly: true; isPointer: true } + Property { name: "__isNative"; type: "bool"; isReadonly: true } + Property { name: "__visualItem"; type: "QQuickItem"; isPointer: true } + } + Component { + prototype: "QObject" + name: "QtQuick.Controls/MenuBar" + exports: ["QtQuick.Controls/MenuBar 1.0"] + exportMetaObjectRevisions: [0] + isComposite: true + defaultProperty: "menus" + Property { name: "style"; type: "QQmlComponent"; isPointer: true } + Property { name: "__style"; type: "QObject"; isPointer: true } + Property { name: "__menuBarComponent"; type: "QQmlComponent"; isPointer: true } + Property { name: "menus"; type: "QQuickMenu"; isList: true; isReadonly: true } + Property { name: "__contentItem"; type: "QQuickItem"; isPointer: true } + Property { name: "__parentWindow"; type: "QQuickWindow"; isPointer: true } + Property { name: "__isNative"; type: "bool" } + Signal { name: "nativeChanged" } + Signal { name: "contentItemChanged" } + } + Component { + prototype: "QQuickFocusScope" + name: "QtQuick.Extras/PieMenu" + 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: "QQuickMenuItem"; isList: true; isReadonly: true } + Property { name: "currentIndex"; type: "int"; isReadonly: true } + Property { name: "currentItem"; type: "QQuickMenuItem"; 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" + exports: ["QtQuick.Extras.Private/PieMenuIcon 1.0"] + exportMetaObjectRevisions: [0] + isComposite: true + defaultProperty: "data" + Property { name: "control"; type: "PieMenu_QMLTYPE_176"; isPointer: true } + Property { name: "styleData"; type: "QObject"; isPointer: true } + Property { name: "iconSource"; type: "string"; isReadonly: true } + } + Component { + prototype: "QQuickFocusScope" + name: "QtQuick.Controls/ProgressBar" + exports: ["QtQuick.Controls/ProgressBar 1.0"] + exportMetaObjectRevisions: [0] + isComposite: true + defaultProperty: "data" + Property { name: "value"; type: "double" } + Property { name: "minimumValue"; type: "double" } + Property { name: "maximumValue"; type: "double" } + Property { name: "indeterminate"; type: "bool" } + Property { name: "orientation"; type: "int" } + Property { name: "__initialized"; type: "bool" } + Property { name: "hovered"; type: "bool"; isReadonly: true } + Method { + name: "setValue" + type: "QVariant" + Parameter { name: "v"; type: "QVariant" } } - Method { name: "showPreviousMonth"; type: "QVariant" } - Method { name: "showNextMonth"; type: "QVariant" } - Method { name: "showPreviousYear"; type: "QVariant" } - Method { name: "showNextYear"; type: "QVariant" } - Method { name: "__selectPreviousMonth"; type: "QVariant" } - Method { name: "__selectNextMonth"; type: "QVariant" } - Method { name: "__selectPreviousWeek"; type: "QVariant" } - Method { name: "__selectNextWeek"; type: "QVariant" } - Method { name: "__selectFirstDayOfMonth"; type: "QVariant" } - Method { name: "__selectLastDayOfMonth"; type: "QVariant" } - Method { name: "__selectPreviousDay"; type: "QVariant" } - Method { name: "__selectNextDay"; type: "QVariant" } Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__style"; type: "QObject"; isPointer: true } Property { name: "__panel"; type: "QQuickItem"; isPointer: true } @@ -1324,16 +1298,11 @@ Module { } Component { prototype: "QQuickFocusScope" - name: "QtQuick.Controls/CheckBox" - exports: ["QtQuick.Controls/CheckBox 1.0"] + name: "QtQuick.Controls/RadioButton" + exports: ["QtQuick.Controls/RadioButton 1.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" - Property { name: "checkedState"; type: "int" } - Property { name: "partiallyCheckedEnabled"; type: "bool" } - Property { name: "__ignoreChecked"; type: "bool" } - Property { name: "__ignoreCheckedState"; type: "bool" } - Method { name: "__cycleCheckBoxStates"; type: "QVariant" } Property { name: "checked"; type: "bool" } Property { name: "activeFocusOnPress"; type: "bool" } Property { name: "exclusiveGroup"; type: "QQuickExclusiveGroup"; isPointer: true } @@ -1350,45 +1319,58 @@ Module { } Component { prototype: "QQuickFocusScope" - name: "QtQuick.Controls/ComboBox" - exports: ["QtQuick.Controls/ComboBox 1.0"] + name: "QtQuick.Controls/ScrollView" + exports: ["QtQuick.Controls/ScrollView 1.0"] + exportMetaObjectRevisions: [0] + isComposite: true + defaultProperty: "contentItem" + Property { name: "frameVisible"; type: "bool" } + Property { name: "highlightOnFocus"; type: "bool" } + Property { name: "contentItem"; type: "QQuickItem"; isPointer: true } + Property { name: "__scroller"; type: "QQuickItem"; isPointer: true } + Property { name: "__scrollBarTopMargin"; type: "int" } + Property { name: "__viewTopMargin"; type: "int" } + Property { name: "style"; type: "QQmlComponent"; isPointer: true } + Property { name: "__style"; type: "Style_QMLTYPE_2"; isPointer: true } + Property { name: "horizontalScrollBarPolicy"; type: "int" } + Property { name: "verticalScrollBarPolicy"; type: "int" } + Property { name: "viewport"; type: "QQuickItem"; isReadonly: true; isPointer: true } + Property { name: "flickableItem"; type: "QQuickFlickable"; isReadonly: true; isPointer: true } + Property { name: "__wheelAreaScrollSpeed"; type: "double" } + Property { + name: "__horizontalScrollBar" + type: "ScrollBar_QMLTYPE_25" + isReadonly: true + isPointer: true + } + Property { + name: "__verticalScrollBar" + type: "ScrollBar_QMLTYPE_25" + isReadonly: true + isPointer: true + } + } + Component { + prototype: "QQuickFocusScope" + name: "QtQuick.Controls/Slider" + exports: ["QtQuick.Controls/Slider 1.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" - Property { name: "textRole"; type: "string" } - Property { name: "editable"; type: "bool" } + Property { name: "orientation"; type: "int" } + Property { name: "updateValueWhileDragging"; type: "bool" } Property { name: "activeFocusOnPress"; type: "bool" } + Property { name: "tickmarksEnabled"; type: "bool" } + Property { name: "__horizontal"; type: "bool" } + Property { name: "__handlePos"; type: "double" } + Property { name: "minimumValue"; type: "double" } + Property { name: "maximumValue"; type: "double" } Property { name: "pressed"; type: "bool"; isReadonly: true } Property { name: "hovered"; type: "bool"; isReadonly: true } - Property { name: "menu"; type: "QQmlComponent"; isPointer: true } - Property { name: "selectByMouse"; type: "bool" } - Property { name: "inputMethodComposing"; type: "bool"; isReadonly: true } - Property { name: "__popup"; type: "QVariant" } - Property { name: "model"; type: "QVariant" } - Property { name: "currentIndex"; type: "int" } - Property { name: "currentText"; type: "string"; isReadonly: true } - Property { name: "editText"; type: "string" } - Property { name: "count"; type: "int"; isReadonly: true } - Property { name: "validator"; type: "QValidator"; isPointer: true } - Property { name: "acceptableInput"; type: "bool"; isReadonly: true } - Signal { name: "accepted" } - Signal { - name: "activated" - Parameter { name: "index"; type: "int" } - } - Method { - name: "textAt" - type: "QVariant" - Parameter { name: "index"; type: "QVariant" } - } - Method { - name: "find" - type: "QVariant" - Parameter { name: "text"; type: "QVariant" } - } - Method { name: "selectAll"; type: "QVariant" } - Method { name: "__selectPrevItem"; type: "QVariant" } - Method { name: "__selectNextItem"; type: "QVariant" } + Property { name: "stepSize"; type: "double" } + Property { name: "value"; type: "double" } + Method { name: "accessibleIncreaseAction"; type: "QVariant" } + Method { name: "accessibleDecreaseAction"; type: "QVariant" } Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__style"; type: "QObject"; isPointer: true } Property { name: "__panel"; type: "QQuickItem"; isPointer: true } @@ -1397,153 +1379,197 @@ Module { } Component { prototype: "QQuickFocusScope" - name: "QtQuick.Controls/GroupBox" - exports: ["QtQuick.Controls/GroupBox 1.0"] + name: "QtQuick.Controls/SpinBox" + exports: ["QtQuick.Controls/SpinBox 1.0"] exportMetaObjectRevisions: [0] isComposite: true - defaultProperty: "__content" - Property { name: "title"; type: "string" } - Property { name: "flat"; type: "bool" } - Property { name: "checkable"; type: "bool" } + defaultProperty: "data" + Property { name: "activeFocusOnPress"; type: "bool" } + Property { name: "horizontalAlignment"; type: "int" } + Property { name: "hovered"; type: "bool"; isReadonly: true } + Property { name: "selectByMouse"; type: "bool" } + Property { name: "inputMethodComposing"; type: "bool"; isReadonly: true } + Property { name: "menu"; type: "QQmlComponent"; isPointer: true } + Property { name: "value"; type: "double" } + Property { name: "minimumValue"; type: "double" } + Property { name: "maximumValue"; type: "double" } + Property { name: "stepSize"; type: "double" } + Property { name: "suffix"; type: "string" } + Property { name: "prefix"; type: "string" } + Property { name: "decimals"; type: "int" } + Property { name: "font"; type: "QFont" } + Property { name: "__text"; type: "string" } + Property { name: "__baselineOffset"; type: "double" } + Signal { name: "editingFinished" } + Method { name: "__increment"; type: "QVariant" } + Method { name: "__decrement"; type: "QVariant" } Property { name: "style"; type: "QQmlComponent"; isPointer: true } - Property { name: "checked"; type: "bool" } - Property { name: "__content"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "contentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "__checkbox"; type: "CheckBox_QMLTYPE_75"; isReadonly: true; isPointer: true } - Property { name: "__style"; type: "QObject"; isReadonly: true; 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: "QQuickText" - name: "QtQuick.Controls/Label" - exports: ["QtQuick.Controls/Label 1.0"] + prototype: "QQuickItem" + name: "QtQuick.Controls/SplitView" + exports: ["QtQuick.Controls/SplitView 1.0"] exportMetaObjectRevisions: [0] isComposite: true - defaultProperty: "data" + defaultProperty: "__contents" + Property { name: "orientation"; type: "int" } + Property { name: "handleDelegate"; type: "QQmlComponent"; isPointer: true } + Property { name: "resizing"; type: "bool" } + Property { name: "__contents"; type: "QObject"; isList: true; isReadonly: true } + Property { name: "__items"; type: "QQuickItem"; isList: true; isReadonly: true } + Property { name: "__handles"; type: "QQuickItem"; isList: true; isReadonly: true } + Method { + name: "addItem" + type: "QVariant" + Parameter { name: "item"; type: "QVariant" } + } + Method { + name: "removeItem" + type: "QVariant" + Parameter { name: "item"; type: "QVariant" } + } } Component { - prototype: "QObject" - name: "QtQuick.Controls/Menu" - exports: ["QtQuick.Controls/Menu 1.0"] + prototype: "QQuickFocusScope" + name: "QtQuick.Controls/StackView" + exports: ["QtQuick.Controls/StackView 1.0"] exportMetaObjectRevisions: [0] isComposite: true - defaultProperty: "items" - Property { name: "__selfComponent"; type: "QQmlComponent"; isPointer: true } - Property { name: "style"; type: "QQmlComponent"; isPointer: true } - Property { name: "__usingDefaultStyle"; type: "bool" } - Property { name: "__currentIndex"; type: "int" } - Property { name: "__parentContentItem"; type: "QVariant" } + defaultProperty: "data" + Property { name: "busy"; type: "bool"; isReadonly: true } + Property { name: "delegate"; type: "StackViewDelegate_QMLTYPE_233"; isPointer: true } + Property { name: "__currentItem"; type: "QQuickItem"; isPointer: true } + Property { name: "__depth"; type: "int" } + Property { name: "__guard"; type: "bool" } + Property { name: "invalidItemReplacement"; type: "QQmlComponent"; isPointer: true } + Property { name: "initialItem"; type: "QVariant" } + Property { name: "__currentTransition"; type: "QVariant" } + Property { name: "depth"; type: "int"; isReadonly: true } + Property { name: "currentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } Method { - name: "addMenu" + name: "push" type: "QVariant" - Parameter { name: "title"; type: "QVariant" } + Parameter { name: "item"; type: "QVariant" } } Method { - name: "insertMenu" + name: "pop" + type: "QVariant" + Parameter { name: "item"; type: "QVariant" } + } + Method { name: "clear"; type: "QVariant" } + Method { + name: "find" + type: "QVariant" + Parameter { name: "func"; type: "QVariant" } + Parameter { name: "onlySearchLoadedItems"; type: "QVariant" } + } + Method { + name: "get" type: "QVariant" Parameter { name: "index"; type: "QVariant" } - Parameter { name: "title"; type: "QVariant" } + Parameter { name: "dontLoad"; type: "QVariant" } } - Property { name: "title"; type: "string" } - Property { name: "items"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "__selectedIndex"; type: "int" } - Property { name: "__popupVisible"; type: "bool"; isReadonly: true } - Property { name: "__contentItem"; type: "QQuickItem"; isPointer: true } - Property { name: "__minimumWidth"; type: "int" } - Property { name: "__font"; type: "QFont" } - Property { name: "__xOffset"; type: "double" } - Property { name: "__yOffset"; type: "double" } - Property { name: "__action"; type: "QQuickAction"; isReadonly: true; isPointer: true } - Property { name: "__popupGeometry"; type: "QRect"; isReadonly: true } - Signal { name: "__menuClosed" } - Signal { name: "popupVisibleChanged" } - Signal { name: "menuContentItemChanged" } - Signal { name: "minimumWidthChanged" } - Method { name: "__closeMenu" } - Method { name: "__dismissMenu" } - Method { name: "popup" } + Method { name: "completeTransition"; type: "QVariant" } Method { - name: "addItem" - type: "QQuickMenuItem*" - Parameter { type: "string" } + name: "replace" + type: "QVariant" + Parameter { name: "item"; type: "QVariant" } + Parameter { name: "properties"; type: "QVariant" } + Parameter { name: "immediate"; type: "QVariant" } } Method { - name: "insertItem" - type: "QQuickMenuItem*" - Parameter { type: "int" } - Parameter { type: "string" } + name: "__recursionGuard" + type: "QVariant" + Parameter { name: "use"; type: "QVariant" } } - Method { name: "addSeparator" } Method { - name: "insertSeparator" - Parameter { type: "int" } + name: "__loadElement" + type: "QVariant" + Parameter { name: "element"; type: "QVariant" } } Method { - name: "removeItem" - Parameter { type: "QQuickMenuBase"; isPointer: true } + name: "__resolveComponent" + type: "QVariant" + Parameter { name: "unknownObjectType"; type: "QVariant" } + Parameter { name: "element"; type: "QVariant" } } - Method { name: "clear" } Method { - name: "__popup" - Parameter { name: "targetRect"; type: "QRectF" } - Parameter { name: "atItemIndex"; type: "int" } - Parameter { name: "menuType"; type: "MenuType" } + name: "__cleanup" + type: "QVariant" + Parameter { name: "element"; type: "QVariant" } + } + Method { + name: "__setStatus" + type: "QVariant" + Parameter { name: "item"; type: "QVariant" } + Parameter { name: "status"; type: "QVariant" } } Method { - name: "__popup" - Parameter { name: "targetRect"; type: "QRectF" } - Parameter { name: "atItemIndex"; type: "int" } + name: "__performTransition" + type: "QVariant" + Parameter { name: "transition"; type: "QVariant" } } + Method { name: "animationFinished"; type: "QVariant" } + } + Component { + prototype: "QObject" + name: "QtQuick.Controls/StackViewDelegate" + exports: ["QtQuick.Controls/StackViewDelegate 1.0"] + exportMetaObjectRevisions: [0] + isComposite: true + Property { name: "pushTransition"; type: "QQmlComponent"; isPointer: true } + Property { name: "popTransition"; type: "QQmlComponent"; isPointer: true } + Property { name: "replaceTransition"; type: "QQmlComponent"; isPointer: true } Method { - name: "__popup" - Parameter { name: "targetRect"; type: "QRectF" } + name: "getTransition" + type: "QVariant" + Parameter { name: "properties"; type: "QVariant" } + } + Method { + name: "transitionFinished" + type: "QVariant" + Parameter { name: "properties"; type: "QVariant" } } - Property { name: "enabled"; type: "bool" } - Property { name: "iconSource"; type: "QUrl" } - Property { name: "iconName"; type: "string" } - Property { name: "__icon"; type: "QVariant"; isReadonly: true } - Signal { name: "__textChanged" } - Property { name: "visible"; type: "bool" } - Property { name: "type"; type: "QQuickMenuItemType::MenuItemType"; isReadonly: true } - Property { name: "__parentMenu"; type: "QObject"; isReadonly: true; isPointer: true } - Property { name: "__isNative"; type: "bool"; isReadonly: true } - Property { name: "__visualItem"; type: "QQuickItem"; isPointer: true } } Component { - prototype: "QObject" - name: "QtQuick.Controls/MenuBar" - exports: ["QtQuick.Controls/MenuBar 1.0"] + prototype: "QQuickParallelAnimation" + name: "QtQuick.Controls/StackViewTransition" + exports: ["QtQuick.Controls/StackViewTransition 1.0"] exportMetaObjectRevisions: [0] isComposite: true - defaultProperty: "menus" - Property { name: "style"; type: "QQmlComponent"; isPointer: true } - Property { name: "__style"; type: "QObject"; isPointer: true } - Property { name: "__menuBarComponent"; type: "QQmlComponent"; isPointer: true } - Property { name: "menus"; type: "QQuickMenu"; isList: true; isReadonly: true } - Property { name: "__contentItem"; type: "QQuickItem"; isPointer: true } - Property { name: "__parentWindow"; type: "QQuickWindow"; isPointer: true } - Property { name: "__isNative"; type: "bool" } - Signal { name: "nativeChanged" } - Signal { name: "contentItemChanged" } + defaultProperty: "animations" + Property { name: "name"; type: "string" } + Property { name: "enterItem"; type: "QQuickItem"; isPointer: true } + Property { name: "exitItem"; type: "QQuickItem"; isPointer: true } + Property { name: "immediate"; type: "bool" } } Component { prototype: "QQuickFocusScope" - name: "QtQuick.Controls/ProgressBar" - exports: ["QtQuick.Controls/ProgressBar 1.0"] + name: "QtQuick.Controls/StatusBar" + exports: ["QtQuick.Controls/StatusBar 1.0"] exportMetaObjectRevisions: [0] isComposite: true + defaultProperty: "__content" + Property { name: "style"; type: "QQmlComponent"; isPointer: true } + Property { name: "__panel"; type: "QQuickItem"; isPointer: true } + Property { name: "__style"; type: "QObject"; isReadonly: true; isPointer: true } + Property { name: "__content"; type: "QObject"; isList: true; isReadonly: true } + Property { name: "contentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } + } + Component { + prototype: "QQuickFocusScope" + name: "QtQuick.Extras/StatusIndicator" + exports: ["QtQuick.Extras/StatusIndicator 1.1"] + exportMetaObjectRevisions: [1] + isComposite: true defaultProperty: "data" - Property { name: "value"; type: "double" } - Property { name: "minimumValue"; type: "double" } - Property { name: "maximumValue"; type: "double" } - Property { name: "indeterminate"; type: "bool" } - Property { name: "orientation"; type: "int" } - Property { name: "__initialized"; type: "bool" } - Property { name: "hovered"; type: "bool"; isReadonly: true } - Method { - name: "setValue" - type: "QVariant" - Parameter { name: "v"; type: "QVariant" } - } + 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 } @@ -1552,18 +1578,15 @@ Module { } Component { prototype: "QQuickFocusScope" - name: "QtQuick.Controls/RadioButton" - exports: ["QtQuick.Controls/RadioButton 1.0"] - exportMetaObjectRevisions: [0] + name: "QtQuick.Controls/Switch" + exports: ["QtQuick.Controls/Switch 1.1"] + exportMetaObjectRevisions: [1] isComposite: true defaultProperty: "data" Property { name: "checked"; type: "bool" } Property { name: "activeFocusOnPress"; type: "bool" } Property { name: "exclusiveGroup"; type: "QQuickExclusiveGroup"; isPointer: true } - Property { name: "text"; type: "string" } - Property { name: "__cycleStatesHandler"; type: "QVariant" } - Property { name: "pressed"; type: "bool" } - Property { name: "hovered"; type: "bool"; isReadonly: true } + Property { name: "pressed"; type: "bool"; isReadonly: true } Signal { name: "clicked" } Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__style"; type: "QObject"; isPointer: true } @@ -1571,13 +1594,171 @@ Module { Property { name: "styleHints"; type: "QVariant" } Property { name: "__styleData"; type: "QObject"; isPointer: true } } + Component { + prototype: "QQuickLoader" + name: "QtQuick.Controls/Tab" + exports: ["QtQuick.Controls/Tab 1.0"] + exportMetaObjectRevisions: [0] + isComposite: true + defaultProperty: "component" + Property { name: "title"; type: "string" } + Property { name: "__inserted"; type: "bool" } + Property { name: "component"; type: "QQmlComponent"; isPointer: true } + } Component { prototype: "QQuickFocusScope" - name: "QtQuick.Controls/ScrollView" - exports: ["QtQuick.Controls/ScrollView 1.0"] + name: "QtQuick.Controls/TabView" + exports: ["QtQuick.Controls/TabView 1.0"] exportMetaObjectRevisions: [0] isComposite: true - defaultProperty: "contentItem" + defaultProperty: "data" + Property { name: "currentIndex"; type: "int" } + Property { name: "count"; type: "int"; isReadonly: true } + Property { name: "frameVisible"; type: "bool" } + Property { name: "tabsVisible"; type: "bool" } + Property { name: "tabPosition"; type: "int" } + Property { name: "__tabs"; type: "QQmlListModel"; isPointer: true } + Property { name: "style"; type: "QQmlComponent"; isPointer: true } + Property { name: "__styleItem"; type: "QVariant" } + Property { name: "contentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } + Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } + Method { + name: "addTab" + type: "QVariant" + Parameter { name: "title"; type: "QVariant" } + Parameter { name: "component"; type: "QVariant" } + } + Method { + name: "insertTab" + type: "QVariant" + Parameter { name: "index"; type: "QVariant" } + Parameter { name: "title"; type: "QVariant" } + Parameter { name: "component"; type: "QVariant" } + } + Method { + name: "removeTab" + type: "QVariant" + Parameter { name: "index"; type: "QVariant" } + } + Method { + name: "moveTab" + type: "QVariant" + Parameter { name: "from"; type: "QVariant" } + Parameter { name: "to"; type: "QVariant" } + } + Method { + name: "getTab" + type: "QVariant" + Parameter { name: "index"; type: "QVariant" } + } + Method { + name: "__willRemoveIndex" + type: "QVariant" + Parameter { name: "index"; type: "QVariant" } + } + Method { + name: "__didInsertIndex" + type: "QVariant" + Parameter { name: "index"; type: "QVariant" } + } + Method { name: "__setOpacities"; type: "QVariant" } + } + Component { + prototype: "QQuickFocusScope" + name: "QtQuick.Controls/TableView" + exports: ["QtQuick.Controls/TableView 1.0"] + exportMetaObjectRevisions: [0] + isComposite: true + defaultProperty: "__columns" + Property { name: "rowCount"; type: "int"; isReadonly: true } + Property { name: "model"; type: "QVariant" } + Property { name: "currentRow"; type: "int" } + Property { + name: "selection" + type: "TableViewSelection_QMLTYPE_265" + isReadonly: true + isPointer: true + } + Signal { + name: "activated" + Parameter { name: "row"; type: "int" } + } + Signal { + name: "clicked" + Parameter { name: "row"; type: "int" } + } + Signal { + name: "doubleClicked" + Parameter { name: "row"; type: "int" } + } + Signal { + name: "pressAndHold" + Parameter { name: "row"; type: "int" } + } + Method { + name: "positionViewAtRow" + type: "QVariant" + Parameter { name: "row"; type: "QVariant" } + Parameter { name: "mode"; type: "QVariant" } + } + Method { + name: "rowAt" + type: "QVariant" + Parameter { name: "x"; type: "QVariant" } + Parameter { name: "y"; type: "QVariant" } + } + Property { name: "alternatingRowColors"; type: "bool" } + Property { name: "headerVisible"; type: "bool" } + Property { name: "itemDelegate"; type: "QQmlComponent"; isPointer: true } + Property { name: "rowDelegate"; type: "QQmlComponent"; isPointer: true } + Property { name: "headerDelegate"; type: "QQmlComponent"; isPointer: true } + Property { name: "sortIndicatorColumn"; type: "int" } + Property { name: "sortIndicatorVisible"; type: "bool" } + Property { name: "sortIndicatorOrder"; type: "int" } + Property { name: "selectionMode"; type: "int" } + Property { name: "__viewTypeName"; type: "string" } + Property { name: "__isTreeView"; type: "bool"; isReadonly: true } + Property { name: "__itemDelegateLoader"; type: "QQmlComponent"; isPointer: true } + Property { name: "__activateItemOnSingleClick"; type: "bool" } + Property { name: "__mouseArea"; type: "QQuickItem"; isPointer: true } + Property { name: "__model"; type: "QVariant" } + Property { name: "backgroundVisible"; type: "bool" } + Property { name: "contentHeader"; type: "QQmlComponent"; isPointer: true } + Property { name: "contentFooter"; type: "QQmlComponent"; isPointer: true } + Property { name: "columnCount"; type: "int"; isReadonly: true } + Property { name: "section"; type: "QQuickViewSection"; isReadonly: true; isPointer: true } + Property { name: "__columns"; type: "QObject"; isList: true; isReadonly: true } + Property { name: "__currentRowItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } + Property { name: "__currentRow"; type: "int" } + Property { name: "__listView"; type: "QQuickListView"; isReadonly: true; isPointer: true } + 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: "removeColumn" + type: "QVariant" + Parameter { name: "index"; type: "QVariant" } + } + Method { + name: "moveColumn" + type: "QVariant" + Parameter { name: "from"; type: "QVariant" } + Parameter { name: "to"; type: "QVariant" } + } + Method { + name: "getColumn" + type: "QVariant" + Parameter { name: "index"; type: "QVariant" } + } + Method { name: "resizeColumnsToContents"; type: "QVariant" } Property { name: "frameVisible"; type: "bool" } Property { name: "highlightOnFocus"; type: "bool" } Property { name: "contentItem"; type: "QQuickItem"; isPointer: true } @@ -1605,359 +1786,421 @@ Module { } } Component { - prototype: "QQuickFocusScope" - name: "QtQuick.Controls/Slider" - exports: ["QtQuick.Controls/Slider 1.0"] + prototype: "QObject" + name: "QtQuick.Controls/TableViewColumn" + exports: ["QtQuick.Controls/TableViewColumn 1.0"] exportMetaObjectRevisions: [0] isComposite: true - defaultProperty: "data" - Property { name: "orientation"; type: "int" } - Property { name: "updateValueWhileDragging"; type: "bool" } - Property { name: "activeFocusOnPress"; type: "bool" } - Property { name: "tickmarksEnabled"; type: "bool" } - Property { name: "__horizontal"; type: "bool" } - Property { name: "__handlePos"; type: "double" } - Property { name: "minimumValue"; type: "double" } - Property { name: "maximumValue"; type: "double" } - Property { name: "pressed"; type: "bool"; isReadonly: true } - Property { name: "hovered"; type: "bool"; isReadonly: true } - Property { name: "stepSize"; type: "double" } - Property { name: "value"; type: "double" } - Method { name: "accessibleIncreaseAction"; type: "QVariant" } - Method { name: "accessibleDecreaseAction"; 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 } + Property { name: "__view"; type: "QQuickItem"; isPointer: true } + Property { name: "__index"; type: "int" } + Property { name: "title"; type: "string" } + Property { name: "role"; type: "string" } + Property { name: "width"; type: "int" } + Property { name: "visible"; type: "bool" } + Property { name: "resizable"; type: "bool" } + Property { name: "movable"; type: "bool" } + Property { name: "elideMode"; type: "int" } + Property { name: "horizontalAlignment"; type: "int" } + Property { name: "delegate"; type: "QQmlComponent"; isPointer: true } + Method { name: "resizeToContents"; type: "QVariant" } } Component { prototype: "QQuickFocusScope" - name: "QtQuick.Controls/SpinBox" - exports: ["QtQuick.Controls/SpinBox 1.0"] - exportMetaObjectRevisions: [0] + name: "QtQuick.Controls/TextArea" + exports: ["QtQuick.Controls/TextArea 1.3"] + exportMetaObjectRevisions: [3] isComposite: true defaultProperty: "data" - Property { name: "activeFocusOnPress"; type: "bool" } - Property { name: "horizontalAlignment"; type: "int" } - Property { name: "hovered"; type: "bool"; isReadonly: true } - Property { name: "selectByMouse"; type: "bool" } Property { name: "inputMethodComposing"; type: "bool"; isReadonly: true } + Property { name: "tabChangesFocus"; type: "bool" } + Property { name: "selectByMouse"; type: "bool" } Property { name: "menu"; type: "QQmlComponent"; isPointer: true } - Property { name: "value"; type: "double" } - Property { name: "minimumValue"; type: "double" } - Property { name: "maximumValue"; type: "double" } - Property { name: "stepSize"; type: "double" } - Property { name: "suffix"; type: "string" } - Property { name: "prefix"; type: "string" } - Property { name: "decimals"; type: "int" } + Property { name: "activeFocusOnPress"; type: "bool" } + Property { name: "baseUrl"; type: "QUrl" } + Property { name: "canPaste"; type: "bool"; isReadonly: true } + Property { name: "canRedo"; type: "bool"; isReadonly: true } + Property { name: "canUndo"; type: "bool"; isReadonly: true } + Property { name: "textColor"; type: "QColor" } + Property { name: "cursorPosition"; type: "int" } + Property { name: "cursorRectangle"; type: "QRectF"; isReadonly: true } Property { name: "font"; type: "QFont" } - Property { name: "__text"; type: "string" } - Property { name: "__baselineOffset"; type: "double" } - Signal { name: "editingFinished" } - Method { name: "__increment"; type: "QVariant" } - Method { name: "__decrement"; 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: "QQuickItem" - name: "QtQuick.Controls/SplitView" - exports: ["QtQuick.Controls/SplitView 1.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "__contents" - Property { name: "orientation"; type: "int" } - Property { name: "handleDelegate"; type: "QQmlComponent"; isPointer: true } - Property { name: "resizing"; type: "bool" } - Property { name: "__contents"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "__items"; type: "QQuickItem"; isList: true; isReadonly: true } - Property { name: "__handles"; type: "QQuickItem"; isList: true; isReadonly: true } + Property { name: "horizontalAlignment"; type: "int" } + Property { name: "effectiveHorizontalAlignment"; type: "int"; isReadonly: true } + Property { name: "verticalAlignment"; type: "int" } + Property { name: "inputMethodHints"; type: "int" } + Property { name: "length"; type: "int"; isReadonly: true } + Property { name: "lineCount"; type: "int"; isReadonly: true } + Property { name: "readOnly"; type: "bool" } + Property { name: "selectedText"; type: "string"; isReadonly: true } + Property { name: "selectionEnd"; type: "int"; isReadonly: true } + Property { name: "selectionStart"; type: "int"; isReadonly: true } + Property { name: "text"; type: "string" } + Property { name: "textFormat"; type: "int" } + Property { name: "wrapMode"; type: "int" } + Property { name: "selectByKeyboard"; type: "bool" } + Property { name: "hoveredLink"; type: "string"; isReadonly: true } + Property { name: "backgroundVisible"; type: "bool" } + Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } + Property { name: "textMargin"; type: "double" } + Property { name: "contentWidth"; type: "double"; isReadonly: true } + Property { name: "contentHeight"; type: "double"; isReadonly: true } + Property { name: "textDocument"; type: "QQuickTextDocument"; isReadonly: true; isPointer: true } + Signal { + name: "linkActivated" + Parameter { name: "link"; type: "string" } + } + Signal { + name: "linkHovered" + Parameter { name: "link"; type: "string" } + } Method { - name: "addItem" + name: "append" type: "QVariant" - Parameter { name: "item"; type: "QVariant" } + Parameter { name: "string"; type: "QVariant" } } - } - Component { - prototype: "QQuickFocusScope" - name: "QtQuick.Controls/StackView" - exports: ["QtQuick.Controls/StackView 1.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - Property { name: "busy"; type: "bool"; isReadonly: true } - Property { name: "delegate"; type: "StackViewDelegate_QMLTYPE_167"; isPointer: true } - Property { name: "__currentItem"; type: "QQuickItem"; isPointer: true } - Property { name: "__depth"; type: "int" } - Property { name: "__guard"; type: "bool" } - Property { name: "invalidItemReplacement"; type: "QQmlComponent"; isPointer: true } - Property { name: "initialItem"; type: "QVariant" } - Property { name: "__currentTransition"; type: "QVariant" } - Property { name: "depth"; type: "int"; isReadonly: true } - Property { name: "currentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } + Method { name: "copy"; type: "QVariant" } + Method { name: "cut"; type: "QVariant" } + Method { name: "deselect"; type: "QVariant" } Method { - name: "push" + name: "getFormattedText" type: "QVariant" - Parameter { name: "item"; type: "QVariant" } + Parameter { name: "start"; type: "QVariant" } + Parameter { name: "end"; type: "QVariant" } } Method { - name: "pop" + name: "getText" type: "QVariant" - Parameter { name: "item"; type: "QVariant" } + Parameter { name: "start"; type: "QVariant" } + Parameter { name: "end"; type: "QVariant" } } - Method { name: "clear"; type: "QVariant" } Method { - name: "find" + name: "insert" type: "QVariant" - Parameter { name: "func"; type: "QVariant" } - Parameter { name: "onlySearchLoadedItems"; type: "QVariant" } + Parameter { name: "position"; type: "QVariant" } + Parameter { name: "text"; type: "QVariant" } } Method { - name: "get" + name: "isRightToLeft" type: "QVariant" - Parameter { name: "index"; type: "QVariant" } - Parameter { name: "dontLoad"; type: "QVariant" } + Parameter { name: "start"; type: "QVariant" } + Parameter { name: "end"; type: "QVariant" } } - Method { name: "completeTransition"; type: "QVariant" } Method { - name: "replace" + name: "moveCursorSelection" type: "QVariant" - Parameter { name: "item"; type: "QVariant" } - Parameter { name: "properties"; type: "QVariant" } - Parameter { name: "immediate"; type: "QVariant" } + Parameter { name: "position"; type: "QVariant" } + Parameter { name: "mode"; type: "QVariant" } } + Method { name: "paste"; type: "QVariant" } Method { - name: "__recursionGuard" + name: "positionAt" type: "QVariant" - Parameter { name: "use"; type: "QVariant" } + Parameter { name: "x"; type: "QVariant" } + Parameter { name: "y"; type: "QVariant" } + } + Method { + name: "positionToRectangle" + type: "QVariant" + Parameter { name: "position"; type: "QVariant" } + } + Method { name: "redo"; type: "QVariant" } + Method { + name: "remove" + type: "QVariant" + Parameter { name: "start"; type: "QVariant" } + Parameter { name: "end"; type: "QVariant" } } Method { - name: "__loadElement" + name: "select" + type: "QVariant" + Parameter { name: "start"; type: "QVariant" } + Parameter { name: "end"; type: "QVariant" } + } + Method { name: "selectAll"; type: "QVariant" } + Method { name: "selectWord"; type: "QVariant" } + Method { name: "undo"; type: "QVariant" } + Property { name: "frameVisible"; type: "bool" } + Property { name: "highlightOnFocus"; type: "bool" } + Property { name: "contentItem"; type: "QQuickItem"; isPointer: true } + Property { name: "__scroller"; type: "QQuickItem"; isPointer: true } + Property { name: "__scrollBarTopMargin"; type: "int" } + Property { name: "__viewTopMargin"; type: "int" } + Property { name: "style"; type: "QQmlComponent"; isPointer: true } + Property { name: "__style"; type: "Style_QMLTYPE_2"; isPointer: true } + Property { name: "horizontalScrollBarPolicy"; type: "int" } + Property { name: "verticalScrollBarPolicy"; type: "int" } + Property { name: "viewport"; type: "QQuickItem"; isReadonly: true; isPointer: true } + Property { name: "flickableItem"; type: "QQuickFlickable"; isReadonly: true; isPointer: true } + Property { name: "__wheelAreaScrollSpeed"; type: "double" } + Property { + name: "__horizontalScrollBar" + type: "ScrollBar_QMLTYPE_25" + isReadonly: true + isPointer: true + } + Property { + name: "__verticalScrollBar" + type: "ScrollBar_QMLTYPE_25" + isReadonly: true + isPointer: true + } + } + Component { + prototype: "QQuickFocusScope" + name: "QtQuick.Controls/TextField" + exports: ["QtQuick.Controls/TextField 1.0"] + exportMetaObjectRevisions: [0] + isComposite: true + defaultProperty: "data" + Property { name: "inputMethodComposing"; type: "bool"; isReadonly: true } + Property { name: "selectByMouse"; type: "bool" } + Property { name: "menu"; type: "QQmlComponent"; isPointer: true } + Property { name: "acceptableInput"; type: "bool"; isReadonly: true } + Property { name: "activeFocusOnPress"; type: "bool" } + Property { name: "canPaste"; type: "bool"; isReadonly: true } + Property { name: "canRedo"; type: "bool"; isReadonly: true } + Property { name: "canUndo"; type: "bool"; isReadonly: true } + Property { name: "textColor"; type: "QColor" } + Property { name: "cursorPosition"; type: "int" } + Property { name: "cursorRectangle"; type: "QRectF"; isReadonly: true } + Property { name: "displayText"; type: "string"; isReadonly: true } + Property { name: "echoMode"; type: "int" } + Property { name: "font"; type: "QFont" } + Property { name: "horizontalAlignment"; type: "int" } + Property { name: "effectiveHorizontalAlignment"; type: "int"; isReadonly: true } + Property { name: "verticalAlignment"; type: "int" } + Property { name: "inputMask"; type: "string" } + Property { name: "inputMethodHints"; type: "int" } + Property { name: "length"; type: "int"; isReadonly: true } + Property { name: "maximumLength"; type: "int" } + Property { name: "placeholderText"; type: "string" } + Property { name: "readOnly"; type: "bool" } + Property { name: "selectedText"; type: "string"; isReadonly: true } + Property { name: "selectionEnd"; type: "int"; isReadonly: true } + Property { name: "selectionStart"; type: "int"; isReadonly: true } + Property { name: "text"; type: "string" } + Property { name: "validator"; type: "QValidator"; isPointer: true } + Property { name: "hovered"; type: "bool"; isReadonly: true } + Property { name: "__contentHeight"; type: "double"; isReadonly: true } + Property { name: "__contentWidth"; type: "double"; isReadonly: true } + Property { name: "__baselineOffset"; type: "double" } + Signal { name: "accepted" } + Signal { name: "editingFinished" } + Method { name: "copy"; type: "QVariant" } + Method { name: "cut"; type: "QVariant" } + Method { name: "deselect"; type: "QVariant" } + Method { + name: "getText" type: "QVariant" - Parameter { name: "element"; type: "QVariant" } + Parameter { name: "start"; type: "QVariant" } + Parameter { name: "end"; type: "QVariant" } } Method { - name: "__resolveComponent" + name: "insert" type: "QVariant" - Parameter { name: "unknownObjectType"; type: "QVariant" } - Parameter { name: "element"; type: "QVariant" } + Parameter { name: "position"; type: "QVariant" } + Parameter { name: "text"; type: "QVariant" } } Method { - name: "__cleanup" + name: "isRightToLeft" type: "QVariant" - Parameter { name: "element"; type: "QVariant" } + Parameter { name: "start"; type: "QVariant" } + Parameter { name: "end"; type: "QVariant" } } + Method { name: "paste"; type: "QVariant" } + Method { name: "redo"; type: "QVariant" } Method { - name: "__setStatus" + name: "remove" type: "QVariant" - Parameter { name: "item"; type: "QVariant" } - Parameter { name: "status"; type: "QVariant" } + Parameter { name: "start"; type: "QVariant" } + Parameter { name: "end"; type: "QVariant" } } Method { - name: "__performTransition" + name: "select" type: "QVariant" - Parameter { name: "transition"; type: "QVariant" } + Parameter { name: "start"; type: "QVariant" } + Parameter { name: "end"; type: "QVariant" } } - Method { name: "animationFinished"; type: "QVariant" } + Method { name: "selectAll"; type: "QVariant" } + Method { name: "selectWord"; type: "QVariant" } + Method { name: "undo"; 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.Controls/StackViewDelegate" - exports: ["QtQuick.Controls/StackViewDelegate 1.0"] + prototype: "QQuickText" + name: "QtQuick.Extras.Private/TextSingleton" + exports: ["QtQuick.Extras.Private/TextSingleton 1.0"] exportMetaObjectRevisions: [0] isComposite: true - Property { name: "pushTransition"; type: "QQmlComponent"; isPointer: true } - Property { name: "popTransition"; type: "QQmlComponent"; isPointer: true } - Property { name: "replaceTransition"; type: "QQmlComponent"; isPointer: true } - Method { - name: "getTransition" - type: "QVariant" - Parameter { name: "properties"; type: "QVariant" } - } - Method { - name: "transitionFinished" - type: "QVariant" - Parameter { name: "properties"; type: "QVariant" } - } + isCreatable: false + isSingleton: true + defaultProperty: "data" } Component { - prototype: "QQuickParallelAnimation" - name: "QtQuick.Controls/StackViewTransition" - exports: ["QtQuick.Controls/StackViewTransition 1.0"] + prototype: "QQuickFocusScope" + name: "QtQuick.Extras/ToggleButton" + exports: ["QtQuick.Extras/ToggleButton 1.0"] exportMetaObjectRevisions: [0] isComposite: true - defaultProperty: "animations" - Property { name: "name"; type: "string" } - Property { name: "enterItem"; type: "QQuickItem"; isPointer: true } - Property { name: "exitItem"; type: "QQuickItem"; isPointer: true } - Property { name: "immediate"; type: "bool" } + defaultProperty: "data" + Property { name: "isDefault"; type: "bool" } + Property { name: "menu"; type: "Menu_QMLTYPE_50"; isPointer: true } + Property { name: "checkable"; type: "bool" } + Property { name: "checked"; type: "bool" } + Property { name: "exclusiveGroup"; type: "QQuickExclusiveGroup"; isPointer: true } + Property { name: "action"; type: "QQuickAction"; 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: "QQuickAction"; isPointer: true } + Property { name: "__iconAction"; type: "QQuickAction"; isReadonly: true; isPointer: true } + Property { name: "__effectivePressed"; type: "bool" } + Property { name: "__behavior"; type: "QVariant" } + 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: "QQuickFocusScope" - name: "QtQuick.Controls/StatusBar" - exports: ["QtQuick.Controls/StatusBar 1.0"] + name: "QtQuick.Controls/ToolBar" + exports: ["QtQuick.Controls/ToolBar 1.0"] exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "__content" Property { name: "style"; type: "QQmlComponent"; isPointer: true } Property { name: "__panel"; type: "QQuickItem"; isPointer: true } + Property { name: "__menu"; type: "QVariant" } Property { name: "__style"; type: "QObject"; isReadonly: true; isPointer: true } Property { name: "__content"; type: "QObject"; isList: true; isReadonly: true } Property { name: "contentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } } Component { prototype: "QQuickFocusScope" - name: "QtQuick.Controls/Switch" - exports: ["QtQuick.Controls/Switch 1.1"] - exportMetaObjectRevisions: [1] + name: "QtQuick.Controls/ToolButton" + exports: ["QtQuick.Controls/ToolButton 1.0"] + exportMetaObjectRevisions: [0] isComposite: true defaultProperty: "data" + Property { name: "isDefault"; type: "bool" } + Property { name: "menu"; type: "Menu_QMLTYPE_50"; isPointer: true } + Property { name: "checkable"; type: "bool" } Property { name: "checked"; type: "bool" } - Property { name: "activeFocusOnPress"; type: "bool" } Property { name: "exclusiveGroup"; type: "QQuickExclusiveGroup"; isPointer: true } + Property { name: "action"; type: "QQuickAction"; 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: "QQuickAction"; isPointer: true } + Property { name: "__iconAction"; type: "QQuickAction"; isReadonly: true; isPointer: true } + Property { name: "__effectivePressed"; type: "bool" } + Property { name: "__behavior"; type: "QVariant" } 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: "QQuickLoader" - name: "QtQuick.Controls/Tab" - exports: ["QtQuick.Controls/Tab 1.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "component" - Property { name: "title"; type: "string" } - Property { name: "__inserted"; type: "bool" } - Property { name: "component"; type: "QQmlComponent"; isPointer: true } - } Component { prototype: "QQuickFocusScope" - name: "QtQuick.Controls/TabView" - exports: ["QtQuick.Controls/TabView 1.0"] - exportMetaObjectRevisions: [0] + name: "QtQuick.Controls/TreeView" + exports: ["QtQuick.Controls/TreeView 1.4"] + exportMetaObjectRevisions: [4] isComposite: true - defaultProperty: "data" - Property { name: "currentIndex"; type: "int" } - Property { name: "count"; type: "int"; isReadonly: true } - Property { name: "frameVisible"; type: "bool" } - Property { name: "tabsVisible"; type: "bool" } - Property { name: "tabPosition"; type: "int" } - Property { name: "__tabs"; type: "QQmlListModel"; isPointer: true } - Property { name: "style"; type: "QQmlComponent"; isPointer: true } - Property { name: "__styleItem"; type: "QVariant" } - Property { name: "contentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } - Method { - name: "addTab" - type: "QVariant" - Parameter { name: "title"; type: "QVariant" } - Parameter { name: "component"; type: "QVariant" } + defaultProperty: "__columns" + Property { name: "selection"; type: "QItemSelectionModel"; isPointer: true } + Property { name: "model"; type: "QVariant" } + Property { name: "currentIndex"; type: "QVariant"; isReadonly: true } + Signal { + name: "activated" + Parameter { name: "index"; type: "QVariant" } } - Method { - name: "insertTab" - type: "QVariant" + Signal { + name: "clicked" Parameter { name: "index"; type: "QVariant" } - Parameter { name: "title"; type: "QVariant" } - Parameter { name: "component"; type: "QVariant" } } - Method { - name: "removeTab" - type: "QVariant" + Signal { + name: "doubleClicked" Parameter { name: "index"; type: "QVariant" } } - Method { - name: "moveTab" - type: "QVariant" - Parameter { name: "from"; type: "QVariant" } - Parameter { name: "to"; type: "QVariant" } + Signal { + name: "pressAndHold" + Parameter { name: "index"; type: "QVariant" } } - Method { - name: "getTab" - type: "QVariant" + Signal { + name: "expanded" + Parameter { name: "index"; type: "QVariant" } + } + Signal { + name: "collapsed" Parameter { name: "index"; type: "QVariant" } } Method { - name: "__willRemoveIndex" + name: "isExpanded" type: "QVariant" Parameter { name: "index"; type: "QVariant" } } Method { - name: "__didInsertIndex" + name: "collapse" type: "QVariant" Parameter { name: "index"; type: "QVariant" } } - Method { name: "__setOpacities"; type: "QVariant" } - } - Component { - prototype: "QQuickFocusScope" - name: "QtQuick.Controls/TableView" - exports: ["QtQuick.Controls/TableView 1.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "__columns" - Property { name: "alternatingRowColors"; type: "bool" } - Property { name: "headerVisible"; type: "bool" } - Property { name: "itemDelegate"; type: "QQmlComponent"; isPointer: true } - Property { name: "rowDelegate"; type: "QQmlComponent"; isPointer: true } - Property { name: "headerDelegate"; type: "QQmlComponent"; isPointer: true } - Property { name: "sortIndicatorColumn"; type: "int" } - Property { name: "sortIndicatorVisible"; type: "bool" } - Property { name: "sortIndicatorOrder"; type: "int" } - Property { name: "selectionMode"; type: "int" } - Property { name: "__activateItemOnSingleClick"; type: "bool" } - Property { name: "model"; type: "QVariant" } - Property { name: "backgroundVisible"; type: "bool" } - Property { name: "__columns"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "contentHeader"; type: "QQmlComponent"; isPointer: true } - Property { name: "contentFooter"; type: "QQmlComponent"; isPointer: true } - Property { name: "rowCount"; type: "int"; isReadonly: true } - Property { name: "columnCount"; type: "int"; isReadonly: true } - Property { name: "section"; type: "QQuickViewSection"; isReadonly: true; isPointer: true } - Property { name: "currentRow"; type: "int" } - Property { name: "__currentRowItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "__listView"; type: "QQuickListView"; isReadonly: true; isPointer: true } - Property { - name: "selection" - type: "TableViewSelection_QMLTYPE_196" - isReadonly: true - isPointer: true - } - Signal { - name: "activated" - Parameter { name: "row"; type: "int" } - } - Signal { - name: "clicked" - Parameter { name: "row"; type: "int" } - } - Signal { - name: "doubleClicked" - Parameter { name: "row"; type: "int" } - } - Signal { - name: "pressAndHold" - Parameter { name: "row"; type: "int" } - } Method { - name: "positionViewAtRow" + name: "expand" type: "QVariant" - Parameter { name: "row"; type: "QVariant" } - Parameter { name: "mode"; type: "QVariant" } + Parameter { name: "index"; type: "QVariant" } } Method { - name: "rowAt" + name: "indexAt" type: "QVariant" Parameter { name: "x"; type: "QVariant" } Parameter { name: "y"; type: "QVariant" } } + Property { name: "alternatingRowColors"; type: "bool" } + Property { name: "headerVisible"; type: "bool" } + Property { name: "itemDelegate"; type: "QQmlComponent"; isPointer: true } + Property { name: "rowDelegate"; type: "QQmlComponent"; isPointer: true } + Property { name: "headerDelegate"; type: "QQmlComponent"; isPointer: true } + Property { name: "sortIndicatorColumn"; type: "int" } + Property { name: "sortIndicatorVisible"; type: "bool" } + Property { name: "sortIndicatorOrder"; type: "int" } + Property { name: "selectionMode"; type: "int" } + Property { name: "__viewTypeName"; type: "string" } + Property { name: "__isTreeView"; type: "bool"; isReadonly: true } + Property { name: "__itemDelegateLoader"; type: "QQmlComponent"; isPointer: true } + Property { name: "__activateItemOnSingleClick"; type: "bool" } + Property { name: "__mouseArea"; type: "QQuickItem"; isPointer: true } + Property { name: "__model"; type: "QVariant" } + Property { name: "backgroundVisible"; type: "bool" } + Property { name: "contentHeader"; type: "QQmlComponent"; isPointer: true } + Property { name: "contentFooter"; type: "QQmlComponent"; isPointer: true } + Property { name: "columnCount"; type: "int"; isReadonly: true } + Property { name: "section"; type: "QQuickViewSection"; isReadonly: true; isPointer: true } + Property { name: "__columns"; type: "QObject"; isList: true; isReadonly: true } + Property { name: "__currentRowItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } + Property { name: "__currentRow"; type: "int" } + Property { name: "__listView"; type: "QQuickListView"; isReadonly: true; isPointer: true } Method { name: "addColumn" type: "QVariant" @@ -1986,8 +2229,6 @@ Module { Parameter { name: "index"; type: "QVariant" } } Method { name: "resizeColumnsToContents"; type: "QVariant" } - Method { name: "__decrementCurrentIndex"; type: "QVariant" } - Method { name: "__incrementCurrentIndex"; type: "QVariant" } Property { name: "frameVisible"; type: "bool" } Property { name: "highlightOnFocus"; type: "bool" } Property { name: "contentItem"; type: "QQuickItem"; isPointer: true } @@ -2014,291 +2255,326 @@ Module { isPointer: true } } + Component { + prototype: "QQuickFocusScope" + name: "QtQuick.Extras/Tumbler" + 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" } + } + 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: "QObject" - name: "QtQuick.Controls/TableViewColumn" - exports: ["QtQuick.Controls/TableViewColumn 1.0"] - exportMetaObjectRevisions: [0] + name: "QtQuick.Extras/TumblerColumn" + exports: ["QtQuick.Extras/TumblerColumn 1.2"] + exportMetaObjectRevisions: [2] isComposite: true - Property { name: "__view"; type: "QQuickItem"; isPointer: true } + Property { name: "__tumbler"; type: "QQuickItem"; isPointer: true } Property { name: "__index"; type: "int" } - Property { name: "title"; type: "string" } + Property { name: "__currentIndex"; type: "int" } Property { name: "role"; type: "string" } - Property { name: "width"; type: "int" } - Property { name: "visible"; type: "bool" } - Property { name: "resizable"; type: "bool" } - Property { name: "movable"; type: "bool" } - Property { name: "elideMode"; type: "int" } - Property { name: "horizontalAlignment"; type: "int" } Property { name: "delegate"; type: "QQmlComponent"; isPointer: true } - Method { name: "resizeToContents"; type: "QVariant" } + 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: "model"; type: "QVariant" } + Property { name: "currentIndex"; type: "int"; isReadonly: true } } + Component { - prototype: "QQuickFocusScope" - name: "QtQuick.Controls/TextArea" - exports: ["QtQuick.Controls/TextArea 1.3"] - exportMetaObjectRevisions: [3] - isComposite: true + name: "QQuickWindow" defaultProperty: "data" - Property { name: "inputMethodComposing"; type: "bool"; isReadonly: true } - Property { name: "tabChangesFocus"; type: "bool" } - Property { name: "selectByMouse"; type: "bool" } - Property { name: "menu"; type: "QQmlComponent"; isPointer: true } - Property { name: "activeFocusOnPress"; type: "bool" } - Property { name: "baseUrl"; type: "QUrl" } - Property { name: "canPaste"; type: "bool"; isReadonly: true } - Property { name: "canRedo"; type: "bool"; isReadonly: true } - Property { name: "canUndo"; type: "bool"; isReadonly: true } - Property { name: "textColor"; type: "QColor" } - Property { name: "cursorPosition"; type: "int" } - Property { name: "cursorRectangle"; type: "QRectF"; isReadonly: true } - Property { name: "font"; type: "QFont" } - Property { name: "horizontalAlignment"; type: "int" } - Property { name: "effectiveHorizontalAlignment"; type: "int"; isReadonly: true } - Property { name: "verticalAlignment"; type: "int" } - Property { name: "inputMethodHints"; type: "int" } - Property { name: "length"; type: "int"; isReadonly: true } - Property { name: "lineCount"; type: "int"; isReadonly: true } - Property { name: "readOnly"; type: "bool" } - Property { name: "selectedText"; type: "string"; isReadonly: true } - Property { name: "selectionEnd"; type: "int"; isReadonly: true } - Property { name: "selectionStart"; type: "int"; isReadonly: true } - Property { name: "text"; type: "string" } - Property { name: "textFormat"; type: "int" } - Property { name: "wrapMode"; type: "int" } - Property { name: "selectByKeyboard"; type: "bool" } - Property { name: "hoveredLink"; type: "string"; isReadonly: true } - Property { name: "backgroundVisible"; type: "bool" } + prototype: "QWindow" + exports: ["QtQuick.Window/Window 2.0"] + exportMetaObjectRevisions: [0] + Enum { + name: "SceneGraphError" + values: { + "ContextNotAvailable": 1 + } + } Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "textMargin"; type: "double" } - Property { name: "contentWidth"; type: "double"; isReadonly: true } - Property { name: "contentHeight"; type: "double"; isReadonly: true } - Property { name: "textDocument"; type: "QQuickTextDocument"; isReadonly: true; isPointer: true } + Property { name: "color"; type: "QColor" } + Property { name: "contentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } + Property { + name: "activeFocusItem" + revision: 1 + type: "QQuickItem" + isReadonly: true + isPointer: true + } + Signal { name: "frameSwapped" } + Signal { + name: "openglContextCreated" + revision: 2 + Parameter { name: "context"; type: "QOpenGLContext"; isPointer: true } + } + Signal { name: "sceneGraphInitialized" } + Signal { name: "sceneGraphInvalidated" } + Signal { name: "beforeSynchronizing" } + Signal { name: "afterSynchronizing"; revision: 2 } + Signal { name: "beforeRendering" } + Signal { name: "afterRendering" } + Signal { name: "afterAnimating"; revision: 2 } + Signal { name: "sceneGraphAboutToStop"; revision: 2 } + Signal { + name: "closing" + revision: 1 + Parameter { name: "close"; type: "QQuickCloseEvent"; isPointer: true } + } + Signal { + name: "colorChanged" + Parameter { type: "QColor" } + } + Signal { name: "activeFocusItemChanged"; revision: 1 } + Signal { + name: "sceneGraphError" + revision: 2 + Parameter { name: "error"; type: "QQuickWindow::SceneGraphError" } + Parameter { name: "message"; type: "string" } + } + Method { name: "update" } + Method { name: "releaseResources" } + } + Component { + name: "QQuickWindowAttached" + prototype: "QObject" + Property { name: "visibility"; type: "QWindow::Visibility"; isReadonly: true } + Property { name: "active"; type: "bool"; isReadonly: true } + Property { name: "activeFocusItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } + Property { name: "contentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } + Property { name: "width"; type: "int"; isReadonly: true } + Property { name: "height"; type: "int"; isReadonly: true } + } + Component { + name: "QQuickWindowQmlImpl" + defaultProperty: "data" + prototype: "QQuickWindow" + exports: ["QtQuick.Window/Window 2.1", "QtQuick.Window/Window 2.2"] + exportMetaObjectRevisions: [0, 1] + attachedType: "QQuickWindowAttached" + Property { name: "visible"; type: "bool" } + Property { name: "visibility"; type: "Visibility" } + Signal { + name: "visibleChanged" + Parameter { name: "arg"; type: "bool" } + } + Signal { + name: "visibilityChanged" + Parameter { name: "visibility"; type: "QWindow::Visibility" } + } + } + Component { + name: "QWindow" + prototype: "QObject" + Enum { + name: "Visibility" + values: { + "Hidden": 0, + "AutomaticVisibility": 1, + "Windowed": 2, + "Minimized": 3, + "Maximized": 4, + "FullScreen": 5 + } + } + Property { name: "title"; type: "string" } + Property { name: "modality"; type: "Qt::WindowModality" } + Property { name: "flags"; type: "Qt::WindowFlags" } + Property { name: "x"; type: "int" } + Property { name: "y"; type: "int" } + Property { name: "width"; type: "int" } + Property { name: "height"; type: "int" } + Property { name: "minimumWidth"; type: "int" } + Property { name: "minimumHeight"; type: "int" } + Property { name: "maximumWidth"; type: "int" } + Property { name: "maximumHeight"; type: "int" } + Property { name: "visible"; type: "bool" } + Property { name: "active"; revision: 1; type: "bool"; isReadonly: true } + Property { name: "visibility"; revision: 1; type: "Visibility" } + Property { name: "contentOrientation"; type: "Qt::ScreenOrientation" } + Property { name: "opacity"; revision: 1; type: "double" } + Signal { + name: "screenChanged" + Parameter { name: "screen"; type: "QScreen"; isPointer: true } + } + Signal { + name: "modalityChanged" + Parameter { name: "modality"; type: "Qt::WindowModality" } + } + Signal { + name: "windowStateChanged" + Parameter { name: "windowState"; type: "Qt::WindowState" } + } + Signal { + name: "windowTitleChanged" + revision: 2 + Parameter { name: "title"; type: "string" } + } + Signal { + name: "xChanged" + Parameter { name: "arg"; type: "int" } + } + Signal { + name: "yChanged" + Parameter { name: "arg"; type: "int" } + } + Signal { + name: "widthChanged" + Parameter { name: "arg"; type: "int" } + } + Signal { + name: "heightChanged" + Parameter { name: "arg"; type: "int" } + } + Signal { + name: "minimumWidthChanged" + Parameter { name: "arg"; type: "int" } + } + Signal { + name: "minimumHeightChanged" + Parameter { name: "arg"; type: "int" } + } Signal { - name: "linkActivated" - Parameter { name: "link"; type: "string" } + name: "maximumWidthChanged" + Parameter { name: "arg"; type: "int" } } Signal { - name: "linkHovered" - Parameter { name: "link"; type: "string" } + name: "maximumHeightChanged" + Parameter { name: "arg"; type: "int" } } - Method { - name: "append" - type: "QVariant" - Parameter { name: "string"; type: "QVariant" } + Signal { + name: "visibleChanged" + Parameter { name: "arg"; type: "bool" } } - Method { name: "copy"; type: "QVariant" } - Method { name: "cut"; type: "QVariant" } - Method { name: "deselect"; type: "QVariant" } - Method { - name: "getFormattedText" - type: "QVariant" - Parameter { name: "start"; type: "QVariant" } - Parameter { name: "end"; type: "QVariant" } + Signal { + name: "visibilityChanged" + revision: 1 + Parameter { name: "visibility"; type: "QWindow::Visibility" } } - Method { - name: "getText" - type: "QVariant" - Parameter { name: "start"; type: "QVariant" } - Parameter { name: "end"; type: "QVariant" } + Signal { name: "activeChanged"; revision: 1 } + Signal { + name: "contentOrientationChanged" + Parameter { name: "orientation"; type: "Qt::ScreenOrientation" } } - Method { - name: "insert" - type: "QVariant" - Parameter { name: "position"; type: "QVariant" } - Parameter { name: "text"; type: "QVariant" } + Signal { + name: "focusObjectChanged" + Parameter { name: "object"; type: "QObject"; isPointer: true } } - Method { - name: "isRightToLeft" - type: "QVariant" - Parameter { name: "start"; type: "QVariant" } - Parameter { name: "end"; type: "QVariant" } + Signal { + name: "opacityChanged" + revision: 1 + Parameter { name: "opacity"; type: "double" } } + Method { name: "requestActivate"; revision: 1 } Method { - name: "moveCursorSelection" - type: "QVariant" - Parameter { name: "position"; type: "QVariant" } - Parameter { name: "mode"; type: "QVariant" } + name: "setVisible" + Parameter { name: "visible"; type: "bool" } } - Method { name: "paste"; type: "QVariant" } + Method { name: "show" } + Method { name: "hide" } + Method { name: "showMinimized" } + Method { name: "showMaximized" } + Method { name: "showFullScreen" } + Method { name: "showNormal" } + Method { name: "close"; type: "bool" } + Method { name: "raise" } + Method { name: "lower" } Method { - name: "positionAt" - type: "QVariant" - Parameter { name: "x"; type: "QVariant" } - Parameter { name: "y"; type: "QVariant" } + name: "setTitle" + Parameter { type: "string" } } Method { - name: "positionToRectangle" - type: "QVariant" - Parameter { name: "position"; type: "QVariant" } + name: "setX" + Parameter { name: "arg"; type: "int" } } - Method { name: "redo"; type: "QVariant" } Method { - name: "remove" - type: "QVariant" - Parameter { name: "start"; type: "QVariant" } - Parameter { name: "end"; type: "QVariant" } + name: "setY" + Parameter { name: "arg"; type: "int" } } Method { - name: "select" - type: "QVariant" - Parameter { name: "start"; type: "QVariant" } - Parameter { name: "end"; type: "QVariant" } + name: "setWidth" + Parameter { name: "arg"; type: "int" } } - Method { name: "selectAll"; type: "QVariant" } - Method { name: "selectWord"; type: "QVariant" } - Method { name: "undo"; type: "QVariant" } - Property { name: "frameVisible"; type: "bool" } - Property { name: "highlightOnFocus"; type: "bool" } - Property { name: "contentItem"; type: "QQuickItem"; isPointer: true } - Property { name: "__scroller"; type: "QQuickItem"; isPointer: true } - Property { name: "__scrollBarTopMargin"; type: "int" } - Property { name: "__viewTopMargin"; type: "int" } - Property { name: "style"; type: "QQmlComponent"; isPointer: true } - Property { name: "__style"; type: "Style_QMLTYPE_2"; isPointer: true } - Property { name: "horizontalScrollBarPolicy"; type: "int" } - Property { name: "verticalScrollBarPolicy"; type: "int" } - Property { name: "viewport"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "flickableItem"; type: "QQuickFlickable"; isReadonly: true; isPointer: true } - Property { name: "__wheelAreaScrollSpeed"; type: "double" } - Property { - name: "__horizontalScrollBar" - type: "ScrollBar_QMLTYPE_25" - isReadonly: true - isPointer: true + Method { + name: "setHeight" + Parameter { name: "arg"; type: "int" } } - Property { - name: "__verticalScrollBar" - type: "ScrollBar_QMLTYPE_25" - isReadonly: true - isPointer: true + Method { + name: "setMinimumWidth" + Parameter { name: "w"; type: "int" } } - } - Component { - prototype: "QQuickFocusScope" - name: "QtQuick.Controls/TextField" - exports: ["QtQuick.Controls/TextField 1.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - Property { name: "inputMethodComposing"; type: "bool"; isReadonly: true } - Property { name: "selectByMouse"; type: "bool" } - Property { name: "menu"; type: "QQmlComponent"; isPointer: true } - Property { name: "acceptableInput"; type: "bool"; isReadonly: true } - Property { name: "activeFocusOnPress"; type: "bool" } - Property { name: "canPaste"; type: "bool"; isReadonly: true } - Property { name: "canRedo"; type: "bool"; isReadonly: true } - Property { name: "canUndo"; type: "bool"; isReadonly: true } - Property { name: "textColor"; type: "QColor" } - Property { name: "cursorPosition"; type: "int" } - Property { name: "cursorRectangle"; type: "QRectF"; isReadonly: true } - Property { name: "displayText"; type: "string"; isReadonly: true } - Property { name: "echoMode"; type: "int" } - Property { name: "font"; type: "QFont" } - Property { name: "horizontalAlignment"; type: "int" } - Property { name: "effectiveHorizontalAlignment"; type: "int"; isReadonly: true } - Property { name: "verticalAlignment"; type: "int" } - Property { name: "inputMask"; type: "string" } - Property { name: "inputMethodHints"; type: "int" } - Property { name: "length"; type: "int"; isReadonly: true } - Property { name: "maximumLength"; type: "int" } - Property { name: "placeholderText"; type: "string" } - Property { name: "readOnly"; type: "bool" } - Property { name: "selectedText"; type: "string"; isReadonly: true } - Property { name: "selectionEnd"; type: "int"; isReadonly: true } - Property { name: "selectionStart"; type: "int"; isReadonly: true } - Property { name: "text"; type: "string" } - Property { name: "validator"; type: "QValidator"; isPointer: true } - Property { name: "hovered"; type: "bool"; isReadonly: true } - Property { name: "__contentHeight"; type: "double"; isReadonly: true } - Property { name: "__contentWidth"; type: "double"; isReadonly: true } - Property { name: "__baselineOffset"; type: "double" } - Signal { name: "accepted" } - Signal { name: "editingFinished" } - Method { name: "copy"; type: "QVariant" } - Method { name: "cut"; type: "QVariant" } - Method { name: "deselect"; type: "QVariant" } Method { - name: "getText" - type: "QVariant" - Parameter { name: "start"; type: "QVariant" } - Parameter { name: "end"; type: "QVariant" } + name: "setMinimumHeight" + Parameter { name: "h"; type: "int" } } Method { - name: "insert" - type: "QVariant" - Parameter { name: "position"; type: "QVariant" } - Parameter { name: "text"; type: "QVariant" } + name: "setMaximumWidth" + Parameter { name: "w"; type: "int" } } Method { - name: "isRightToLeft" - type: "QVariant" - Parameter { name: "start"; type: "QVariant" } - Parameter { name: "end"; type: "QVariant" } + name: "setMaximumHeight" + Parameter { name: "h"; type: "int" } } - Method { name: "paste"; type: "QVariant" } - Method { name: "redo"; type: "QVariant" } Method { - name: "select" - type: "QVariant" - Parameter { name: "start"; type: "QVariant" } - Parameter { name: "end"; type: "QVariant" } + name: "alert" + revision: 1 + Parameter { name: "msec"; type: "int" } } - Method { name: "selectAll"; type: "QVariant" } - Method { name: "selectWord"; type: "QVariant" } - Method { name: "undo"; 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: "QQuickFocusScope" - name: "QtQuick.Controls/ToolBar" - exports: ["QtQuick.Controls/ToolBar 1.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "__content" - Property { name: "style"; type: "QQmlComponent"; isPointer: true } - Property { name: "__panel"; type: "QQuickItem"; isPointer: true } - Property { name: "__menu"; type: "QVariant" } - Property { name: "__style"; type: "QObject"; isReadonly: true; isPointer: true } - Property { name: "__content"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "contentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } - } - Component { - prototype: "QQuickFocusScope" - name: "QtQuick.Controls/ToolButton" - exports: ["QtQuick.Controls/ToolButton 1.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - Property { name: "isDefault"; type: "bool" } - Property { name: "menu"; type: "Menu_QMLTYPE_49"; isPointer: true } - Property { name: "checkable"; type: "bool" } - Property { name: "checked"; type: "bool" } - Property { name: "exclusiveGroup"; type: "QQuickExclusiveGroup"; isPointer: true } - Property { name: "action"; type: "QQuickAction"; 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: "QQuickAction"; isPointer: true } - Property { name: "__iconAction"; type: "QQuickAction"; isReadonly: true; isPointer: true } - Property { name: "__effectivePressed"; type: "bool" } - Property { name: "__behavior"; type: "QVariant" } - 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 } + Method { name: "requestUpdate"; revision: 3 } } } -- cgit v1.2.1 From a7397a37145cd226f0a8a7bf89bd51cdc1b69025 Mon Sep 17 00:00:00 2001 From: Marco Benelli Date: Thu, 23 Jul 2015 10:45:23 +0200 Subject: Define __parentContentItem as null if __parentMenu is null. Change-Id: I1b3f8fb8861499e55c34690580ad2d5d15dfa55f Reviewed-by: Thomas Hartmann Reviewed-by: Gabriel de Dietrich --- src/controls/Menu.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/controls/Menu.qml b/src/controls/Menu.qml index 7334c28c..037fa550 100644 --- a/src/controls/Menu.qml +++ b/src/controls/Menu.qml @@ -146,7 +146,7 @@ MenuPrivate { /*! \internal */ property bool __usingDefaultStyle: false /*! \internal */ - property var __parentContentItem: __parentMenu.__contentItem + property var __parentContentItem: __parentMenu ? __parentMenu.__contentItem : null /*! \internal */ property int __currentIndex: -1 /*! \internal */ -- cgit v1.2.1 From b35b0d60c8252b44e21e53922cba9c3a2d1abbc1 Mon Sep 17 00:00:00 2001 From: Gabriel de Dietrich Date: Tue, 22 Sep 2015 13:52:40 +0200 Subject: ScrollViewStyle: Avoid division by zero in handle positioning Change-Id: Iceef723a407f49d36b288e50df3dec9debbe9ba7 Reviewed-by: J-P Nurmi Reviewed-by: Mitch Curtis --- src/controls/Styles/Base/ScrollViewStyle.qml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/controls/Styles/Base/ScrollViewStyle.qml b/src/controls/Styles/Base/ScrollViewStyle.qml index f3478646..ed72951f 100644 --- a/src/controls/Styles/Base/ScrollViewStyle.qml +++ b/src/controls/Styles/Base/ScrollViewStyle.qml @@ -377,8 +377,8 @@ Style { width: __styleData.horizontal ? extent : implicitWidth anchors.top: bg.top anchors.left: bg.left - anchors.topMargin: __styleData.horizontal ? 0 : -handleOverlap + (2 * begin * (bg.height + (2 * handleOverlap) - extent) + range) / (2 * range) - anchors.leftMargin: __styleData.horizontal ? -handleOverlap + (2 * begin * (bg.width + (2 * handleOverlap) - extent) + range) / (2 * range) : 0 + anchors.topMargin: __styleData.horizontal || range === 0 ? 0 : -handleOverlap + (2 * begin * (bg.height + (2 * handleOverlap) - extent) + range) / (2 * range) + anchors.leftMargin: __styleData.horizontal && range !== 0 ? -handleOverlap + (2 * begin * (bg.width + (2 * handleOverlap) - extent) + range) / (2 * range) : 0 sourceComponent: handle property QtObject styleData: QtObject { readonly property bool hovered: activeControl === "handle" -- cgit v1.2.1 From 6a9c9710aa7f2b7bd6fd09f27f8bb352d496bc25 Mon Sep 17 00:00:00 2001 From: Gabriel de Dietrich Date: Fri, 25 Sep 2015 11:06:42 +0200 Subject: Menu: Fix crash when running the event loop on item trigger We are obviously deleting the menu popup contents too early. A fix and ammendment for QTBUG-45182, QTBUG-47682 and QTBUG-48382 is in progress and will be merged in after 5.5.1. This effectively reverts 3799188e704e48ff8e9aa72. Task-number: QTBUG-48382 Change-Id: I38c9e20d710d0bf41810640e5bf83f477abf2934 Reviewed-by: J-P Nurmi --- src/controls/Menu.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/controls/Menu.qml b/src/controls/Menu.qml index 0eb0c357..7334c28c 100644 --- a/src/controls/Menu.qml +++ b/src/controls/Menu.qml @@ -150,7 +150,7 @@ MenuPrivate { /*! \internal */ property int __currentIndex: -1 /*! \internal */ - onAboutToHide: { __currentIndex = -1; __destroyMenuPopup() } + onAboutToHide: __currentIndex = -1 on__MenuPopupDestroyed: contentLoader.active = false onPopupVisibleChanged: { if (__popupVisible) -- cgit v1.2.1 From 79092d8ab8f5c02c5d880d33f9869c034f0f933d Mon Sep 17 00:00:00 2001 From: Gabriel de Dietrich Date: Thu, 24 Sep 2015 16:08:34 +0200 Subject: MenuBar: Refactor logic for setting the current menu Among other things, we removed one connection object per menu delegate. We also made the logic more predictable and less dependent on property changes order. Task-number: QTBUG-48382 Change-Id: Ic97a7bf9c4ac8ff07f98bdd4a420e19bd228a6f1 Reviewed-by: J-P Nurmi --- src/controls/MenuBar.qml | 81 +++++++++++++++++++++++++++--------------------- 1 file changed, 45 insertions(+), 36 deletions(-) diff --git a/src/controls/MenuBar.qml b/src/controls/MenuBar.qml index be182e29..eddd48cd 100644 --- a/src/controls/MenuBar.qml +++ b/src/controls/MenuBar.qml @@ -146,11 +146,41 @@ MenuBarPrivate { property bool altPressedAgain: false property var mnemonicsMap: ({}) + function openMenuAtIndex(index) { + if (openedMenuIndex === index) + return; + + var oldIndex = openedMenuIndex + openedMenuIndex = index + + if (oldIndex !== -1) { + var menu = root.menus[oldIndex] + if (menu.__popupVisible) { + menu.__dismissMenu() + menu.__destroyAllMenuPopups() + } + } + + if (openedMenuIndex !== -1) { + menu = root.menus[openedMenuIndex] + if (menu.enabled) { + if (menu.__usingDefaultStyle) + menu.style = d.style.menuStyle + + var xPos = row.LayoutMirroring.enabled ? menuItemLoader.width : 0 + menu.__popup(Qt.rect(xPos, menuBarLoader.height - d.heightPadding, 0, 0), 0) + + if (preselectMenuItem) + menu.__currentIndex = 0 + } + } + } + function dismissActiveFocus(event, reason) { if (reason) { altPressedAgain = false altPressed = false - openedMenuIndex = -1 + openMenuAtIndex(-1) root.__contentItem.parent.forceActiveFocus() } else { event.accepted = false @@ -160,7 +190,7 @@ MenuBarPrivate { function maybeOpenFirstMenu(event) { if (altPressed && openedMenuIndex === -1) { preselectMenuItem = true - openedMenuIndex = 0 + openMenuAtIndex(0) } else { event.accepted = false } @@ -197,7 +227,7 @@ MenuBarPrivate { idx-- if (idx >= 0) { d.preselectMenuItem = true - d.openedMenuIndex = idx + d.openMenuAtIndex(idx) } } else { event.accepted = false; @@ -211,7 +241,7 @@ MenuBarPrivate { idx++ if (idx < root.menus.length) { d.preselectMenuItem = true - d.openedMenuIndex = idx + d.openMenuAtIndex(idx) } } else { event.accepted = false; @@ -233,7 +263,7 @@ MenuBarPrivate { Accessible.role: Accessible.MenuItem Accessible.name: StyleHelpers.removeMnemonics(opts.text) - Accessible.onPressAction: d.openedMenuIndex = opts.index + Accessible.onPressAction: d.openMenuAtIndex(opts.index) property var styleData: QtObject { id: opts @@ -254,35 +284,18 @@ MenuBarPrivate { visible: __menuItem.visible Connections { - target: d - onOpenedMenuIndexChanged: { - if (!__menuItem.enabled) - return; + target: __menuItem + onAboutToHide: { if (d.openedMenuIndex === index) { - if (__menuItem.__usingDefaultStyle) - __menuItem.style = d.style.menuStyle - __menuItem.__popup(Qt.rect(row.LayoutMirroring.enabled ? menuItemLoader.width : 0, - menuBarLoader.height - d.heightPadding, 0, 0), 0) - if (d.preselectMenuItem) - __menuItem.__currentIndex = 0 - } else if (__menuItem.__popupVisible) { - __menuItem.__dismissMenu() - __menuItem.__destroyAllMenuPopups() + d.openMenuAtIndex(-1) + menuMouseArea.hoveredItem = null } } } - Connections { - target: __menuItem - onPopupVisibleChanged: { - if (!__menuItem.__popupVisible && d.openedMenuIndex === index) - d.openedMenuIndex = -1 - } - } - Connections { target: __menuItem.__action - onTriggered: d.openedMenuIndex = __menuItemIndex + onTriggered: d.openMenuAtIndex(__menuItemIndex) } Component.onCompleted: { @@ -303,26 +316,22 @@ MenuBarPrivate { hoverEnabled: Settings.hoverEnabled onPositionChanged: updateCurrentItem(mouse) - onPressed: { - if (updateCurrentItem(mouse)) { - d.preselectMenuItem = false - d.openedMenuIndex = currentItem.__menuItemIndex - } - } + onPressed: updateCurrentItem(mouse) onExited: hoveredItem = null property Item currentItem: null property Item hoveredItem: null function updateCurrentItem(mouse) { var pos = mapToItem(row, mouse.x, mouse.y) - if (!hoveredItem || !hoveredItem.contains(Qt.point(pos.x - currentItem.x, pos.y - currentItem.y))) { + if (pressed || !hoveredItem + || !hoveredItem.contains(Qt.point(pos.x - currentItem.x, pos.y - currentItem.y))) { hoveredItem = row.childAt(pos.x, pos.y) if (!hoveredItem) return false; currentItem = hoveredItem - if (d.openedMenuIndex !== -1) { + if (pressed || d.openedMenuIndex !== -1) { d.preselectMenuItem = false - d.openedMenuIndex = currentItem.__menuItemIndex + d.openMenuAtIndex(currentItem.__menuItemIndex) } } return true; -- cgit v1.2.1 From b27a01a86e614207025e569926d0c419857e8965 Mon Sep 17 00:00:00 2001 From: Gabriel de Dietrich Date: Thu, 24 Sep 2015 19:56:23 +0200 Subject: Menus: Clean popup hide and destroy logic When a menu popup gets closed it usually needs to be destroyed right away since we don't recycle its contents. There is an exception, however, and it's when he user triggers a menu item. In this case, we need to proceed in three steps. First, we hide the menu popup, then we emit the triggered signal, and when that one returns, the menu contents can be disposed. If we did all in a single step, we may end up with a crash since we don't support deleting a QtQuick item while it's running a signal handler. Delayed deletions don't work either in the case when the triggered handler ends up running the event loop. Task-number: QTBUG-45182 Task-number: QTBUG-47682 Task-number: QTBUG-48382 Change-Id: Ic39717e09f38df602f641250cd81cf4931863db6 Reviewed-by: J-P Nurmi --- src/controls/ComboBox.qml | 3 +- src/controls/MenuBar.qml | 6 +-- src/controls/Private/EditMenu_base.qml | 3 +- src/controls/Private/MenuContentItem.qml | 28 ++++++------ src/controls/qquickmenu.cpp | 71 +++++++++++++++++++++++++------ src/controls/qquickmenu_p.h | 13 ++++-- src/controls/qquickmenuitem.cpp | 5 +++ src/controls/qquickpopupwindow.cpp | 2 +- tests/auto/controls/data/tst_combobox.qml | 4 +- 9 files changed, 93 insertions(+), 42 deletions(-) diff --git a/src/controls/ComboBox.qml b/src/controls/ComboBox.qml index d0940772..a2eff0b6 100644 --- a/src/controls/ComboBox.qml +++ b/src/controls/ComboBox.qml @@ -626,8 +626,7 @@ Control { function toggleShow() { if (popup.__popupVisible) { - popup.__dismissMenu() - popup.__destroyAllMenuPopups() + popup.__dismissAndDestroy() } else { if (items[__selectedIndex]) items[__selectedIndex].checked = true diff --git a/src/controls/MenuBar.qml b/src/controls/MenuBar.qml index eddd48cd..444185cc 100644 --- a/src/controls/MenuBar.qml +++ b/src/controls/MenuBar.qml @@ -155,10 +155,8 @@ MenuBarPrivate { if (oldIndex !== -1) { var menu = root.menus[oldIndex] - if (menu.__popupVisible) { - menu.__dismissMenu() - menu.__destroyAllMenuPopups() - } + if (menu.__popupVisible) + menu.__dismissAndDestroy() } if (openedMenuIndex !== -1) { diff --git a/src/controls/Private/EditMenu_base.qml b/src/controls/Private/EditMenu_base.qml index e44ff599..15fe8d69 100644 --- a/src/controls/Private/EditMenu_base.qml +++ b/src/controls/Private/EditMenu_base.qml @@ -161,8 +161,7 @@ Item { if (control.menu) { var menu = getMenuInstance(); - menu.__dismissMenu(); - menu.__destroyAllMenuPopups(); + menu.__dismissAndDestroy(); var menuPos = mapToItem(null, mouse.x, mouse.y) menu.__popup(Qt.rect(menuPos.x, menuPos.y, 0, 0), -1, MenuPrivate.EditMenu); } diff --git a/src/controls/Private/MenuContentItem.qml b/src/controls/Private/MenuContentItem.qml index 07edea2f..a0b346c4 100644 --- a/src/controls/Private/MenuContentItem.qml +++ b/src/controls/Private/MenuContentItem.qml @@ -80,16 +80,16 @@ Loader { function triggerCurrent() { var item = content.menuItemAt(__menu.__currentIndex) if (item) - content.triggered(item) + triggerAndDismiss(item) } function triggerAndDismiss(item) { - if (item && item.styleData.type !== MenuItemType.Separator) { - __menu.__dismissMenu() - if (item.styleData.type !== MenuItemType.Menu) - item.__menuItem.trigger() - __menu.__destroyAllMenuPopups() - } + if (!item) + return; + if (item.styleData.type === MenuItemType.Separator) + __menu.__dismissAndDestroy() + else if (item.styleData.type === MenuItemType.Item) + item.__menuItem.trigger() } } @@ -112,7 +112,7 @@ Loader { } } - Keys.onEscapePressed: __menu.__dismissMenu() + Keys.onEscapePressed: __menu.__dismissAndDestroy() Keys.onDownPressed: { if (__menu.__currentIndex < 0) @@ -132,10 +132,8 @@ Loader { } Keys.onLeftPressed: { - if ((event.accepted = __menu.__parentMenu.hasOwnProperty("title"))) { - __menu.__closeMenu() - __menu.__destroyMenuPopup() - } + if ((event.accepted = __menu.__parentMenu.hasOwnProperty("title"))) + __menu.__closeAndDestroy() } Keys.onRightPressed: { @@ -246,10 +244,8 @@ Loader { id: closeMenuTimer interval: 1 onTriggered: { - if (__menu.__currentIndex !== __menuItemIndex) { - __menuItem.__closeMenu() - __menuItem.__destroyMenuPopup() - } + if (__menu.__currentIndex !== __menuItemIndex) + __menuItem.__closeAndDestroy() } } diff --git a/src/controls/qquickmenu.cpp b/src/controls/qquickmenu.cpp index 617a3d03..beabe65b 100644 --- a/src/controls/qquickmenu.cpp +++ b/src/controls/qquickmenu.cpp @@ -265,14 +265,15 @@ QQuickMenu::QQuickMenu(QObject *parent) m_popupVisible(false), m_containersCount(0), m_xOffset(0), - m_yOffset(0) + m_yOffset(0), + m_triggerCount(0) { connect(this, SIGNAL(__textChanged()), this, SIGNAL(titleChanged())); m_platformMenu = QGuiApplicationPrivate::platformTheme()->createPlatformMenu(); if (m_platformMenu) { connect(m_platformMenu, SIGNAL(aboutToShow()), this, SIGNAL(aboutToShow())); - connect(m_platformMenu, SIGNAL(aboutToHide()), this, SLOT(__closeMenu())); + connect(m_platformMenu, SIGNAL(aboutToHide()), this, SLOT(hideMenu())); if (platformItem()) platformItem()->setMenu(m_platformMenu); } @@ -415,7 +416,7 @@ void QQuickMenu::popup() void QQuickMenu::__popup(const QRectF &targetRect, int atItemIndex, MenuType menuType) { if (popupVisible()) { - __closeMenu(); + hideMenu(); // Mac and Windows would normally move the menu under the cursor, so we should not // return here. However, very often we want to re-contextualize the menu, and this // has to be done at the application level. @@ -488,14 +489,30 @@ QRect QQuickMenu::popupGeometry() const return m_popupWindow->geometry(); } -void QQuickMenu::__closeMenu() +void QQuickMenu::prepareItemTrigger(QQuickMenuItem *) +{ + m_triggerCount++; + __dismissMenu(); +} + +void QQuickMenu::concludeItemTrigger(QQuickMenuItem *) +{ + if (--m_triggerCount == 0) + destroyAllMenuPopups(); +} + +/*! + * \internal + * Close this menu's popup window. Emits aboutToHide and sets __popupVisible to false. + */ +void QQuickMenu::hideMenu() { if (m_popupVisible) { emit aboutToHide(); setPopupVisible(false); } - if (m_popupWindow) - m_popupWindow->setVisible(false); + if (m_popupWindow && m_popupWindow->isVisible()) + m_popupWindow->hide(); m_parentWindow = 0; } @@ -512,6 +529,12 @@ QQuickMenuPopupWindow *QQuickMenu::topMenuPopup() const return 0; } +/*! + * \internal + * Dismiss all the menus this menu is attached to, bottom-up. + * In QQuickPopupWindow, before closing, dismissPopup() emits popupDismissed() + * which is connected to dismissPopup() on any child popup. + */ void QQuickMenu::__dismissMenu() { if (m_platformMenu) { @@ -521,14 +544,22 @@ void QQuickMenu::__dismissMenu() } } +/*! + * \internal + * Called when the popup window visible property changes. + */ void QQuickMenu::windowVisibleChanged(bool v) { if (!v) { - if (m_popupWindow && qobject_cast(m_popupWindow->transientParent())) { - m_popupWindow->transientParent()->setMouseGrabEnabled(true); - m_popupWindow->transientParent()->setKeyboardGrabEnabled(true); + if (m_popupWindow) { + QQuickMenuPopupWindow *parentMenuPopup = qobject_cast(m_popupWindow->transientParent()); + if (parentMenuPopup) { + parentMenuPopup->setMouseGrabEnabled(true); + parentMenuPopup->setKeyboardGrabEnabled(true); + } } - __closeMenu(); + if (m_popupVisible) + __closeAndDestroy(); } } @@ -538,18 +569,34 @@ void QQuickMenu::clearPopupWindow() emit __menuPopupDestroyed(); } -void QQuickMenu::__destroyMenuPopup() +void QQuickMenu::destroyMenuPopup() { + if (m_triggerCount > 0) + return; if (m_popupWindow) m_popupWindow->setToBeDeletedLater(); } -void QQuickMenu::__destroyAllMenuPopups() { +void QQuickMenu::destroyAllMenuPopups() { + if (m_triggerCount > 0) + return; QQuickMenuPopupWindow *popup = topMenuPopup(); if (popup) popup->setToBeDeletedLater(); } +void QQuickMenu::__closeAndDestroy() +{ + hideMenu(); + destroyMenuPopup(); +} + +void QQuickMenu::__dismissAndDestroy() +{ + __dismissMenu(); + destroyAllMenuPopups(); +} + void QQuickMenu::itemIndexToListIndex(int itemIndex, int *listIndex, int *containerIndex) const { *listIndex = -1; diff --git a/src/controls/qquickmenu_p.h b/src/controls/qquickmenu_p.h index a16e720a..a626179a 100644 --- a/src/controls/qquickmenu_p.h +++ b/src/controls/qquickmenu_p.h @@ -89,10 +89,10 @@ public: Q_INVOKABLE void __popup(const QRectF &targetRect, int atItemIndex = -1, MenuType menuType = DefaultMenu); public Q_SLOTS: - void __closeMenu(); void __dismissMenu(); - void __destroyMenuPopup(); - void __destroyAllMenuPopups(); + + void __closeAndDestroy(); + void __dismissAndDestroy(); Q_SIGNALS: void itemsChanged(); @@ -142,11 +142,17 @@ public: QRect popupGeometry() const; + void prepareItemTrigger(QQuickMenuItem *); + void concludeItemTrigger(QQuickMenuItem *); + void destroyMenuPopup(); + void destroyAllMenuPopups(); + protected Q_SLOTS: void updateSelectedIndex(); void setMenuContentItem(QQuickItem *); void setPopupVisible(bool); + void hideMenu(); void clearPopupWindow(); void updateText(); @@ -189,6 +195,7 @@ private: qreal m_xOffset; qreal m_yOffset; QFont m_font; + int m_triggerCount; }; QT_END_NAMESPACE diff --git a/src/controls/qquickmenuitem.cpp b/src/controls/qquickmenuitem.cpp index 8093c5fe..be15a435 100644 --- a/src/controls/qquickmenuitem.cpp +++ b/src/controls/qquickmenuitem.cpp @@ -674,7 +674,12 @@ void QQuickMenuItem::setEnabled(bool enabled) void QQuickMenuItem::trigger() { + QPointer menu(parentMenu()); + if (menu) + menu->prepareItemTrigger(this); action()->trigger(this); + if (menu) + menu->concludeItemTrigger(this); } QT_END_NAMESPACE diff --git a/src/controls/qquickpopupwindow.cpp b/src/controls/qquickpopupwindow.cpp index 08407e2d..a8f45167 100644 --- a/src/controls/qquickpopupwindow.cpp +++ b/src/controls/qquickpopupwindow.cpp @@ -138,7 +138,7 @@ void QQuickPopupWindow::dismissPopup() { m_dismissed = true; emit popupDismissed(); - close(); + hide(); } void QQuickPopupWindow::mouseMoveEvent(QMouseEvent *e) diff --git a/tests/auto/controls/data/tst_combobox.qml b/tests/auto/controls/data/tst_combobox.qml index 057ff471..da8c79f8 100644 --- a/tests/auto/controls/data/tst_combobox.qml +++ b/tests/auto/controls/data/tst_combobox.qml @@ -524,7 +524,7 @@ TestCase { verify(comboBox.data[menuIndex].__popupVisible) // close the menu before destroying the combobox - comboBox.data[menuIndex].__closeMenu() + comboBox.data[menuIndex].__closeAndDestroy() verify(!comboBox.data[menuIndex].__popupVisible) comboBox.destroy() @@ -550,7 +550,7 @@ TestCase { verify(comboBox.data[menuIndex].items[i].checked) } // close the menu before destroying the combobox - comboBox.data[menuIndex].__closeMenu() + comboBox.data[menuIndex].__closeAndDestroy() verify(!comboBox.data[menuIndex].__popupVisible) comboBox.destroy() } -- cgit v1.2.1 From a21a33fe79e82a7bd3471612b46106ac1343648f Mon Sep 17 00:00:00 2001 From: Mitch Curtis Date: Thu, 1 Oct 2015 18:08:51 +0200 Subject: Fix failing Tumbler tests on OS X MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit By default, it’s not possible to tab into certain controls. Change-Id: Ia0941e5016926f65ab58a7391d6271d15b0c5248 Task-number: QTBUG-46393 Reviewed-by: Gabriel de Dietrich --- tests/auto/extras/data/tst_tumbler.qml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tests/auto/extras/data/tst_tumbler.qml b/tests/auto/extras/data/tst_tumbler.qml index bc97f35d..9f3ecc2f 100644 --- a/tests/auto/extras/data/tst_tumbler.qml +++ b/tests/auto/extras/data/tst_tumbler.qml @@ -175,6 +175,9 @@ Item { } function test_keyboardNavigation() { + if (Qt.platform.os === "osx") + skip("OS X doesn't allow tab focus for certain controls by default"); + var column = simpleColumn.createObject(tumbler); compare(tumbler.addColumn(column), column); column = simpleColumn.createObject(tumbler); @@ -244,6 +247,9 @@ Item { } function test_itemsCorrectlyPositioned() { + if (Qt.platform.os === "osx") + skip("OS X doesn't allow tab focus for certain controls by default"); + // TODO: rewrite this test so that it tests supported usecases. // Somehow it works with the Base style. It could be rewritten to use an // equal amount of items for the model and visibleItemCount, judging from @@ -346,6 +352,9 @@ Item { } function test_focusPastLastColumn() { + if (Qt.platform.os === "osx") + skip("OS X doesn't allow tab focus for certain controls by default"); + var column = dayOfMonthColumn.createObject(tumbler); compare(tumbler.addColumn(column), column); column = yearColumn.createObject(tumbler); -- cgit v1.2.1