From 492586930b4edbee5a8ab13de3fead9efa1b3e38 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Thu, 9 Jan 2020 11:33:12 +0100 Subject: Gallery example: Add "Help" menu and shortcut Add a property "control" identifying the control to be demo-ed to the page and add a help shortcut and menu item displaying its help. Change-Id: Ic3c7c31f5a44fccd57ee018fd3681dc6bdffee58 Reviewed-by: Cristian Maureira-Fredes Reviewed-by: Paul Wicking Reviewed-by: Venugopal Shivashankar --- examples/quickcontrols2/gallery/gallery.qml | 18 ++++++++++++++++++ .../quickcontrols2/gallery/pages/BusyIndicatorPage.qml | 2 ++ examples/quickcontrols2/gallery/pages/ButtonPage.qml | 2 ++ examples/quickcontrols2/gallery/pages/CheckBoxPage.qml | 2 ++ examples/quickcontrols2/gallery/pages/ComboBoxPage.qml | 2 ++ .../quickcontrols2/gallery/pages/DelayButtonPage.qml | 2 ++ examples/quickcontrols2/gallery/pages/DelegatePage.qml | 2 ++ examples/quickcontrols2/gallery/pages/DialPage.qml | 2 ++ examples/quickcontrols2/gallery/pages/DialogPage.qml | 2 ++ examples/quickcontrols2/gallery/pages/FramePage.qml | 2 ++ examples/quickcontrols2/gallery/pages/GroupBoxPage.qml | 2 ++ .../quickcontrols2/gallery/pages/PageIndicatorPage.qml | 2 ++ .../quickcontrols2/gallery/pages/ProgressBarPage.qml | 2 ++ .../quickcontrols2/gallery/pages/RadioButtonPage.qml | 2 ++ .../quickcontrols2/gallery/pages/RangeSliderPage.qml | 2 ++ .../quickcontrols2/gallery/pages/ScrollBarPage.qml | 2 ++ .../gallery/pages/ScrollIndicatorPage.qml | 2 ++ .../quickcontrols2/gallery/pages/ScrollablePage.qml | 2 ++ examples/quickcontrols2/gallery/pages/SliderPage.qml | 2 ++ examples/quickcontrols2/gallery/pages/SpinBoxPage.qml | 2 ++ .../quickcontrols2/gallery/pages/StackViewPage.qml | 2 ++ .../quickcontrols2/gallery/pages/SwipeViewPage.qml | 2 ++ examples/quickcontrols2/gallery/pages/SwitchPage.qml | 2 ++ examples/quickcontrols2/gallery/pages/TabBarPage.qml | 2 ++ examples/quickcontrols2/gallery/pages/TextAreaPage.qml | 2 ++ .../quickcontrols2/gallery/pages/TextFieldPage.qml | 2 ++ examples/quickcontrols2/gallery/pages/ToolTipPage.qml | 2 ++ examples/quickcontrols2/gallery/pages/TumblerPage.qml | 2 ++ 28 files changed, 72 insertions(+) (limited to 'examples') diff --git a/examples/quickcontrols2/gallery/gallery.qml b/examples/quickcontrols2/gallery/gallery.qml index 44987ada..95fc739f 100644 --- a/examples/quickcontrols2/gallery/gallery.qml +++ b/examples/quickcontrols2/gallery/gallery.qml @@ -62,6 +62,15 @@ ApplicationWindow { visible: true title: "Qt Quick Controls 2" + function help() + { + var url = "https://doc.qt.io/qt-5/" + + (stackView.depth > 1 + ? "qml-qtquick-controls2-" + stackView.currentItem.control + ".html" + : "qtquick-controls2-qmlmodule.html"); + Qt.openUrlExternally(url) + } + Settings { id: settings property string style: "Default" @@ -73,6 +82,11 @@ ApplicationWindow { onActivated: navigateBackAction.trigger() } + Shortcut { + sequence: StandardKey.HelpContents + onActivated: help() + } + Action { id: navigateBackAction icon.name: stackView.depth > 1 ? "back" : "drawer" @@ -130,6 +144,10 @@ ApplicationWindow { text: "Settings" onTriggered: settingsDialog.open() } + Action { + text: "Help" + onTriggered: help() + } Action { text: "About" onTriggered: aboutDialog.open() diff --git a/examples/quickcontrols2/gallery/pages/BusyIndicatorPage.qml b/examples/quickcontrols2/gallery/pages/BusyIndicatorPage.qml index b0aa6284..504993f2 100644 --- a/examples/quickcontrols2/gallery/pages/BusyIndicatorPage.qml +++ b/examples/quickcontrols2/gallery/pages/BusyIndicatorPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "busyindicator" + Column { spacing: 40 width: parent.width diff --git a/examples/quickcontrols2/gallery/pages/ButtonPage.qml b/examples/quickcontrols2/gallery/pages/ButtonPage.qml index c77b41e4..dce39203 100644 --- a/examples/quickcontrols2/gallery/pages/ButtonPage.qml +++ b/examples/quickcontrols2/gallery/pages/ButtonPage.qml @@ -55,6 +55,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "button" + Column { spacing: 40 width: parent.width diff --git a/examples/quickcontrols2/gallery/pages/CheckBoxPage.qml b/examples/quickcontrols2/gallery/pages/CheckBoxPage.qml index 7795f814..ac1ed4b7 100644 --- a/examples/quickcontrols2/gallery/pages/CheckBoxPage.qml +++ b/examples/quickcontrols2/gallery/pages/CheckBoxPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "checkbox" + Column { spacing: 40 width: parent.width diff --git a/examples/quickcontrols2/gallery/pages/ComboBoxPage.qml b/examples/quickcontrols2/gallery/pages/ComboBoxPage.qml index ec75607c..b194da7f 100644 --- a/examples/quickcontrols2/gallery/pages/ComboBoxPage.qml +++ b/examples/quickcontrols2/gallery/pages/ComboBoxPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "combobox" + Column { spacing: 40 width: parent.width diff --git a/examples/quickcontrols2/gallery/pages/DelayButtonPage.qml b/examples/quickcontrols2/gallery/pages/DelayButtonPage.qml index 91110567..ea73e6a7 100644 --- a/examples/quickcontrols2/gallery/pages/DelayButtonPage.qml +++ b/examples/quickcontrols2/gallery/pages/DelayButtonPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + property string control : "delaybutton" + Column { spacing: 40 width: parent.width diff --git a/examples/quickcontrols2/gallery/pages/DelegatePage.qml b/examples/quickcontrols2/gallery/pages/DelegatePage.qml index 30f07be1..4c3f0333 100644 --- a/examples/quickcontrols2/gallery/pages/DelegatePage.qml +++ b/examples/quickcontrols2/gallery/pages/DelegatePage.qml @@ -55,6 +55,8 @@ import QtQuick.Controls 2.12 Pane { padding: 0 + property string control : "swipedelegate" + property var delegateComponentMap: { "ItemDelegate": itemDelegateComponent, "SwipeDelegate": swipeDelegateComponent, diff --git a/examples/quickcontrols2/gallery/pages/DialPage.qml b/examples/quickcontrols2/gallery/pages/DialPage.qml index 3bb3bb28..8372d56f 100644 --- a/examples/quickcontrols2/gallery/pages/DialPage.qml +++ b/examples/quickcontrols2/gallery/pages/DialPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "dial" + Column { spacing: 40 width: parent.width diff --git a/examples/quickcontrols2/gallery/pages/DialogPage.qml b/examples/quickcontrols2/gallery/pages/DialogPage.qml index 9d23e260..167fa186 100644 --- a/examples/quickcontrols2/gallery/pages/DialogPage.qml +++ b/examples/quickcontrols2/gallery/pages/DialogPage.qml @@ -55,6 +55,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "dialog" + readonly property int buttonWidth: Math.max(button.implicitWidth, Math.min(button.implicitWidth * 2, page.availableWidth / 3)) Column { diff --git a/examples/quickcontrols2/gallery/pages/FramePage.qml b/examples/quickcontrols2/gallery/pages/FramePage.qml index 4834d04d..5d4b2f7b 100644 --- a/examples/quickcontrols2/gallery/pages/FramePage.qml +++ b/examples/quickcontrols2/gallery/pages/FramePage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "frame" + readonly property int itemWidth: Math.max(button.implicitWidth, Math.min(button.implicitWidth * 3, page.availableWidth / 3 * 2)) Column { diff --git a/examples/quickcontrols2/gallery/pages/GroupBoxPage.qml b/examples/quickcontrols2/gallery/pages/GroupBoxPage.qml index 16f8762a..41f115a7 100644 --- a/examples/quickcontrols2/gallery/pages/GroupBoxPage.qml +++ b/examples/quickcontrols2/gallery/pages/GroupBoxPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "groupbox" + readonly property int itemWidth: Math.max(button.implicitWidth, Math.min(button.implicitWidth * 3, page.availableWidth / 3 * 2)) Column { diff --git a/examples/quickcontrols2/gallery/pages/PageIndicatorPage.qml b/examples/quickcontrols2/gallery/pages/PageIndicatorPage.qml index 4f13ce33..dd0d3e9c 100644 --- a/examples/quickcontrols2/gallery/pages/PageIndicatorPage.qml +++ b/examples/quickcontrols2/gallery/pages/PageIndicatorPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "pageindicator" + Column { spacing: 40 width: parent.width diff --git a/examples/quickcontrols2/gallery/pages/ProgressBarPage.qml b/examples/quickcontrols2/gallery/pages/ProgressBarPage.qml index 1f3c81b9..89b951ee 100644 --- a/examples/quickcontrols2/gallery/pages/ProgressBarPage.qml +++ b/examples/quickcontrols2/gallery/pages/ProgressBarPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "progressbar" + Column { spacing: 40 width: parent.width diff --git a/examples/quickcontrols2/gallery/pages/RadioButtonPage.qml b/examples/quickcontrols2/gallery/pages/RadioButtonPage.qml index b573731e..9685426e 100644 --- a/examples/quickcontrols2/gallery/pages/RadioButtonPage.qml +++ b/examples/quickcontrols2/gallery/pages/RadioButtonPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "radiobutton" + Column { spacing: 40 width: parent.width diff --git a/examples/quickcontrols2/gallery/pages/RangeSliderPage.qml b/examples/quickcontrols2/gallery/pages/RangeSliderPage.qml index b6c35766..d04e7cb4 100644 --- a/examples/quickcontrols2/gallery/pages/RangeSliderPage.qml +++ b/examples/quickcontrols2/gallery/pages/RangeSliderPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "rangeslider" + Column { spacing: 40 width: parent.width diff --git a/examples/quickcontrols2/gallery/pages/ScrollBarPage.qml b/examples/quickcontrols2/gallery/pages/ScrollBarPage.qml index d9e77fa4..8ebf65ac 100644 --- a/examples/quickcontrols2/gallery/pages/ScrollBarPage.qml +++ b/examples/quickcontrols2/gallery/pages/ScrollBarPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 Flickable { id: flickable + readonly property string control : "scrollbar" + contentHeight: pane.height Pane { diff --git a/examples/quickcontrols2/gallery/pages/ScrollIndicatorPage.qml b/examples/quickcontrols2/gallery/pages/ScrollIndicatorPage.qml index 2adcbc6b..4aa641a8 100644 --- a/examples/quickcontrols2/gallery/pages/ScrollIndicatorPage.qml +++ b/examples/quickcontrols2/gallery/pages/ScrollIndicatorPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 Flickable { id: flickable + readonly property string control : "scrollindicator" + contentHeight: pane.height Pane { diff --git a/examples/quickcontrols2/gallery/pages/ScrollablePage.qml b/examples/quickcontrols2/gallery/pages/ScrollablePage.qml index afb5ef5c..2d525cf6 100644 --- a/examples/quickcontrols2/gallery/pages/ScrollablePage.qml +++ b/examples/quickcontrols2/gallery/pages/ScrollablePage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 Page { id: page + readonly property string control : "flickable" + default property alias content: pane.contentItem Flickable { diff --git a/examples/quickcontrols2/gallery/pages/SliderPage.qml b/examples/quickcontrols2/gallery/pages/SliderPage.qml index 93a1ebb1..9a2f3baf 100644 --- a/examples/quickcontrols2/gallery/pages/SliderPage.qml +++ b/examples/quickcontrols2/gallery/pages/SliderPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "slider" + Column { spacing: 40 width: parent.width diff --git a/examples/quickcontrols2/gallery/pages/SpinBoxPage.qml b/examples/quickcontrols2/gallery/pages/SpinBoxPage.qml index 9e458331..7ad62caa 100644 --- a/examples/quickcontrols2/gallery/pages/SpinBoxPage.qml +++ b/examples/quickcontrols2/gallery/pages/SpinBoxPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "" + Column { spacing: 40 width: parent.width diff --git a/examples/quickcontrols2/gallery/pages/StackViewPage.qml b/examples/quickcontrols2/gallery/pages/StackViewPage.qml index 43ee5684..d52cf85a 100644 --- a/examples/quickcontrols2/gallery/pages/StackViewPage.qml +++ b/examples/quickcontrols2/gallery/pages/StackViewPage.qml @@ -55,6 +55,8 @@ StackView { id: stackView initialItem: page + readonly property string control : "stackview" + Component { id: page diff --git a/examples/quickcontrols2/gallery/pages/SwipeViewPage.qml b/examples/quickcontrols2/gallery/pages/SwipeViewPage.qml index 3c3bc56c..c55250e4 100644 --- a/examples/quickcontrols2/gallery/pages/SwipeViewPage.qml +++ b/examples/quickcontrols2/gallery/pages/SwipeViewPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 Pane { id: pane + readonly property string control : "swipeview" + SwipeView { id: view currentIndex: 1 diff --git a/examples/quickcontrols2/gallery/pages/SwitchPage.qml b/examples/quickcontrols2/gallery/pages/SwitchPage.qml index 53ee1660..9e3f03f8 100644 --- a/examples/quickcontrols2/gallery/pages/SwitchPage.qml +++ b/examples/quickcontrols2/gallery/pages/SwitchPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "switch" + Column { spacing: 40 width: parent.width diff --git a/examples/quickcontrols2/gallery/pages/TabBarPage.qml b/examples/quickcontrols2/gallery/pages/TabBarPage.qml index 7c3cae44..1bfda1c1 100644 --- a/examples/quickcontrols2/gallery/pages/TabBarPage.qml +++ b/examples/quickcontrols2/gallery/pages/TabBarPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 Page { id: page + readonly property string control : "tabbar" + SwipeView { id: swipeView anchors.fill: parent diff --git a/examples/quickcontrols2/gallery/pages/TextAreaPage.qml b/examples/quickcontrols2/gallery/pages/TextAreaPage.qml index 7ed2b58b..4a6d25e7 100644 --- a/examples/quickcontrols2/gallery/pages/TextAreaPage.qml +++ b/examples/quickcontrols2/gallery/pages/TextAreaPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "textarea" + Column { spacing: 40 width: parent.width diff --git a/examples/quickcontrols2/gallery/pages/TextFieldPage.qml b/examples/quickcontrols2/gallery/pages/TextFieldPage.qml index 37a5d605..527f7a64 100644 --- a/examples/quickcontrols2/gallery/pages/TextFieldPage.qml +++ b/examples/quickcontrols2/gallery/pages/TextFieldPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "textfield" + Column { spacing: 40 width: parent.width diff --git a/examples/quickcontrols2/gallery/pages/ToolTipPage.qml b/examples/quickcontrols2/gallery/pages/ToolTipPage.qml index 295ea2c4..fea05551 100644 --- a/examples/quickcontrols2/gallery/pages/ToolTipPage.qml +++ b/examples/quickcontrols2/gallery/pages/ToolTipPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "tooltip" + Column { spacing: 40 width: parent.width diff --git a/examples/quickcontrols2/gallery/pages/TumblerPage.qml b/examples/quickcontrols2/gallery/pages/TumblerPage.qml index af4caee3..a7c95d21 100644 --- a/examples/quickcontrols2/gallery/pages/TumblerPage.qml +++ b/examples/quickcontrols2/gallery/pages/TumblerPage.qml @@ -54,6 +54,8 @@ import QtQuick.Controls 2.12 ScrollablePage { id: page + readonly property string control : "tumbler" + Column { spacing: 40 width: parent.width -- cgit v1.2.3