aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.qmake.conf2
-rw-r--r--examples/quickcontrols2/chattutorial/chapter4-models/sqlconversationmodel.h4
-rw-r--r--examples/quickcontrols2/chattutorial/chapter5-styling/sqlconversationmodel.h4
-rw-r--r--src/imports/calendar/DayOfWeekRow.qml2
-rw-r--r--src/imports/calendar/MonthGrid.qml2
-rw-r--r--src/imports/calendar/WeekNumberColumn.qml2
-rw-r--r--src/imports/controls/AbstractButton.qml4
-rw-r--r--src/imports/controls/Action.qml4
-rw-r--r--src/imports/controls/ActionGroup.qml4
-rw-r--r--src/imports/controls/ApplicationWindow.qml8
-rw-r--r--src/imports/controls/BusyIndicator.qml8
-rw-r--r--src/imports/controls/Button.qml8
-rw-r--r--src/imports/controls/ButtonGroup.qml4
-rw-r--r--src/imports/controls/CheckBox.qml8
-rw-r--r--src/imports/controls/CheckDelegate.qml8
-rw-r--r--src/imports/controls/ComboBox.qml8
-rw-r--r--src/imports/controls/Container.qml4
-rw-r--r--src/imports/controls/Control.qml4
-rw-r--r--src/imports/controls/DelayButton.qml8
-rw-r--r--src/imports/controls/Dial.qml8
-rw-r--r--src/imports/controls/Dialog.qml8
-rw-r--r--src/imports/controls/DialogButtonBox.qml4
-rw-r--r--src/imports/controls/Drawer.qml8
-rw-r--r--src/imports/controls/Frame.qml8
-rw-r--r--src/imports/controls/GroupBox.qml8
-rw-r--r--src/imports/controls/ItemDelegate.qml8
-rw-r--r--src/imports/controls/Label.qml8
-rw-r--r--src/imports/controls/Menu.qml8
-rw-r--r--src/imports/controls/MenuBar.qml8
-rw-r--r--src/imports/controls/MenuBarItem.qml8
-rw-r--r--src/imports/controls/MenuItem.qml8
-rw-r--r--src/imports/controls/MenuSeparator.qml8
-rw-r--r--src/imports/controls/Page.qml8
-rw-r--r--src/imports/controls/PageIndicator.qml8
-rw-r--r--src/imports/controls/Pane.qml8
-rw-r--r--src/imports/controls/Popup.qml8
-rw-r--r--src/imports/controls/ProgressBar.qml8
-rw-r--r--src/imports/controls/RadioButton.qml8
-rw-r--r--src/imports/controls/RadioDelegate.qml8
-rw-r--r--src/imports/controls/RangeSlider.qml8
-rw-r--r--src/imports/controls/RoundButton.qml8
-rw-r--r--src/imports/controls/ScrollBar.qml8
-rw-r--r--src/imports/controls/ScrollIndicator.qml8
-rw-r--r--src/imports/controls/ScrollView.qml8
-rw-r--r--src/imports/controls/Slider.qml8
-rw-r--r--src/imports/controls/SpinBox.qml10
-rw-r--r--src/imports/controls/StackView.qml6
-rw-r--r--src/imports/controls/SwipeDelegate.qml8
-rw-r--r--src/imports/controls/SwipeView.qml6
-rw-r--r--src/imports/controls/Switch.qml8
-rw-r--r--src/imports/controls/SwitchDelegate.qml8
-rw-r--r--src/imports/controls/TabBar.qml4
-rw-r--r--src/imports/controls/TabButton.qml8
-rw-r--r--src/imports/controls/TextArea.qml8
-rw-r--r--src/imports/controls/TextField.qml8
-rw-r--r--src/imports/controls/ToolBar.qml8
-rw-r--r--src/imports/controls/ToolButton.qml8
-rw-r--r--src/imports/controls/ToolSeparator.qml8
-rw-r--r--src/imports/controls/ToolTip.qml8
-rw-r--r--src/imports/controls/Tumbler.qml8
-rw-r--r--src/imports/controls/doc/images/qtquickcontrols2-checkbox-group.pngbin0 -> 3675 bytes
-rw-r--r--src/imports/controls/doc/snippets/qtquickcontrols2-checkbox-group.qml58
-rw-r--r--src/imports/controls/fusion/ApplicationWindow.qml8
-rw-r--r--src/imports/controls/fusion/BusyIndicator.qml12
-rw-r--r--src/imports/controls/fusion/Button.qml12
-rw-r--r--src/imports/controls/fusion/ButtonPanel.qml10
-rw-r--r--src/imports/controls/fusion/CheckBox.qml12
-rw-r--r--src/imports/controls/fusion/CheckDelegate.qml12
-rw-r--r--src/imports/controls/fusion/CheckIndicator.qml10
-rw-r--r--src/imports/controls/fusion/ComboBox.qml12
-rw-r--r--src/imports/controls/fusion/DelayButton.qml12
-rw-r--r--src/imports/controls/fusion/Dial.qml12
-rw-r--r--src/imports/controls/fusion/Dialog.qml12
-rw-r--r--src/imports/controls/fusion/DialogButtonBox.qml12
-rw-r--r--src/imports/controls/fusion/Drawer.qml12
-rw-r--r--src/imports/controls/fusion/Frame.qml12
-rw-r--r--src/imports/controls/fusion/GroupBox.qml12
-rw-r--r--src/imports/controls/fusion/ItemDelegate.qml12
-rw-r--r--src/imports/controls/fusion/Label.qml12
-rw-r--r--src/imports/controls/fusion/Menu.qml12
-rw-r--r--src/imports/controls/fusion/MenuBar.qml12
-rw-r--r--src/imports/controls/fusion/MenuBarItem.qml12
-rw-r--r--src/imports/controls/fusion/MenuItem.qml12
-rw-r--r--src/imports/controls/fusion/MenuSeparator.qml12
-rw-r--r--src/imports/controls/fusion/Page.qml12
-rw-r--r--src/imports/controls/fusion/PageIndicator.qml12
-rw-r--r--src/imports/controls/fusion/Pane.qml12
-rw-r--r--src/imports/controls/fusion/Popup.qml12
-rw-r--r--src/imports/controls/fusion/ProgressBar.qml12
-rw-r--r--src/imports/controls/fusion/RadioButton.qml12
-rw-r--r--src/imports/controls/fusion/RadioDelegate.qml12
-rw-r--r--src/imports/controls/fusion/RadioIndicator.qml10
-rw-r--r--src/imports/controls/fusion/RangeSlider.qml12
-rw-r--r--src/imports/controls/fusion/RoundButton.qml12
-rw-r--r--src/imports/controls/fusion/ScrollBar.qml12
-rw-r--r--src/imports/controls/fusion/ScrollIndicator.qml12
-rw-r--r--src/imports/controls/fusion/ScrollView.qml12
-rw-r--r--src/imports/controls/fusion/Slider.qml12
-rw-r--r--src/imports/controls/fusion/SliderGroove.qml10
-rw-r--r--src/imports/controls/fusion/SliderHandle.qml10
-rw-r--r--src/imports/controls/fusion/SpinBox.qml14
-rw-r--r--src/imports/controls/fusion/SwipeDelegate.qml12
-rw-r--r--src/imports/controls/fusion/Switch.qml12
-rw-r--r--src/imports/controls/fusion/SwitchDelegate.qml12
-rw-r--r--src/imports/controls/fusion/SwitchIndicator.qml10
-rw-r--r--src/imports/controls/fusion/TabBar.qml12
-rw-r--r--src/imports/controls/fusion/TabButton.qml12
-rw-r--r--src/imports/controls/fusion/TextArea.qml12
-rw-r--r--src/imports/controls/fusion/TextField.qml12
-rw-r--r--src/imports/controls/fusion/ToolBar.qml12
-rw-r--r--src/imports/controls/fusion/ToolButton.qml12
-rw-r--r--src/imports/controls/fusion/ToolSeparator.qml12
-rw-r--r--src/imports/controls/fusion/ToolTip.qml12
-rw-r--r--src/imports/controls/fusion/Tumbler.qml12
-rw-r--r--src/imports/controls/fusion/qtquickcontrols2fusionstyleplugin.cpp5
-rw-r--r--src/imports/controls/imagine/ApplicationWindow.qml8
-rw-r--r--src/imports/controls/imagine/BusyIndicator.qml8
-rw-r--r--src/imports/controls/imagine/Button.qml12
-rw-r--r--src/imports/controls/imagine/CheckBox.qml8
-rw-r--r--src/imports/controls/imagine/CheckDelegate.qml12
-rw-r--r--src/imports/controls/imagine/ComboBox.qml10
-rw-r--r--src/imports/controls/imagine/DelayButton.qml8
-rw-r--r--src/imports/controls/imagine/Dial.qml8
-rw-r--r--src/imports/controls/imagine/Dialog.qml10
-rw-r--r--src/imports/controls/imagine/DialogButtonBox.qml10
-rw-r--r--src/imports/controls/imagine/Drawer.qml8
-rw-r--r--src/imports/controls/imagine/Frame.qml8
-rw-r--r--src/imports/controls/imagine/GroupBox.qml10
-rw-r--r--src/imports/controls/imagine/ItemDelegate.qml12
-rw-r--r--src/imports/controls/imagine/Label.qml8
-rw-r--r--src/imports/controls/imagine/Menu.qml10
-rw-r--r--src/imports/controls/imagine/MenuItem.qml12
-rw-r--r--src/imports/controls/imagine/MenuSeparator.qml8
-rw-r--r--src/imports/controls/imagine/Page.qml8
-rw-r--r--src/imports/controls/imagine/PageIndicator.qml8
-rw-r--r--src/imports/controls/imagine/Pane.qml8
-rw-r--r--src/imports/controls/imagine/Popup.qml8
-rw-r--r--src/imports/controls/imagine/ProgressBar.qml8
-rw-r--r--src/imports/controls/imagine/RadioButton.qml8
-rw-r--r--src/imports/controls/imagine/RadioDelegate.qml12
-rw-r--r--src/imports/controls/imagine/RangeSlider.qml8
-rw-r--r--src/imports/controls/imagine/RoundButton.qml12
-rw-r--r--src/imports/controls/imagine/ScrollBar.qml8
-rw-r--r--src/imports/controls/imagine/ScrollIndicator.qml8
-rw-r--r--src/imports/controls/imagine/ScrollView.qml10
-rw-r--r--src/imports/controls/imagine/Slider.qml8
-rw-r--r--src/imports/controls/imagine/SpinBox.qml10
-rw-r--r--src/imports/controls/imagine/StackView.qml8
-rw-r--r--src/imports/controls/imagine/SwipeDelegate.qml12
-rw-r--r--src/imports/controls/imagine/SwipeView.qml8
-rw-r--r--src/imports/controls/imagine/Switch.qml8
-rw-r--r--src/imports/controls/imagine/SwitchDelegate.qml12
-rw-r--r--src/imports/controls/imagine/TabBar.qml8
-rw-r--r--src/imports/controls/imagine/TabButton.qml12
-rw-r--r--src/imports/controls/imagine/TextArea.qml12
-rw-r--r--src/imports/controls/imagine/TextField.qml12
-rw-r--r--src/imports/controls/imagine/ToolBar.qml8
-rw-r--r--src/imports/controls/imagine/ToolButton.qml12
-rw-r--r--src/imports/controls/imagine/ToolSeparator.qml8
-rw-r--r--src/imports/controls/imagine/ToolTip.qml8
-rw-r--r--src/imports/controls/imagine/Tumbler.qml12
-rw-r--r--src/imports/controls/material/ApplicationWindow.qml6
-rw-r--r--src/imports/controls/material/BoxShadow.qml6
-rw-r--r--src/imports/controls/material/BusyIndicator.qml8
-rw-r--r--src/imports/controls/material/Button.qml12
-rw-r--r--src/imports/controls/material/CheckBox.qml8
-rw-r--r--src/imports/controls/material/CheckDelegate.qml12
-rw-r--r--src/imports/controls/material/CheckIndicator.qml6
-rw-r--r--src/imports/controls/material/ComboBox.qml12
-rw-r--r--src/imports/controls/material/CursorDelegate.qml4
-rw-r--r--src/imports/controls/material/DelayButton.qml12
-rw-r--r--src/imports/controls/material/Dial.qml8
-rw-r--r--src/imports/controls/material/Dialog.qml12
-rw-r--r--src/imports/controls/material/DialogButtonBox.qml12
-rw-r--r--src/imports/controls/material/Drawer.qml8
-rw-r--r--src/imports/controls/material/ElevationEffect.qml6
-rw-r--r--src/imports/controls/material/Frame.qml8
-rw-r--r--src/imports/controls/material/GroupBox.qml8
-rw-r--r--src/imports/controls/material/ItemDelegate.qml12
-rw-r--r--src/imports/controls/material/Label.qml6
-rw-r--r--src/imports/controls/material/Menu.qml10
-rw-r--r--src/imports/controls/material/MenuBar.qml12
-rw-r--r--src/imports/controls/material/MenuBarItem.qml12
-rw-r--r--src/imports/controls/material/MenuItem.qml12
-rw-r--r--src/imports/controls/material/MenuSeparator.qml6
-rw-r--r--src/imports/controls/material/Page.qml6
-rw-r--r--src/imports/controls/material/PageIndicator.qml6
-rw-r--r--src/imports/controls/material/Pane.qml8
-rw-r--r--src/imports/controls/material/Popup.qml8
-rw-r--r--src/imports/controls/material/ProgressBar.qml8
-rw-r--r--src/imports/controls/material/RadioButton.qml8
-rw-r--r--src/imports/controls/material/RadioDelegate.qml12
-rw-r--r--src/imports/controls/material/RadioIndicator.qml6
-rw-r--r--src/imports/controls/material/RangeSlider.qml8
-rw-r--r--src/imports/controls/material/RectangularGlow.qml2
-rw-r--r--src/imports/controls/material/RoundButton.qml12
-rw-r--r--src/imports/controls/material/ScrollBar.qml6
-rw-r--r--src/imports/controls/material/ScrollIndicator.qml6
-rw-r--r--src/imports/controls/material/Slider.qml8
-rw-r--r--src/imports/controls/material/SliderHandle.qml6
-rw-r--r--src/imports/controls/material/SpinBox.qml10
-rw-r--r--src/imports/controls/material/StackView.qml6
-rw-r--r--src/imports/controls/material/SwipeDelegate.qml12
-rw-r--r--src/imports/controls/material/SwipeView.qml6
-rw-r--r--src/imports/controls/material/Switch.qml8
-rw-r--r--src/imports/controls/material/SwitchDelegate.qml12
-rw-r--r--src/imports/controls/material/SwitchIndicator.qml6
-rw-r--r--src/imports/controls/material/TabBar.qml8
-rw-r--r--src/imports/controls/material/TabButton.qml12
-rw-r--r--src/imports/controls/material/TextArea.qml12
-rw-r--r--src/imports/controls/material/TextField.qml12
-rw-r--r--src/imports/controls/material/ToolBar.qml8
-rw-r--r--src/imports/controls/material/ToolButton.qml12
-rw-r--r--src/imports/controls/material/ToolSeparator.qml6
-rw-r--r--src/imports/controls/material/ToolTip.qml6
-rw-r--r--src/imports/controls/material/Tumbler.qml10
-rw-r--r--src/imports/controls/universal/ApplicationWindow.qml8
-rw-r--r--src/imports/controls/universal/BusyIndicator.qml8
-rw-r--r--src/imports/controls/universal/Button.qml10
-rw-r--r--src/imports/controls/universal/CheckBox.qml8
-rw-r--r--src/imports/controls/universal/CheckDelegate.qml12
-rw-r--r--src/imports/controls/universal/CheckIndicator.qml10
-rw-r--r--src/imports/controls/universal/ComboBox.qml10
-rw-r--r--src/imports/controls/universal/DelayButton.qml6
-rw-r--r--src/imports/controls/universal/Dial.qml6
-rw-r--r--src/imports/controls/universal/Dialog.qml8
-rw-r--r--src/imports/controls/universal/DialogButtonBox.qml8
-rw-r--r--src/imports/controls/universal/Drawer.qml6
-rw-r--r--src/imports/controls/universal/Frame.qml6
-rw-r--r--src/imports/controls/universal/GroupBox.qml6
-rw-r--r--src/imports/controls/universal/ItemDelegate.qml10
-rw-r--r--src/imports/controls/universal/Label.qml6
-rw-r--r--src/imports/controls/universal/Menu.qml8
-rw-r--r--src/imports/controls/universal/MenuBar.qml10
-rw-r--r--src/imports/controls/universal/MenuBarItem.qml10
-rw-r--r--src/imports/controls/universal/MenuItem.qml10
-rw-r--r--src/imports/controls/universal/MenuSeparator.qml6
-rw-r--r--src/imports/controls/universal/Page.qml6
-rw-r--r--src/imports/controls/universal/PageIndicator.qml6
-rw-r--r--src/imports/controls/universal/Pane.qml6
-rw-r--r--src/imports/controls/universal/Popup.qml6
-rw-r--r--src/imports/controls/universal/ProgressBar.qml8
-rw-r--r--src/imports/controls/universal/RadioButton.qml8
-rw-r--r--src/imports/controls/universal/RadioDelegate.qml12
-rw-r--r--src/imports/controls/universal/RadioIndicator.qml4
-rw-r--r--src/imports/controls/universal/RangeSlider.qml6
-rw-r--r--src/imports/controls/universal/RoundButton.qml10
-rw-r--r--src/imports/controls/universal/ScrollBar.qml6
-rw-r--r--src/imports/controls/universal/ScrollIndicator.qml6
-rw-r--r--src/imports/controls/universal/Slider.qml6
-rw-r--r--src/imports/controls/universal/SpinBox.qml12
-rw-r--r--src/imports/controls/universal/StackView.qml6
-rw-r--r--src/imports/controls/universal/SwipeDelegate.qml10
-rw-r--r--src/imports/controls/universal/Switch.qml8
-rw-r--r--src/imports/controls/universal/SwitchDelegate.qml12
-rw-r--r--src/imports/controls/universal/SwitchIndicator.qml6
-rw-r--r--src/imports/controls/universal/TabBar.qml6
-rw-r--r--src/imports/controls/universal/TabButton.qml10
-rw-r--r--src/imports/controls/universal/TextArea.qml10
-rw-r--r--src/imports/controls/universal/TextField.qml10
-rw-r--r--src/imports/controls/universal/ToolBar.qml6
-rw-r--r--src/imports/controls/universal/ToolButton.qml10
-rw-r--r--src/imports/controls/universal/ToolSeparator.qml6
-rw-r--r--src/imports/controls/universal/ToolTip.qml6
-rw-r--r--src/imports/controls/universal/Tumbler.qml10
-rw-r--r--src/imports/templates/qtquicktemplates2plugin.cpp9
-rw-r--r--src/quicktemplates2/qquickabstractbutton.cpp127
-rw-r--r--src/quicktemplates2/qquickabstractbutton_p.h23
-rw-r--r--src/quicktemplates2/qquickabstractbutton_p_p.h6
-rw-r--r--src/quicktemplates2/qquickbutton.cpp18
-rw-r--r--src/quicktemplates2/qquickbutton_p.h4
-rw-r--r--src/quicktemplates2/qquickbuttongroup.cpp110
-rw-r--r--src/quicktemplates2/qquickbuttongroup_p.h16
-rw-r--r--src/quicktemplates2/qquickcheckbox.cpp67
-rw-r--r--src/quicktemplates2/qquickcheckbox_p.h4
-rw-r--r--src/quicktemplates2/qquickcheckdelegate.cpp50
-rw-r--r--src/quicktemplates2/qquickcheckdelegate_p.h4
-rw-r--r--src/quicktemplates2/qquickcontrol.cpp2
-rw-r--r--src/quicktemplates2/qquickscrollbar.cpp128
-rw-r--r--src/quicktemplates2/qquickscrollbar_p.h15
-rw-r--r--src/quicktemplates2/qquickscrollbar_p_p.h14
-rw-r--r--src/quicktemplates2/qquickscrollindicator.cpp111
-rw-r--r--src/quicktemplates2/qquickscrollindicator_p.h15
-rw-r--r--src/quicktemplates2/qquickspinbox.cpp68
-rw-r--r--src/quicktemplates2/qquickspinbox_p.h8
-rw-r--r--src/quicktemplates2/qquickswipedelegate.cpp4
-rw-r--r--src/quicktemplates2/qquicktooltip.cpp2
-rw-r--r--tests/auto/controls/data/tst_abstractbutton.qml107
-rw-r--r--tests/auto/controls/data/tst_buttongroup.qml28
-rw-r--r--tests/auto/controls/data/tst_checkbox.qml87
-rw-r--r--tests/auto/controls/data/tst_checkdelegate.qml47
-rw-r--r--tests/auto/controls/data/tst_scrollbar.qml48
-rw-r--r--tests/auto/controls/data/tst_scrollindicator.qml48
-rw-r--r--tests/auto/controls/data/tst_spinbox.qml44
-rw-r--r--[-rwxr-xr-x]tests/manual/testbench/fonts/LICENSE.txt0
-rw-r--r--[-rwxr-xr-x]tests/manual/testbench/fonts/fontawesome.ttfbin5464 -> 5464 bytes
-rw-r--r--tests/tests.pro2
297 files changed, 2344 insertions, 1257 deletions
diff --git a/.qmake.conf b/.qmake.conf
index 9031db24..e264502c 100644
--- a/.qmake.conf
+++ b/.qmake.conf
@@ -4,4 +4,4 @@ DEFINES += QT_NO_FOREACH
QQC2_SOURCE_TREE = $$PWD
-MODULE_VERSION = 5.10.1
+MODULE_VERSION = 5.11.0
diff --git a/examples/quickcontrols2/chattutorial/chapter4-models/sqlconversationmodel.h b/examples/quickcontrols2/chattutorial/chapter4-models/sqlconversationmodel.h
index df60d4f3..14ab12e2 100644
--- a/examples/quickcontrols2/chattutorial/chapter4-models/sqlconversationmodel.h
+++ b/examples/quickcontrols2/chattutorial/chapter4-models/sqlconversationmodel.h
@@ -64,8 +64,8 @@ public:
QString recipient() const;
void setRecipient(const QString &recipient);
- QVariant data(const QModelIndex &index, int role) const Q_DECL_OVERRIDE;
- QHash<int, QByteArray> roleNames() const Q_DECL_OVERRIDE;
+ QVariant data(const QModelIndex &index, int role) const override;
+ QHash<int, QByteArray> roleNames() const override;
Q_INVOKABLE void sendMessage(const QString &recipient, const QString &message);
diff --git a/examples/quickcontrols2/chattutorial/chapter5-styling/sqlconversationmodel.h b/examples/quickcontrols2/chattutorial/chapter5-styling/sqlconversationmodel.h
index df60d4f3..14ab12e2 100644
--- a/examples/quickcontrols2/chattutorial/chapter5-styling/sqlconversationmodel.h
+++ b/examples/quickcontrols2/chattutorial/chapter5-styling/sqlconversationmodel.h
@@ -64,8 +64,8 @@ public:
QString recipient() const;
void setRecipient(const QString &recipient);
- QVariant data(const QModelIndex &index, int role) const Q_DECL_OVERRIDE;
- QHash<int, QByteArray> roleNames() const Q_DECL_OVERRIDE;
+ QVariant data(const QModelIndex &index, int role) const override;
+ QHash<int, QByteArray> roleNames() const override;
Q_INVOKABLE void sendMessage(const QString &recipient, const QString &message);
diff --git a/src/imports/calendar/DayOfWeekRow.qml b/src/imports/calendar/DayOfWeekRow.qml
index 1d874959..23e3c30e 100644
--- a/src/imports/calendar/DayOfWeekRow.qml
+++ b/src/imports/calendar/DayOfWeekRow.qml
@@ -34,7 +34,7 @@
**
****************************************************************************/
-import QtQuick 2.6
+import QtQuick 2.11
import Qt.labs.calendar 1.0
AbstractDayOfWeekRow {
diff --git a/src/imports/calendar/MonthGrid.qml b/src/imports/calendar/MonthGrid.qml
index 1e217cd2..95e2a801 100644
--- a/src/imports/calendar/MonthGrid.qml
+++ b/src/imports/calendar/MonthGrid.qml
@@ -34,7 +34,7 @@
**
****************************************************************************/
-import QtQuick 2.6
+import QtQuick 2.11
import Qt.labs.calendar 1.0
AbstractMonthGrid {
diff --git a/src/imports/calendar/WeekNumberColumn.qml b/src/imports/calendar/WeekNumberColumn.qml
index 04b2980e..c46e25ae 100644
--- a/src/imports/calendar/WeekNumberColumn.qml
+++ b/src/imports/calendar/WeekNumberColumn.qml
@@ -34,7 +34,7 @@
**
****************************************************************************/
-import QtQuick 2.6
+import QtQuick 2.11
import Qt.labs.calendar 1.0
AbstractWeekNumberColumn {
diff --git a/src/imports/controls/AbstractButton.qml b/src/imports/controls/AbstractButton.qml
index e65dd887..2ff1b82c 100644
--- a/src/imports/controls/AbstractButton.qml
+++ b/src/imports/controls/AbstractButton.qml
@@ -34,8 +34,8 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
T.AbstractButton {
id: control
diff --git a/src/imports/controls/Action.qml b/src/imports/controls/Action.qml
index ad67300d..0ba5822f 100644
--- a/src/imports/controls/Action.qml
+++ b/src/imports/controls/Action.qml
@@ -34,7 +34,7 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
T.Action { }
diff --git a/src/imports/controls/ActionGroup.qml b/src/imports/controls/ActionGroup.qml
index 44b174e6..a8c49d8b 100644
--- a/src/imports/controls/ActionGroup.qml
+++ b/src/imports/controls/ActionGroup.qml
@@ -34,7 +34,7 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
T.ActionGroup { }
diff --git a/src/imports/controls/ApplicationWindow.qml b/src/imports/controls/ApplicationWindow.qml
index 12e877f7..84b618e1 100644
--- a/src/imports/controls/ApplicationWindow.qml
+++ b/src/imports/controls/ApplicationWindow.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
+import QtQuick 2.11
import QtQuick.Window 2.3
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.ApplicationWindow {
id: window
diff --git a/src/imports/controls/BusyIndicator.qml b/src/imports/controls/BusyIndicator.qml
index 06be00ec..bff591c7 100644
--- a/src/imports/controls/BusyIndicator.qml
+++ b/src/imports/controls/BusyIndicator.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.BusyIndicator {
id: control
diff --git a/src/imports/controls/Button.qml b/src/imports/controls/Button.qml
index a5e86a38..7039dfc9 100644
--- a/src/imports/controls/Button.qml
+++ b/src/imports/controls/Button.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.Button {
id: control
diff --git a/src/imports/controls/ButtonGroup.qml b/src/imports/controls/ButtonGroup.qml
index a234583c..4e8ae893 100644
--- a/src/imports/controls/ButtonGroup.qml
+++ b/src/imports/controls/ButtonGroup.qml
@@ -34,7 +34,7 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
T.ButtonGroup { }
diff --git a/src/imports/controls/CheckBox.qml b/src/imports/controls/CheckBox.qml
index ec539b19..136c9b36 100644
--- a/src/imports/controls/CheckBox.qml
+++ b/src/imports/controls/CheckBox.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
T.CheckBox {
id: control
diff --git a/src/imports/controls/CheckDelegate.qml b/src/imports/controls/CheckDelegate.qml
index e8ee6731..087c9d75 100644
--- a/src/imports/controls/CheckDelegate.qml
+++ b/src/imports/controls/CheckDelegate.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
T.CheckDelegate {
id: control
diff --git a/src/imports/controls/ComboBox.qml b/src/imports/controls/ComboBox.qml
index bc7ad9b9..defbff29 100644
--- a/src/imports/controls/ComboBox.qml
+++ b/src/imports/controls/ComboBox.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
+import QtQuick 2.11
import QtQuick.Window 2.3
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.ComboBox {
id: control
diff --git a/src/imports/controls/Container.qml b/src/imports/controls/Container.qml
index b297b2ab..e7cf8a2a 100644
--- a/src/imports/controls/Container.qml
+++ b/src/imports/controls/Container.qml
@@ -34,8 +34,8 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
T.Container {
id: control
diff --git a/src/imports/controls/Control.qml b/src/imports/controls/Control.qml
index 64e0f35f..5728da0a 100644
--- a/src/imports/controls/Control.qml
+++ b/src/imports/controls/Control.qml
@@ -34,8 +34,8 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
T.Control {
id: control
diff --git a/src/imports/controls/DelayButton.qml b/src/imports/controls/DelayButton.qml
index 461f4195..e879c73f 100644
--- a/src/imports/controls/DelayButton.qml
+++ b/src/imports/controls/DelayButton.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.DelayButton {
id: control
diff --git a/src/imports/controls/Dial.qml b/src/imports/controls/Dial.qml
index f3706fa3..6b96187a 100644
--- a/src/imports/controls/Dial.qml
+++ b/src/imports/controls/Dial.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.Dial {
id: control
diff --git a/src/imports/controls/Dialog.qml b/src/imports/controls/Dialog.qml
index 24556db0..913e23f1 100644
--- a/src/imports/controls/Dialog.qml
+++ b/src/imports/controls/Dialog.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
T.Dialog {
id: control
diff --git a/src/imports/controls/DialogButtonBox.qml b/src/imports/controls/DialogButtonBox.qml
index 1a962d9b..51a5cc49 100644
--- a/src/imports/controls/DialogButtonBox.qml
+++ b/src/imports/controls/DialogButtonBox.qml
@@ -34,8 +34,8 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
T.DialogButtonBox {
id: control
diff --git a/src/imports/controls/Drawer.qml b/src/imports/controls/Drawer.qml
index b512d14c..dbafbd92 100644
--- a/src/imports/controls/Drawer.qml
+++ b/src/imports/controls/Drawer.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.Drawer {
id: control
diff --git a/src/imports/controls/Frame.qml b/src/imports/controls/Frame.qml
index 9b81b7be..7c8a4db7 100644
--- a/src/imports/controls/Frame.qml
+++ b/src/imports/controls/Frame.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.Frame {
id: control
diff --git a/src/imports/controls/GroupBox.qml b/src/imports/controls/GroupBox.qml
index 967f591d..1a481e22 100644
--- a/src/imports/controls/GroupBox.qml
+++ b/src/imports/controls/GroupBox.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.GroupBox {
id: control
diff --git a/src/imports/controls/ItemDelegate.qml b/src/imports/controls/ItemDelegate.qml
index 1180a997..6367bc86 100644
--- a/src/imports/controls/ItemDelegate.qml
+++ b/src/imports/controls/ItemDelegate.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.ItemDelegate {
id: control
diff --git a/src/imports/controls/Label.qml b/src/imports/controls/Label.qml
index c03c9b47..aa02918f 100644
--- a/src/imports/controls/Label.qml
+++ b/src/imports/controls/Label.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.Label {
id: control
diff --git a/src/imports/controls/Menu.qml b/src/imports/controls/Menu.qml
index cb9f693d..deadc274 100644
--- a/src/imports/controls/Menu.qml
+++ b/src/imports/controls/Menu.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.Menu {
id: control
diff --git a/src/imports/controls/MenuBar.qml b/src/imports/controls/MenuBar.qml
index 4c205465..058c8736 100644
--- a/src/imports/controls/MenuBar.qml
+++ b/src/imports/controls/MenuBar.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
T.MenuBar {
id: control
diff --git a/src/imports/controls/MenuBarItem.qml b/src/imports/controls/MenuBarItem.qml
index dfe20788..02e3ac43 100644
--- a/src/imports/controls/MenuBarItem.qml
+++ b/src/imports/controls/MenuBarItem.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
T.MenuBarItem {
id: control
diff --git a/src/imports/controls/MenuItem.qml b/src/imports/controls/MenuItem.qml
index 3562669d..90a19f57 100644
--- a/src/imports/controls/MenuItem.qml
+++ b/src/imports/controls/MenuItem.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.MenuItem {
id: control
diff --git a/src/imports/controls/MenuSeparator.qml b/src/imports/controls/MenuSeparator.qml
index db34e746..ac47e32c 100644
--- a/src/imports/controls/MenuSeparator.qml
+++ b/src/imports/controls/MenuSeparator.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.MenuSeparator {
id: control
diff --git a/src/imports/controls/Page.qml b/src/imports/controls/Page.qml
index 5bf3e0da..df56dcbe 100644
--- a/src/imports/controls/Page.qml
+++ b/src/imports/controls/Page.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.Page {
id: control
diff --git a/src/imports/controls/PageIndicator.qml b/src/imports/controls/PageIndicator.qml
index a0b1e17a..9d048002 100644
--- a/src/imports/controls/PageIndicator.qml
+++ b/src/imports/controls/PageIndicator.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.PageIndicator {
id: control
diff --git a/src/imports/controls/Pane.qml b/src/imports/controls/Pane.qml
index ac023bdd..7517e2f2 100644
--- a/src/imports/controls/Pane.qml
+++ b/src/imports/controls/Pane.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.Pane {
id: control
diff --git a/src/imports/controls/Popup.qml b/src/imports/controls/Popup.qml
index 6a78e89a..7ea706ed 100644
--- a/src/imports/controls/Popup.qml
+++ b/src/imports/controls/Popup.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.Popup {
id: control
diff --git a/src/imports/controls/ProgressBar.qml b/src/imports/controls/ProgressBar.qml
index 00cdb28f..d91bcd57 100644
--- a/src/imports/controls/ProgressBar.qml
+++ b/src/imports/controls/ProgressBar.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
T.ProgressBar {
id: control
diff --git a/src/imports/controls/RadioButton.qml b/src/imports/controls/RadioButton.qml
index a9f63652..d95d2a7b 100644
--- a/src/imports/controls/RadioButton.qml
+++ b/src/imports/controls/RadioButton.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.RadioButton {
id: control
diff --git a/src/imports/controls/RadioDelegate.qml b/src/imports/controls/RadioDelegate.qml
index 8cfe6e5f..556d678f 100644
--- a/src/imports/controls/RadioDelegate.qml
+++ b/src/imports/controls/RadioDelegate.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.RadioDelegate {
id: control
diff --git a/src/imports/controls/RangeSlider.qml b/src/imports/controls/RangeSlider.qml
index c8b88a97..f2c9266e 100644
--- a/src/imports/controls/RangeSlider.qml
+++ b/src/imports/controls/RangeSlider.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.RangeSlider {
id: control
diff --git a/src/imports/controls/RoundButton.qml b/src/imports/controls/RoundButton.qml
index 13ccddc5..9692b9de 100644
--- a/src/imports/controls/RoundButton.qml
+++ b/src/imports/controls/RoundButton.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.RoundButton {
id: control
diff --git a/src/imports/controls/ScrollBar.qml b/src/imports/controls/ScrollBar.qml
index cf6d7da6..b67a2564 100644
--- a/src/imports/controls/ScrollBar.qml
+++ b/src/imports/controls/ScrollBar.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.ScrollBar {
id: control
diff --git a/src/imports/controls/ScrollIndicator.qml b/src/imports/controls/ScrollIndicator.qml
index ee6a321e..0025d489 100644
--- a/src/imports/controls/ScrollIndicator.qml
+++ b/src/imports/controls/ScrollIndicator.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.ScrollIndicator {
id: control
diff --git a/src/imports/controls/ScrollView.qml b/src/imports/controls/ScrollView.qml
index 2618ee3f..725a50a9 100644
--- a/src/imports/controls/ScrollView.qml
+++ b/src/imports/controls/ScrollView.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.ScrollView {
id: control
diff --git a/src/imports/controls/Slider.qml b/src/imports/controls/Slider.qml
index 6e0fd24c..9d4942c9 100644
--- a/src/imports/controls/Slider.qml
+++ b/src/imports/controls/Slider.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.Slider {
id: control
diff --git a/src/imports/controls/SpinBox.qml b/src/imports/controls/SpinBox.qml
index 067507d8..51d635a6 100644
--- a/src/imports/controls/SpinBox.qml
+++ b/src/imports/controls/SpinBox.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.SpinBox {
id: control
@@ -64,7 +64,7 @@ T.SpinBox {
contentItem: TextInput {
z: 2
- text: control.textFromValue(control.value, control.locale)
+ text: control.displayText
font: control.font
color: control.palette.text
diff --git a/src/imports/controls/StackView.qml b/src/imports/controls/StackView.qml
index 166089bd..cc4e1472 100644
--- a/src/imports/controls/StackView.qml
+++ b/src/imports/controls/StackView.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Templates 2.4 as T
T.StackView {
id: control
diff --git a/src/imports/controls/SwipeDelegate.qml b/src/imports/controls/SwipeDelegate.qml
index 70c76f26..4f2c9ee1 100644
--- a/src/imports/controls/SwipeDelegate.qml
+++ b/src/imports/controls/SwipeDelegate.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.SwipeDelegate {
id: control
diff --git a/src/imports/controls/SwipeView.qml b/src/imports/controls/SwipeView.qml
index 2b4e9c2e..d0816c50 100644
--- a/src/imports/controls/SwipeView.qml
+++ b/src/imports/controls/SwipeView.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Templates 2.4 as T
T.SwipeView {
id: control
diff --git a/src/imports/controls/Switch.qml b/src/imports/controls/Switch.qml
index 71317967..30da70f4 100644
--- a/src/imports/controls/Switch.qml
+++ b/src/imports/controls/Switch.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
T.Switch {
id: control
diff --git a/src/imports/controls/SwitchDelegate.qml b/src/imports/controls/SwitchDelegate.qml
index 08a9d641..21a11491 100644
--- a/src/imports/controls/SwitchDelegate.qml
+++ b/src/imports/controls/SwitchDelegate.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
T.SwitchDelegate {
id: control
diff --git a/src/imports/controls/TabBar.qml b/src/imports/controls/TabBar.qml
index ed2382d3..d95d7f39 100644
--- a/src/imports/controls/TabBar.qml
+++ b/src/imports/controls/TabBar.qml
@@ -34,8 +34,8 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
T.TabBar {
id: control
diff --git a/src/imports/controls/TabButton.qml b/src/imports/controls/TabButton.qml
index a6671c04..964f4e1f 100644
--- a/src/imports/controls/TabButton.qml
+++ b/src/imports/controls/TabButton.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.TabButton {
id: control
diff --git a/src/imports/controls/TextArea.qml b/src/imports/controls/TextArea.qml
index 9021d558..00a97957 100644
--- a/src/imports/controls/TextArea.qml
+++ b/src/imports/controls/TextArea.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.TextArea {
id: control
diff --git a/src/imports/controls/TextField.qml b/src/imports/controls/TextField.qml
index 52125501..333c5bba 100644
--- a/src/imports/controls/TextField.qml
+++ b/src/imports/controls/TextField.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.TextField {
id: control
diff --git a/src/imports/controls/ToolBar.qml b/src/imports/controls/ToolBar.qml
index cd1bbdc3..ba6684b9 100644
--- a/src/imports/controls/ToolBar.qml
+++ b/src/imports/controls/ToolBar.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.ToolBar {
id: control
diff --git a/src/imports/controls/ToolButton.qml b/src/imports/controls/ToolButton.qml
index 511bd6eb..371d1546 100644
--- a/src/imports/controls/ToolButton.qml
+++ b/src/imports/controls/ToolButton.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.ToolButton {
id: control
diff --git a/src/imports/controls/ToolSeparator.qml b/src/imports/controls/ToolSeparator.qml
index 1a99953d..306ca575 100644
--- a/src/imports/controls/ToolSeparator.qml
+++ b/src/imports/controls/ToolSeparator.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.ToolSeparator {
id: control
diff --git a/src/imports/controls/ToolTip.qml b/src/imports/controls/ToolTip.qml
index 7682c07e..46f7f577 100644
--- a/src/imports/controls/ToolTip.qml
+++ b/src/imports/controls/ToolTip.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.ToolTip {
id: control
diff --git a/src/imports/controls/Tumbler.qml b/src/imports/controls/Tumbler.qml
index 918144a0..25c00162 100644
--- a/src/imports/controls/Tumbler.qml
+++ b/src/imports/controls/Tumbler.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
T.Tumbler {
id: control
diff --git a/src/imports/controls/doc/images/qtquickcontrols2-checkbox-group.png b/src/imports/controls/doc/images/qtquickcontrols2-checkbox-group.png
new file mode 100644
index 00000000..63d77bee
--- /dev/null
+++ b/src/imports/controls/doc/images/qtquickcontrols2-checkbox-group.png
Binary files differ
diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-checkbox-group.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-checkbox-group.qml
new file mode 100644
index 00000000..985e6219
--- /dev/null
+++ b/src/imports/controls/doc/snippets/qtquickcontrols2-checkbox-group.qml
@@ -0,0 +1,58 @@
+/****************************************************************************
+**
+** Copyright (C) 2017 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:FDL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU Free Documentation License Usage
+** Alternatively, this file may be used under the terms of the GNU Free
+** Documentation License version 1.3 as published by the Free Software
+** Foundation and appearing in the file included in the packaging of
+** this file. Please review the following information to ensure
+** the GNU Free Documentation License version 1.3 requirements
+** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick 2.0
+import QtQuick.Controls 2.4
+
+//! [1]
+Column {
+ ButtonGroup {
+ id: childGroup
+ exclusive: false
+ checkState: parentBox.checkState
+ }
+
+ CheckBox {
+ id: parentBox
+ text: qsTr("Parent")
+ checkState: childGroup.checkState
+ }
+
+ CheckBox {
+ checked: true
+ text: qsTr("Child 1")
+ leftPadding: indicator.width
+ ButtonGroup.group: childGroup
+ }
+
+ CheckBox {
+ text: qsTr("Child 2")
+ leftPadding: indicator.width
+ ButtonGroup.group: childGroup
+ }
+}
+//! [1]
diff --git a/src/imports/controls/fusion/ApplicationWindow.qml b/src/imports/controls/fusion/ApplicationWindow.qml
index 80c4317b..570d84b4 100644
--- a/src/imports/controls/fusion/ApplicationWindow.qml
+++ b/src/imports/controls/fusion/ApplicationWindow.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
+import QtQuick 2.11
import QtQuick.Window 2.2
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.ApplicationWindow {
id: window
diff --git a/src/imports/controls/fusion/BusyIndicator.qml b/src/imports/controls/fusion/BusyIndicator.qml
index d0f2b531..1de0e973 100644
--- a/src/imports/controls/fusion/BusyIndicator.qml
+++ b/src/imports/controls/fusion/BusyIndicator.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.BusyIndicator {
id: control
diff --git a/src/imports/controls/fusion/Button.qml b/src/imports/controls/fusion/Button.qml
index 1032446f..d33544ae 100644
--- a/src/imports/controls/fusion/Button.qml
+++ b/src/imports/controls/fusion/Button.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.Button {
id: control
diff --git a/src/imports/controls/fusion/ButtonPanel.qml b/src/imports/controls/fusion/ButtonPanel.qml
index 801c2816..b1672bf0 100644
--- a/src/imports/controls/fusion/ButtonPanel.qml
+++ b/src/imports/controls/fusion/ButtonPanel.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
Rectangle {
id: panel
diff --git a/src/imports/controls/fusion/CheckBox.qml b/src/imports/controls/fusion/CheckBox.qml
index c7aba31a..4a10238d 100644
--- a/src/imports/controls/fusion/CheckBox.qml
+++ b/src/imports/controls/fusion/CheckBox.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.CheckBox {
id: control
diff --git a/src/imports/controls/fusion/CheckDelegate.qml b/src/imports/controls/fusion/CheckDelegate.qml
index e0b1611e..9c6b97ff 100644
--- a/src/imports/controls/fusion/CheckDelegate.qml
+++ b/src/imports/controls/fusion/CheckDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.CheckDelegate {
id: control
diff --git a/src/imports/controls/fusion/CheckIndicator.qml b/src/imports/controls/fusion/CheckIndicator.qml
index 83ee9b3a..5a5837ae 100644
--- a/src/imports/controls/fusion/CheckIndicator.qml
+++ b/src/imports/controls/fusion/CheckIndicator.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
Rectangle {
id: indicator
diff --git a/src/imports/controls/fusion/ComboBox.qml b/src/imports/controls/fusion/ComboBox.qml
index 0f87240e..c4d49e0f 100644
--- a/src/imports/controls/fusion/ComboBox.qml
+++ b/src/imports/controls/fusion/ComboBox.qml
@@ -34,13 +34,13 @@
**
****************************************************************************/
-import QtQuick 2.10
+import QtQuick 2.11
import QtQuick.Window 2.3
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.ComboBox {
id: control
diff --git a/src/imports/controls/fusion/DelayButton.qml b/src/imports/controls/fusion/DelayButton.qml
index abeda360..2c8006be 100644
--- a/src/imports/controls/fusion/DelayButton.qml
+++ b/src/imports/controls/fusion/DelayButton.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.DelayButton {
id: control
diff --git a/src/imports/controls/fusion/Dial.qml b/src/imports/controls/fusion/Dial.qml
index e1df1740..c9ed0c68 100644
--- a/src/imports/controls/fusion/Dial.qml
+++ b/src/imports/controls/fusion/Dial.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.Dial {
id: control
diff --git a/src/imports/controls/fusion/Dialog.qml b/src/imports/controls/fusion/Dialog.qml
index 098bd21c..4e43b038 100644
--- a/src/imports/controls/fusion/Dialog.qml
+++ b/src/imports/controls/fusion/Dialog.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.Dialog {
id: control
diff --git a/src/imports/controls/fusion/DialogButtonBox.qml b/src/imports/controls/fusion/DialogButtonBox.qml
index d2085e94..5d30c329 100644
--- a/src/imports/controls/fusion/DialogButtonBox.qml
+++ b/src/imports/controls/fusion/DialogButtonBox.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.DialogButtonBox {
id: control
diff --git a/src/imports/controls/fusion/Drawer.qml b/src/imports/controls/fusion/Drawer.qml
index b209c6f9..711040a2 100644
--- a/src/imports/controls/fusion/Drawer.qml
+++ b/src/imports/controls/fusion/Drawer.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.Drawer {
id: control
diff --git a/src/imports/controls/fusion/Frame.qml b/src/imports/controls/fusion/Frame.qml
index faefe1ad..4acce74a 100644
--- a/src/imports/controls/fusion/Frame.qml
+++ b/src/imports/controls/fusion/Frame.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.Frame {
id: control
diff --git a/src/imports/controls/fusion/GroupBox.qml b/src/imports/controls/fusion/GroupBox.qml
index 5331e6fa..a98cc9a8 100644
--- a/src/imports/controls/fusion/GroupBox.qml
+++ b/src/imports/controls/fusion/GroupBox.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.GroupBox {
id: control
diff --git a/src/imports/controls/fusion/ItemDelegate.qml b/src/imports/controls/fusion/ItemDelegate.qml
index cf7167fc..0936c7c2 100644
--- a/src/imports/controls/fusion/ItemDelegate.qml
+++ b/src/imports/controls/fusion/ItemDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.ItemDelegate {
id: control
diff --git a/src/imports/controls/fusion/Label.qml b/src/imports/controls/fusion/Label.qml
index 92881b4d..1c6951c2 100644
--- a/src/imports/controls/fusion/Label.qml
+++ b/src/imports/controls/fusion/Label.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.Label {
id: control
diff --git a/src/imports/controls/fusion/Menu.qml b/src/imports/controls/fusion/Menu.qml
index a767354c..dc8e2eb2 100644
--- a/src/imports/controls/fusion/Menu.qml
+++ b/src/imports/controls/fusion/Menu.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.Menu {
id: control
diff --git a/src/imports/controls/fusion/MenuBar.qml b/src/imports/controls/fusion/MenuBar.qml
index 061e718b..d1530d75 100644
--- a/src/imports/controls/fusion/MenuBar.qml
+++ b/src/imports/controls/fusion/MenuBar.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.MenuBar {
id: control
diff --git a/src/imports/controls/fusion/MenuBarItem.qml b/src/imports/controls/fusion/MenuBarItem.qml
index 6a23484a..2b4425a9 100644
--- a/src/imports/controls/fusion/MenuBarItem.qml
+++ b/src/imports/controls/fusion/MenuBarItem.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.MenuBarItem {
id: control
diff --git a/src/imports/controls/fusion/MenuItem.qml b/src/imports/controls/fusion/MenuItem.qml
index 21f42c53..35d7248f 100644
--- a/src/imports/controls/fusion/MenuItem.qml
+++ b/src/imports/controls/fusion/MenuItem.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.MenuItem {
id: control
diff --git a/src/imports/controls/fusion/MenuSeparator.qml b/src/imports/controls/fusion/MenuSeparator.qml
index 8bee8f65..a426c0fe 100644
--- a/src/imports/controls/fusion/MenuSeparator.qml
+++ b/src/imports/controls/fusion/MenuSeparator.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.MenuSeparator {
id: control
diff --git a/src/imports/controls/fusion/Page.qml b/src/imports/controls/fusion/Page.qml
index 7c6cb934..20febd6a 100644
--- a/src/imports/controls/fusion/Page.qml
+++ b/src/imports/controls/fusion/Page.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.Page {
id: control
diff --git a/src/imports/controls/fusion/PageIndicator.qml b/src/imports/controls/fusion/PageIndicator.qml
index ff3a935b..39d28ca2 100644
--- a/src/imports/controls/fusion/PageIndicator.qml
+++ b/src/imports/controls/fusion/PageIndicator.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.PageIndicator {
id: control
diff --git a/src/imports/controls/fusion/Pane.qml b/src/imports/controls/fusion/Pane.qml
index b91e5414..59c65cd9 100644
--- a/src/imports/controls/fusion/Pane.qml
+++ b/src/imports/controls/fusion/Pane.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.Pane {
id: control
diff --git a/src/imports/controls/fusion/Popup.qml b/src/imports/controls/fusion/Popup.qml
index 4d3031eb..319e5b8a 100644
--- a/src/imports/controls/fusion/Popup.qml
+++ b/src/imports/controls/fusion/Popup.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.Popup {
id: control
diff --git a/src/imports/controls/fusion/ProgressBar.qml b/src/imports/controls/fusion/ProgressBar.qml
index f7e21809..2b4edd3d 100644
--- a/src/imports/controls/fusion/ProgressBar.qml
+++ b/src/imports/controls/fusion/ProgressBar.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.ProgressBar {
id: control
diff --git a/src/imports/controls/fusion/RadioButton.qml b/src/imports/controls/fusion/RadioButton.qml
index 642c8acf..612319b4 100644
--- a/src/imports/controls/fusion/RadioButton.qml
+++ b/src/imports/controls/fusion/RadioButton.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.RadioButton {
id: control
diff --git a/src/imports/controls/fusion/RadioDelegate.qml b/src/imports/controls/fusion/RadioDelegate.qml
index 9b7df468..f5f57071 100644
--- a/src/imports/controls/fusion/RadioDelegate.qml
+++ b/src/imports/controls/fusion/RadioDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.RadioDelegate {
id: control
diff --git a/src/imports/controls/fusion/RadioIndicator.qml b/src/imports/controls/fusion/RadioIndicator.qml
index 2aceab2e..d3d40c11 100644
--- a/src/imports/controls/fusion/RadioIndicator.qml
+++ b/src/imports/controls/fusion/RadioIndicator.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
Rectangle {
id: indicator
diff --git a/src/imports/controls/fusion/RangeSlider.qml b/src/imports/controls/fusion/RangeSlider.qml
index d5ec1e8a..260c21cf 100644
--- a/src/imports/controls/fusion/RangeSlider.qml
+++ b/src/imports/controls/fusion/RangeSlider.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.RangeSlider {
id: control
diff --git a/src/imports/controls/fusion/RoundButton.qml b/src/imports/controls/fusion/RoundButton.qml
index 390f78f3..9ebc74dd 100644
--- a/src/imports/controls/fusion/RoundButton.qml
+++ b/src/imports/controls/fusion/RoundButton.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.RoundButton {
id: control
diff --git a/src/imports/controls/fusion/ScrollBar.qml b/src/imports/controls/fusion/ScrollBar.qml
index e85c8440..0de27b22 100644
--- a/src/imports/controls/fusion/ScrollBar.qml
+++ b/src/imports/controls/fusion/ScrollBar.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.ScrollBar {
id: control
diff --git a/src/imports/controls/fusion/ScrollIndicator.qml b/src/imports/controls/fusion/ScrollIndicator.qml
index 68147ea5..f80514d6 100644
--- a/src/imports/controls/fusion/ScrollIndicator.qml
+++ b/src/imports/controls/fusion/ScrollIndicator.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.ScrollIndicator {
id: control
diff --git a/src/imports/controls/fusion/ScrollView.qml b/src/imports/controls/fusion/ScrollView.qml
index 560f9f71..5cbd170a 100644
--- a/src/imports/controls/fusion/ScrollView.qml
+++ b/src/imports/controls/fusion/ScrollView.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.ScrollView {
id: control
diff --git a/src/imports/controls/fusion/Slider.qml b/src/imports/controls/fusion/Slider.qml
index 0df63f8e..a4d28fe5 100644
--- a/src/imports/controls/fusion/Slider.qml
+++ b/src/imports/controls/fusion/Slider.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.Slider {
id: control
diff --git a/src/imports/controls/fusion/SliderGroove.qml b/src/imports/controls/fusion/SliderGroove.qml
index abe659da..cd90bd54 100644
--- a/src/imports/controls/fusion/SliderGroove.qml
+++ b/src/imports/controls/fusion/SliderGroove.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
Rectangle {
id: groove
diff --git a/src/imports/controls/fusion/SliderHandle.qml b/src/imports/controls/fusion/SliderHandle.qml
index 91f7711c..5ea2dd03 100644
--- a/src/imports/controls/fusion/SliderHandle.qml
+++ b/src/imports/controls/fusion/SliderHandle.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
Rectangle {
id: handle
diff --git a/src/imports/controls/fusion/SpinBox.qml b/src/imports/controls/fusion/SpinBox.qml
index ca9b2ed2..9d975fa8 100644
--- a/src/imports/controls/fusion/SpinBox.qml
+++ b/src/imports/controls/fusion/SpinBox.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.SpinBox {
id: control
@@ -66,7 +66,7 @@ T.SpinBox {
contentItem: TextInput {
z: 2
- text: control.textFromValue(control.value, control.locale)
+ text: control.displayText
font: control.font
color: control.palette.text
diff --git a/src/imports/controls/fusion/SwipeDelegate.qml b/src/imports/controls/fusion/SwipeDelegate.qml
index 7df4aa87..0704f5b3 100644
--- a/src/imports/controls/fusion/SwipeDelegate.qml
+++ b/src/imports/controls/fusion/SwipeDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.SwipeDelegate {
id: control
diff --git a/src/imports/controls/fusion/Switch.qml b/src/imports/controls/fusion/Switch.qml
index 5394fc95..0f5d484b 100644
--- a/src/imports/controls/fusion/Switch.qml
+++ b/src/imports/controls/fusion/Switch.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.Switch {
id: control
diff --git a/src/imports/controls/fusion/SwitchDelegate.qml b/src/imports/controls/fusion/SwitchDelegate.qml
index 718dab39..4a09ba25 100644
--- a/src/imports/controls/fusion/SwitchDelegate.qml
+++ b/src/imports/controls/fusion/SwitchDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.SwitchDelegate {
id: control
diff --git a/src/imports/controls/fusion/SwitchIndicator.qml b/src/imports/controls/fusion/SwitchIndicator.qml
index 2aa7aee0..22430dc3 100644
--- a/src/imports/controls/fusion/SwitchIndicator.qml
+++ b/src/imports/controls/fusion/SwitchIndicator.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
Rectangle {
id: indicator
diff --git a/src/imports/controls/fusion/TabBar.qml b/src/imports/controls/fusion/TabBar.qml
index a06e0bae..d6f3194b 100644
--- a/src/imports/controls/fusion/TabBar.qml
+++ b/src/imports/controls/fusion/TabBar.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.TabBar {
id: control
diff --git a/src/imports/controls/fusion/TabButton.qml b/src/imports/controls/fusion/TabButton.qml
index c4ec2029..0875f327 100644
--- a/src/imports/controls/fusion/TabButton.qml
+++ b/src/imports/controls/fusion/TabButton.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.TabButton {
id: control
diff --git a/src/imports/controls/fusion/TextArea.qml b/src/imports/controls/fusion/TextArea.qml
index 6d47e237..56541d89 100644
--- a/src/imports/controls/fusion/TextArea.qml
+++ b/src/imports/controls/fusion/TextArea.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.TextArea {
id: control
diff --git a/src/imports/controls/fusion/TextField.qml b/src/imports/controls/fusion/TextField.qml
index 686690bb..e66857cd 100644
--- a/src/imports/controls/fusion/TextField.qml
+++ b/src/imports/controls/fusion/TextField.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.TextField {
id: control
diff --git a/src/imports/controls/fusion/ToolBar.qml b/src/imports/controls/fusion/ToolBar.qml
index 3dbca03d..ab272517 100644
--- a/src/imports/controls/fusion/ToolBar.qml
+++ b/src/imports/controls/fusion/ToolBar.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.ToolBar {
id: control
diff --git a/src/imports/controls/fusion/ToolButton.qml b/src/imports/controls/fusion/ToolButton.qml
index c7dacbc4..dc3c9663 100644
--- a/src/imports/controls/fusion/ToolButton.qml
+++ b/src/imports/controls/fusion/ToolButton.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.ToolButton {
id: control
diff --git a/src/imports/controls/fusion/ToolSeparator.qml b/src/imports/controls/fusion/ToolSeparator.qml
index 41868912..fd10dd72 100644
--- a/src/imports/controls/fusion/ToolSeparator.qml
+++ b/src/imports/controls/fusion/ToolSeparator.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.ToolSeparator {
id: control
diff --git a/src/imports/controls/fusion/ToolTip.qml b/src/imports/controls/fusion/ToolTip.qml
index 6b24e209..2b404a5e 100644
--- a/src/imports/controls/fusion/ToolTip.qml
+++ b/src/imports/controls/fusion/ToolTip.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.ToolTip {
id: control
diff --git a/src/imports/controls/fusion/Tumbler.qml b/src/imports/controls/fusion/Tumbler.qml
index 6f06e8f5..d4a8cc7e 100644
--- a/src/imports/controls/fusion/Tumbler.qml
+++ b/src/imports/controls/fusion/Tumbler.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Fusion 2.3
-import QtQuick.Controls.Fusion.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Fusion 2.4
+import QtQuick.Controls.Fusion.impl 2.4
T.Tumbler {
id: control
diff --git a/src/imports/controls/fusion/qtquickcontrols2fusionstyleplugin.cpp b/src/imports/controls/fusion/qtquickcontrols2fusionstyleplugin.cpp
index 1fcacc5e..9a329d03 100644
--- a/src/imports/controls/fusion/qtquickcontrols2fusionstyleplugin.cpp
+++ b/src/imports/controls/fusion/qtquickcontrols2fusionstyleplugin.cpp
@@ -82,7 +82,8 @@ QtQuickControls2FusionStylePlugin::QtQuickControls2FusionStylePlugin(QObject *pa
void QtQuickControls2FusionStylePlugin::registerTypes(const char *uri)
{
- qmlRegisterModule(uri, 2, QT_VERSION_MINOR - 7); // Qt 5.10->2.3, 5.11->2.4...
+ qmlRegisterModule(uri, 2, 3); // Qt 5.10->2.3
+ qmlRegisterModule(uri, 2, QT_VERSION_MINOR - 7); // Qt 5.11->2.4, 5.12->2.5...
}
void QtQuickControls2FusionStylePlugin::initializeEngine(QQmlEngine *engine, const char *uri)
@@ -90,7 +91,7 @@ void QtQuickControls2FusionStylePlugin::initializeEngine(QQmlEngine *engine, con
QQuickStylePlugin::initializeEngine(engine, uri);
QByteArray import = QByteArray(uri) + ".impl";
- qmlRegisterModule(import, 2, QT_VERSION_MINOR - 7); // Qt 5.10->2.3, 5.11->2.4...
+ qmlRegisterModule(import, 2, QT_VERSION_MINOR - 7); // Qt 5.11->2.4, 5.12->2.5...
qmlRegisterSingletonType<QQuickFusionStyle>(import, 2, 3, "Fusion", styleSingleton);
diff --git a/src/imports/controls/imagine/ApplicationWindow.qml b/src/imports/controls/imagine/ApplicationWindow.qml
index d0219da0..8600e8d6 100644
--- a/src/imports/controls/imagine/ApplicationWindow.qml
+++ b/src/imports/controls/imagine/ApplicationWindow.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
+import QtQuick 2.11
import QtQuick.Window 2.2
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.ApplicationWindow {
id: window
diff --git a/src/imports/controls/imagine/BusyIndicator.qml b/src/imports/controls/imagine/BusyIndicator.qml
index a1ce3f7b..d373dcfd 100644
--- a/src/imports/controls/imagine/BusyIndicator.qml
+++ b/src/imports/controls/imagine/BusyIndicator.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.BusyIndicator {
id: control
diff --git a/src/imports/controls/imagine/Button.qml b/src/imports/controls/imagine/Button.qml
index 8ccedbf8..7c8ab584 100644
--- a/src/imports/controls/imagine/Button.qml
+++ b/src/imports/controls/imagine/Button.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.Button {
id: control
diff --git a/src/imports/controls/imagine/CheckBox.qml b/src/imports/controls/imagine/CheckBox.qml
index 6912e955..8c5cd918 100644
--- a/src/imports/controls/imagine/CheckBox.qml
+++ b/src/imports/controls/imagine/CheckBox.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.CheckBox {
id: control
diff --git a/src/imports/controls/imagine/CheckDelegate.qml b/src/imports/controls/imagine/CheckDelegate.qml
index e98a612c..76cd89c4 100644
--- a/src/imports/controls/imagine/CheckDelegate.qml
+++ b/src/imports/controls/imagine/CheckDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.CheckDelegate {
id: control
diff --git a/src/imports/controls/imagine/ComboBox.qml b/src/imports/controls/imagine/ComboBox.qml
index ce23d1f8..eae8569e 100644
--- a/src/imports/controls/imagine/ComboBox.qml
+++ b/src/imports/controls/imagine/ComboBox.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
+import QtQuick 2.11
import QtQuick.Window 2.3
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.ComboBox {
id: control
diff --git a/src/imports/controls/imagine/DelayButton.qml b/src/imports/controls/imagine/DelayButton.qml
index 3b2eb8bb..14db2b96 100644
--- a/src/imports/controls/imagine/DelayButton.qml
+++ b/src/imports/controls/imagine/DelayButton.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
import QtGraphicalEffects 1.0
T.DelayButton {
diff --git a/src/imports/controls/imagine/Dial.qml b/src/imports/controls/imagine/Dial.qml
index 04f8e1b8..e9652249 100644
--- a/src/imports/controls/imagine/Dial.qml
+++ b/src/imports/controls/imagine/Dial.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.Dial {
id: control
diff --git a/src/imports/controls/imagine/Dialog.qml b/src/imports/controls/imagine/Dialog.qml
index e7a8cce5..67215ec5 100644
--- a/src/imports/controls/imagine/Dialog.qml
+++ b/src/imports/controls/imagine/Dialog.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.Dialog {
id: control
diff --git a/src/imports/controls/imagine/DialogButtonBox.qml b/src/imports/controls/imagine/DialogButtonBox.qml
index ae0e64de..d24ad4ee 100644
--- a/src/imports/controls/imagine/DialogButtonBox.qml
+++ b/src/imports/controls/imagine/DialogButtonBox.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.DialogButtonBox {
id: control
diff --git a/src/imports/controls/imagine/Drawer.qml b/src/imports/controls/imagine/Drawer.qml
index f52f9554..d4bf5a7c 100644
--- a/src/imports/controls/imagine/Drawer.qml
+++ b/src/imports/controls/imagine/Drawer.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.Drawer {
id: control
diff --git a/src/imports/controls/imagine/Frame.qml b/src/imports/controls/imagine/Frame.qml
index 43c852f1..4c9b87d3 100644
--- a/src/imports/controls/imagine/Frame.qml
+++ b/src/imports/controls/imagine/Frame.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.Frame {
id: control
diff --git a/src/imports/controls/imagine/GroupBox.qml b/src/imports/controls/imagine/GroupBox.qml
index ac09fb16..b2b199a3 100644
--- a/src/imports/controls/imagine/GroupBox.qml
+++ b/src/imports/controls/imagine/GroupBox.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.GroupBox {
id: control
diff --git a/src/imports/controls/imagine/ItemDelegate.qml b/src/imports/controls/imagine/ItemDelegate.qml
index 1d16faf4..6d1d7bbe 100644
--- a/src/imports/controls/imagine/ItemDelegate.qml
+++ b/src/imports/controls/imagine/ItemDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.ItemDelegate {
id: control
diff --git a/src/imports/controls/imagine/Label.qml b/src/imports/controls/imagine/Label.qml
index 0db416e1..c73954b2 100644
--- a/src/imports/controls/imagine/Label.qml
+++ b/src/imports/controls/imagine/Label.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.Label {
id: control
diff --git a/src/imports/controls/imagine/Menu.qml b/src/imports/controls/imagine/Menu.qml
index 80bda5ec..83953d05 100644
--- a/src/imports/controls/imagine/Menu.qml
+++ b/src/imports/controls/imagine/Menu.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.Menu {
id: control
diff --git a/src/imports/controls/imagine/MenuItem.qml b/src/imports/controls/imagine/MenuItem.qml
index 8b576444..80d6f2cd 100644
--- a/src/imports/controls/imagine/MenuItem.qml
+++ b/src/imports/controls/imagine/MenuItem.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.MenuItem {
id: control
diff --git a/src/imports/controls/imagine/MenuSeparator.qml b/src/imports/controls/imagine/MenuSeparator.qml
index d445a9e1..a14fe9a6 100644
--- a/src/imports/controls/imagine/MenuSeparator.qml
+++ b/src/imports/controls/imagine/MenuSeparator.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.MenuSeparator {
id: control
diff --git a/src/imports/controls/imagine/Page.qml b/src/imports/controls/imagine/Page.qml
index f3bdba51..72f54830 100644
--- a/src/imports/controls/imagine/Page.qml
+++ b/src/imports/controls/imagine/Page.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.Page {
id: control
diff --git a/src/imports/controls/imagine/PageIndicator.qml b/src/imports/controls/imagine/PageIndicator.qml
index fafd73d3..156033e2 100644
--- a/src/imports/controls/imagine/PageIndicator.qml
+++ b/src/imports/controls/imagine/PageIndicator.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.PageIndicator {
id: control
diff --git a/src/imports/controls/imagine/Pane.qml b/src/imports/controls/imagine/Pane.qml
index b0029d49..a1899149 100644
--- a/src/imports/controls/imagine/Pane.qml
+++ b/src/imports/controls/imagine/Pane.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.Pane {
id: control
diff --git a/src/imports/controls/imagine/Popup.qml b/src/imports/controls/imagine/Popup.qml
index 08fcfc69..a111df3a 100644
--- a/src/imports/controls/imagine/Popup.qml
+++ b/src/imports/controls/imagine/Popup.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.Popup {
id: control
diff --git a/src/imports/controls/imagine/ProgressBar.qml b/src/imports/controls/imagine/ProgressBar.qml
index 89645d3c..5cfc292c 100644
--- a/src/imports/controls/imagine/ProgressBar.qml
+++ b/src/imports/controls/imagine/ProgressBar.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
import QtGraphicalEffects 1.0
T.ProgressBar {
diff --git a/src/imports/controls/imagine/RadioButton.qml b/src/imports/controls/imagine/RadioButton.qml
index 7921cfb1..57bdedaa 100644
--- a/src/imports/controls/imagine/RadioButton.qml
+++ b/src/imports/controls/imagine/RadioButton.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.RadioButton {
id: control
diff --git a/src/imports/controls/imagine/RadioDelegate.qml b/src/imports/controls/imagine/RadioDelegate.qml
index 25d7dd2d..e7e37b0b 100644
--- a/src/imports/controls/imagine/RadioDelegate.qml
+++ b/src/imports/controls/imagine/RadioDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.RadioDelegate {
id: control
diff --git a/src/imports/controls/imagine/RangeSlider.qml b/src/imports/controls/imagine/RangeSlider.qml
index b902806a..5c7ee70e 100644
--- a/src/imports/controls/imagine/RangeSlider.qml
+++ b/src/imports/controls/imagine/RangeSlider.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.RangeSlider {
id: control
diff --git a/src/imports/controls/imagine/RoundButton.qml b/src/imports/controls/imagine/RoundButton.qml
index 4f8a195e..b9f4ae06 100644
--- a/src/imports/controls/imagine/RoundButton.qml
+++ b/src/imports/controls/imagine/RoundButton.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.RoundButton {
id: control
diff --git a/src/imports/controls/imagine/ScrollBar.qml b/src/imports/controls/imagine/ScrollBar.qml
index ad764242..49c8d1f0 100644
--- a/src/imports/controls/imagine/ScrollBar.qml
+++ b/src/imports/controls/imagine/ScrollBar.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.ScrollBar {
id: control
diff --git a/src/imports/controls/imagine/ScrollIndicator.qml b/src/imports/controls/imagine/ScrollIndicator.qml
index a0ab8783..a2d0e94f 100644
--- a/src/imports/controls/imagine/ScrollIndicator.qml
+++ b/src/imports/controls/imagine/ScrollIndicator.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.ScrollIndicator {
id: control
diff --git a/src/imports/controls/imagine/ScrollView.qml b/src/imports/controls/imagine/ScrollView.qml
index 8d623f9a..9ab64881 100644
--- a/src/imports/controls/imagine/ScrollView.qml
+++ b/src/imports/controls/imagine/ScrollView.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.ScrollView {
id: control
diff --git a/src/imports/controls/imagine/Slider.qml b/src/imports/controls/imagine/Slider.qml
index e997f411..a206c03b 100644
--- a/src/imports/controls/imagine/Slider.qml
+++ b/src/imports/controls/imagine/Slider.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.Slider {
id: control
diff --git a/src/imports/controls/imagine/SpinBox.qml b/src/imports/controls/imagine/SpinBox.qml
index ebadb860..334b6996 100644
--- a/src/imports/controls/imagine/SpinBox.qml
+++ b/src/imports/controls/imagine/SpinBox.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.SpinBox {
id: control
@@ -65,7 +65,7 @@ T.SpinBox {
contentItem: TextInput {
z: 2
- text: control.textFromValue(control.value, control.locale)
+ text: control.displayText
opacity: control.enabled ? 1 : 0.3
font: control.font
diff --git a/src/imports/controls/imagine/StackView.qml b/src/imports/controls/imagine/StackView.qml
index d462239a..8d749519 100644
--- a/src/imports/controls/imagine/StackView.qml
+++ b/src/imports/controls/imagine/StackView.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.StackView {
id: control
diff --git a/src/imports/controls/imagine/SwipeDelegate.qml b/src/imports/controls/imagine/SwipeDelegate.qml
index be88fb7d..23edfc58 100644
--- a/src/imports/controls/imagine/SwipeDelegate.qml
+++ b/src/imports/controls/imagine/SwipeDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.SwipeDelegate {
id: control
diff --git a/src/imports/controls/imagine/SwipeView.qml b/src/imports/controls/imagine/SwipeView.qml
index 8410d0bd..f997be0d 100644
--- a/src/imports/controls/imagine/SwipeView.qml
+++ b/src/imports/controls/imagine/SwipeView.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.SwipeView {
id: control
diff --git a/src/imports/controls/imagine/Switch.qml b/src/imports/controls/imagine/Switch.qml
index 6d69502d..44e5d68e 100644
--- a/src/imports/controls/imagine/Switch.qml
+++ b/src/imports/controls/imagine/Switch.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.Switch {
id: control
diff --git a/src/imports/controls/imagine/SwitchDelegate.qml b/src/imports/controls/imagine/SwitchDelegate.qml
index 0c9bfb15..497bc4e5 100644
--- a/src/imports/controls/imagine/SwitchDelegate.qml
+++ b/src/imports/controls/imagine/SwitchDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.SwitchDelegate {
id: control
diff --git a/src/imports/controls/imagine/TabBar.qml b/src/imports/controls/imagine/TabBar.qml
index 49e7b425..be143bf1 100644
--- a/src/imports/controls/imagine/TabBar.qml
+++ b/src/imports/controls/imagine/TabBar.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.TabBar {
id: control
diff --git a/src/imports/controls/imagine/TabButton.qml b/src/imports/controls/imagine/TabButton.qml
index aa87f472..d4098c9e 100644
--- a/src/imports/controls/imagine/TabButton.qml
+++ b/src/imports/controls/imagine/TabButton.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.TabButton {
id: control
diff --git a/src/imports/controls/imagine/TextArea.qml b/src/imports/controls/imagine/TextArea.qml
index ac212b95..49153b5d 100644
--- a/src/imports/controls/imagine/TextArea.qml
+++ b/src/imports/controls/imagine/TextArea.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.TextArea {
id: control
diff --git a/src/imports/controls/imagine/TextField.qml b/src/imports/controls/imagine/TextField.qml
index a6449884..09ef5bcb 100644
--- a/src/imports/controls/imagine/TextField.qml
+++ b/src/imports/controls/imagine/TextField.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.TextField {
id: control
diff --git a/src/imports/controls/imagine/ToolBar.qml b/src/imports/controls/imagine/ToolBar.qml
index a4bf9c1f..289566ec 100644
--- a/src/imports/controls/imagine/ToolBar.qml
+++ b/src/imports/controls/imagine/ToolBar.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.ToolBar {
id: control
diff --git a/src/imports/controls/imagine/ToolButton.qml b/src/imports/controls/imagine/ToolButton.qml
index b82b59fd..63260ff5 100644
--- a/src/imports/controls/imagine/ToolButton.qml
+++ b/src/imports/controls/imagine/ToolButton.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.ToolButton {
id: control
diff --git a/src/imports/controls/imagine/ToolSeparator.qml b/src/imports/controls/imagine/ToolSeparator.qml
index 99a45938..88b645cb 100644
--- a/src/imports/controls/imagine/ToolSeparator.qml
+++ b/src/imports/controls/imagine/ToolSeparator.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.ToolSeparator {
id: control
diff --git a/src/imports/controls/imagine/ToolTip.qml b/src/imports/controls/imagine/ToolTip.qml
index cc89a728..81a5e8aa 100644
--- a/src/imports/controls/imagine/ToolTip.qml
+++ b/src/imports/controls/imagine/ToolTip.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.ToolTip {
id: control
diff --git a/src/imports/controls/imagine/Tumbler.qml b/src/imports/controls/imagine/Tumbler.qml
index 5e1c913c..7cd2b6a9 100644
--- a/src/imports/controls/imagine/Tumbler.qml
+++ b/src/imports/controls/imagine/Tumbler.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Imagine 2.3
-import QtQuick.Controls.Imagine.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Imagine 2.4
+import QtQuick.Controls.Imagine.impl 2.4
T.Tumbler {
id: control
diff --git a/src/imports/controls/material/ApplicationWindow.qml b/src/imports/controls/material/ApplicationWindow.qml
index 603edc84..c3d866ce 100644
--- a/src/imports/controls/material/ApplicationWindow.qml
+++ b/src/imports/controls/material/ApplicationWindow.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
+import QtQuick 2.11
import QtQuick.Window 2.3
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
T.ApplicationWindow {
id: window
diff --git a/src/imports/controls/material/BoxShadow.qml b/src/imports/controls/material/BoxShadow.qml
index 0930d7e8..3d352195 100644
--- a/src/imports/controls/material/BoxShadow.qml
+++ b/src/imports/controls/material/BoxShadow.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
/*
A implementation of CSS's box-shadow, used by ElevationEffect for a Material Design
diff --git a/src/imports/controls/material/BusyIndicator.qml b/src/imports/controls/material/BusyIndicator.qml
index d32b7299..8fc64029 100644
--- a/src/imports/controls/material/BusyIndicator.qml
+++ b/src/imports/controls/material/BusyIndicator.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.BusyIndicator {
id: control
diff --git a/src/imports/controls/material/Button.qml b/src/imports/controls/material/Button.qml
index e3e795ee..6401b2ad 100644
--- a/src/imports/controls/material/Button.qml
+++ b/src/imports/controls/material/Button.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.Button {
id: control
diff --git a/src/imports/controls/material/CheckBox.qml b/src/imports/controls/material/CheckBox.qml
index 64a89756..2a4d4e7c 100644
--- a/src/imports/controls/material/CheckBox.qml
+++ b/src/imports/controls/material/CheckBox.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.CheckBox {
id: control
diff --git a/src/imports/controls/material/CheckDelegate.qml b/src/imports/controls/material/CheckDelegate.qml
index 9ae86d53..8ccf399f 100644
--- a/src/imports/controls/material/CheckDelegate.qml
+++ b/src/imports/controls/material/CheckDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.CheckDelegate {
id: control
diff --git a/src/imports/controls/material/CheckIndicator.qml b/src/imports/controls/material/CheckIndicator.qml
index 662879b6..078b1637 100644
--- a/src/imports/controls/material/CheckIndicator.qml
+++ b/src/imports/controls/material/CheckIndicator.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
Rectangle {
id: indicatorItem
diff --git a/src/imports/controls/material/ComboBox.qml b/src/imports/controls/material/ComboBox.qml
index 79fbda4f..a58f1a37 100644
--- a/src/imports/controls/material/ComboBox.qml
+++ b/src/imports/controls/material/ComboBox.qml
@@ -34,13 +34,13 @@
**
****************************************************************************/
-import QtQuick 2.10
+import QtQuick 2.11
import QtQuick.Window 2.3
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.ComboBox {
id: control
diff --git a/src/imports/controls/material/CursorDelegate.qml b/src/imports/controls/material/CursorDelegate.qml
index 02d82784..5b2140a7 100644
--- a/src/imports/controls/material/CursorDelegate.qml
+++ b/src/imports/controls/material/CursorDelegate.qml
@@ -34,8 +34,8 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls.Material 2.3
+import QtQuick 2.11
+import QtQuick.Controls.Material 2.4
Rectangle {
id: cursor
diff --git a/src/imports/controls/material/DelayButton.qml b/src/imports/controls/material/DelayButton.qml
index a9ca5ccb..4043949c 100644
--- a/src/imports/controls/material/DelayButton.qml
+++ b/src/imports/controls/material/DelayButton.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.DelayButton {
id: control
diff --git a/src/imports/controls/material/Dial.qml b/src/imports/controls/material/Dial.qml
index 9d6969cf..eec16838 100644
--- a/src/imports/controls/material/Dial.qml
+++ b/src/imports/controls/material/Dial.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.Dial {
id: control
diff --git a/src/imports/controls/material/Dialog.qml b/src/imports/controls/material/Dialog.qml
index 123e7987..5bbafc68 100644
--- a/src/imports/controls/material/Dialog.qml
+++ b/src/imports/controls/material/Dialog.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.Dialog {
id: control
diff --git a/src/imports/controls/material/DialogButtonBox.qml b/src/imports/controls/material/DialogButtonBox.qml
index ad65becf..35df6362 100644
--- a/src/imports/controls/material/DialogButtonBox.qml
+++ b/src/imports/controls/material/DialogButtonBox.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.DialogButtonBox {
id: control
diff --git a/src/imports/controls/material/Drawer.qml b/src/imports/controls/material/Drawer.qml
index be16d3c5..827e0b21 100644
--- a/src/imports/controls/material/Drawer.qml
+++ b/src/imports/controls/material/Drawer.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.Drawer {
id: control
diff --git a/src/imports/controls/material/ElevationEffect.qml b/src/imports/controls/material/ElevationEffect.qml
index 8f66cd9a..71eccf4e 100644
--- a/src/imports/controls/material/ElevationEffect.qml
+++ b/src/imports/controls/material/ElevationEffect.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
/*
An effect for standard Material Design elevation shadows. Useful for using as \c layer.effect.
diff --git a/src/imports/controls/material/Frame.qml b/src/imports/controls/material/Frame.qml
index 145018e7..51721c2c 100644
--- a/src/imports/controls/material/Frame.qml
+++ b/src/imports/controls/material/Frame.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.Frame {
id: control
diff --git a/src/imports/controls/material/GroupBox.qml b/src/imports/controls/material/GroupBox.qml
index 55bcd71f..5b1e7813 100644
--- a/src/imports/controls/material/GroupBox.qml
+++ b/src/imports/controls/material/GroupBox.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.GroupBox {
id: control
diff --git a/src/imports/controls/material/ItemDelegate.qml b/src/imports/controls/material/ItemDelegate.qml
index b0705bbf..0efb3b93 100644
--- a/src/imports/controls/material/ItemDelegate.qml
+++ b/src/imports/controls/material/ItemDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.ItemDelegate {
id: control
diff --git a/src/imports/controls/material/Label.qml b/src/imports/controls/material/Label.qml
index 7724658d..26998a9e 100644
--- a/src/imports/controls/material/Label.qml
+++ b/src/imports/controls/material/Label.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
T.Label {
id: control
diff --git a/src/imports/controls/material/Menu.qml b/src/imports/controls/material/Menu.qml
index 4fa9bee4..0f40380c 100644
--- a/src/imports/controls/material/Menu.qml
+++ b/src/imports/controls/material/Menu.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.Menu {
id: control
diff --git a/src/imports/controls/material/MenuBar.qml b/src/imports/controls/material/MenuBar.qml
index c0a267ed..da12c9e9 100644
--- a/src/imports/controls/material/MenuBar.qml
+++ b/src/imports/controls/material/MenuBar.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.MenuBar {
id: control
diff --git a/src/imports/controls/material/MenuBarItem.qml b/src/imports/controls/material/MenuBarItem.qml
index d757bed1..3c99cc15 100644
--- a/src/imports/controls/material/MenuBarItem.qml
+++ b/src/imports/controls/material/MenuBarItem.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.MenuBarItem {
id: control
diff --git a/src/imports/controls/material/MenuItem.qml b/src/imports/controls/material/MenuItem.qml
index cb0e8ff1..13d4694c 100644
--- a/src/imports/controls/material/MenuItem.qml
+++ b/src/imports/controls/material/MenuItem.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.MenuItem {
id: control
diff --git a/src/imports/controls/material/MenuSeparator.qml b/src/imports/controls/material/MenuSeparator.qml
index 4fabc98a..d2059d3a 100644
--- a/src/imports/controls/material/MenuSeparator.qml
+++ b/src/imports/controls/material/MenuSeparator.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
T.MenuSeparator {
id: control
diff --git a/src/imports/controls/material/Page.qml b/src/imports/controls/material/Page.qml
index 9c0b7474..9993aa0f 100644
--- a/src/imports/controls/material/Page.qml
+++ b/src/imports/controls/material/Page.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
T.Page {
id: control
diff --git a/src/imports/controls/material/PageIndicator.qml b/src/imports/controls/material/PageIndicator.qml
index 107fe918..2ab9cd33 100644
--- a/src/imports/controls/material/PageIndicator.qml
+++ b/src/imports/controls/material/PageIndicator.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
T.PageIndicator {
id: control
diff --git a/src/imports/controls/material/Pane.qml b/src/imports/controls/material/Pane.qml
index e88b3866..0e232a9d 100644
--- a/src/imports/controls/material/Pane.qml
+++ b/src/imports/controls/material/Pane.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.Pane {
id: control
diff --git a/src/imports/controls/material/Popup.qml b/src/imports/controls/material/Popup.qml
index 35147a2b..0d255f7d 100644
--- a/src/imports/controls/material/Popup.qml
+++ b/src/imports/controls/material/Popup.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.Popup {
id: control
diff --git a/src/imports/controls/material/ProgressBar.qml b/src/imports/controls/material/ProgressBar.qml
index 3a20bbee..0f08c732 100644
--- a/src/imports/controls/material/ProgressBar.qml
+++ b/src/imports/controls/material/ProgressBar.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.ProgressBar {
id: control
diff --git a/src/imports/controls/material/RadioButton.qml b/src/imports/controls/material/RadioButton.qml
index b16c4d99..573dfd70 100644
--- a/src/imports/controls/material/RadioButton.qml
+++ b/src/imports/controls/material/RadioButton.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.RadioButton {
id: control
diff --git a/src/imports/controls/material/RadioDelegate.qml b/src/imports/controls/material/RadioDelegate.qml
index 4f69d624..d498ee80 100644
--- a/src/imports/controls/material/RadioDelegate.qml
+++ b/src/imports/controls/material/RadioDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.RadioDelegate {
id: control
diff --git a/src/imports/controls/material/RadioIndicator.qml b/src/imports/controls/material/RadioIndicator.qml
index 97bd73eb..47505903 100644
--- a/src/imports/controls/material/RadioIndicator.qml
+++ b/src/imports/controls/material/RadioIndicator.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
Rectangle {
implicitWidth: 20
diff --git a/src/imports/controls/material/RangeSlider.qml b/src/imports/controls/material/RangeSlider.qml
index 93f9adac..cbe21400 100644
--- a/src/imports/controls/material/RangeSlider.qml
+++ b/src/imports/controls/material/RangeSlider.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.RangeSlider {
id: control
diff --git a/src/imports/controls/material/RectangularGlow.qml b/src/imports/controls/material/RectangularGlow.qml
index bc567d56..35ca8b46 100644
--- a/src/imports/controls/material/RectangularGlow.qml
+++ b/src/imports/controls/material/RectangularGlow.qml
@@ -34,7 +34,7 @@
**
****************************************************************************/
-import QtQuick 2.0
+import QtQuick 2.11
/*
A cross-graphics API implementation of QtGraphicalEffects' RectangularGlow.
diff --git a/src/imports/controls/material/RoundButton.qml b/src/imports/controls/material/RoundButton.qml
index 17813e7f..92e6bc84 100644
--- a/src/imports/controls/material/RoundButton.qml
+++ b/src/imports/controls/material/RoundButton.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.RoundButton {
id: control
diff --git a/src/imports/controls/material/ScrollBar.qml b/src/imports/controls/material/ScrollBar.qml
index c782e6f7..2b5fa12f 100644
--- a/src/imports/controls/material/ScrollBar.qml
+++ b/src/imports/controls/material/ScrollBar.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
T.ScrollBar {
id: control
diff --git a/src/imports/controls/material/ScrollIndicator.qml b/src/imports/controls/material/ScrollIndicator.qml
index 7664500a..37a8429b 100644
--- a/src/imports/controls/material/ScrollIndicator.qml
+++ b/src/imports/controls/material/ScrollIndicator.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
T.ScrollIndicator {
id: control
diff --git a/src/imports/controls/material/Slider.qml b/src/imports/controls/material/Slider.qml
index b7468a19..1044354a 100644
--- a/src/imports/controls/material/Slider.qml
+++ b/src/imports/controls/material/Slider.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.Slider {
id: control
diff --git a/src/imports/controls/material/SliderHandle.qml b/src/imports/controls/material/SliderHandle.qml
index d9197543..64879a46 100644
--- a/src/imports/controls/material/SliderHandle.qml
+++ b/src/imports/controls/material/SliderHandle.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
Item {
id: root
diff --git a/src/imports/controls/material/SpinBox.qml b/src/imports/controls/material/SpinBox.qml
index 00b26eb0..cf9196ac 100644
--- a/src/imports/controls/material/SpinBox.qml
+++ b/src/imports/controls/material/SpinBox.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.SpinBox {
id: control
@@ -65,7 +65,7 @@ T.SpinBox {
}
contentItem: TextInput {
- text: control.textFromValue(control.value, control.locale)
+ text: control.displayText
font: control.font
color: enabled ? control.Material.foreground : control.Material.hintTextColor
diff --git a/src/imports/controls/material/StackView.qml b/src/imports/controls/material/StackView.qml
index 0a56c244..8b69121b 100644
--- a/src/imports/controls/material/StackView.qml
+++ b/src/imports/controls/material/StackView.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
T.StackView {
id: control
diff --git a/src/imports/controls/material/SwipeDelegate.qml b/src/imports/controls/material/SwipeDelegate.qml
index eb87ece9..1095ac68 100644
--- a/src/imports/controls/material/SwipeDelegate.qml
+++ b/src/imports/controls/material/SwipeDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.SwipeDelegate {
id: control
diff --git a/src/imports/controls/material/SwipeView.qml b/src/imports/controls/material/SwipeView.qml
index 78e25aab..d5915d9f 100644
--- a/src/imports/controls/material/SwipeView.qml
+++ b/src/imports/controls/material/SwipeView.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
T.SwipeView {
id: control
diff --git a/src/imports/controls/material/Switch.qml b/src/imports/controls/material/Switch.qml
index d41c8579..0434fb7f 100644
--- a/src/imports/controls/material/Switch.qml
+++ b/src/imports/controls/material/Switch.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
-import QtQuick.Templates 2.3 as T
+import QtQuick 2.11
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
+import QtQuick.Templates 2.4 as T
T.Switch {
id: control
diff --git a/src/imports/controls/material/SwitchDelegate.qml b/src/imports/controls/material/SwitchDelegate.qml
index 6dfb9bb0..308e9772 100644
--- a/src/imports/controls/material/SwitchDelegate.qml
+++ b/src/imports/controls/material/SwitchDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.SwitchDelegate {
id: control
diff --git a/src/imports/controls/material/SwitchIndicator.qml b/src/imports/controls/material/SwitchIndicator.qml
index 6d86d390..2c5fc33d 100644
--- a/src/imports/controls/material/SwitchIndicator.qml
+++ b/src/imports/controls/material/SwitchIndicator.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
Item {
id: indicator
diff --git a/src/imports/controls/material/TabBar.qml b/src/imports/controls/material/TabBar.qml
index af81cd58..c9410dfc 100644
--- a/src/imports/controls/material/TabBar.qml
+++ b/src/imports/controls/material/TabBar.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.TabBar {
id: control
diff --git a/src/imports/controls/material/TabButton.qml b/src/imports/controls/material/TabButton.qml
index c378aa89..3134cca9 100644
--- a/src/imports/controls/material/TabButton.qml
+++ b/src/imports/controls/material/TabButton.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.TabButton {
id: control
diff --git a/src/imports/controls/material/TextArea.qml b/src/imports/controls/material/TextArea.qml
index 199672ee..2dc64570 100644
--- a/src/imports/controls/material/TextArea.qml
+++ b/src/imports/controls/material/TextArea.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.TextArea {
id: control
diff --git a/src/imports/controls/material/TextField.qml b/src/imports/controls/material/TextField.qml
index e1ba6ed3..6ce905af 100644
--- a/src/imports/controls/material/TextField.qml
+++ b/src/imports/controls/material/TextField.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.TextField {
id: control
diff --git a/src/imports/controls/material/ToolBar.qml b/src/imports/controls/material/ToolBar.qml
index 1b60d814..766856d0 100644
--- a/src/imports/controls/material/ToolBar.qml
+++ b/src/imports/controls/material/ToolBar.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.ToolBar {
id: control
diff --git a/src/imports/controls/material/ToolButton.qml b/src/imports/controls/material/ToolButton.qml
index c67523ae..369c7f3b 100644
--- a/src/imports/controls/material/ToolButton.qml
+++ b/src/imports/controls/material/ToolButton.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Material 2.3
-import QtQuick.Controls.Material.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Material 2.4
+import QtQuick.Controls.Material.impl 2.4
T.ToolButton {
id: control
diff --git a/src/imports/controls/material/ToolSeparator.qml b/src/imports/controls/material/ToolSeparator.qml
index 7402779c..d6feeb85 100644
--- a/src/imports/controls/material/ToolSeparator.qml
+++ b/src/imports/controls/material/ToolSeparator.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
T.ToolSeparator {
id: control
diff --git a/src/imports/controls/material/ToolTip.qml b/src/imports/controls/material/ToolTip.qml
index 08efd064..bb7a9d7c 100644
--- a/src/imports/controls/material/ToolTip.qml
+++ b/src/imports/controls/material/ToolTip.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
T.ToolTip {
id: control
diff --git a/src/imports/controls/material/Tumbler.qml b/src/imports/controls/material/Tumbler.qml
index b331eae8..e3fdd869 100644
--- a/src/imports/controls/material/Tumbler.qml
+++ b/src/imports/controls/material/Tumbler.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Material 2.3
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Material 2.4
T.Tumbler {
id: control
diff --git a/src/imports/controls/universal/ApplicationWindow.qml b/src/imports/controls/universal/ApplicationWindow.qml
index 4472e187..0b119693 100644
--- a/src/imports/controls/universal/ApplicationWindow.qml
+++ b/src/imports/controls/universal/ApplicationWindow.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
+import QtQuick 2.11
import QtQuick.Window 2.3
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
-import QtQuick.Controls.Universal.impl 2.3
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
+import QtQuick.Controls.Universal.impl 2.4
T.ApplicationWindow {
id: window
diff --git a/src/imports/controls/universal/BusyIndicator.qml b/src/imports/controls/universal/BusyIndicator.qml
index f6d86823..cc9e6b85 100644
--- a/src/imports/controls/universal/BusyIndicator.qml
+++ b/src/imports/controls/universal/BusyIndicator.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
-import QtQuick.Controls.Universal.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
+import QtQuick.Controls.Universal.impl 2.4
T.BusyIndicator {
id: control
diff --git a/src/imports/controls/universal/Button.qml b/src/imports/controls/universal/Button.qml
index 0e84d1f8..d8b6836d 100644
--- a/src/imports/controls/universal/Button.qml
+++ b/src/imports/controls/universal/Button.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Universal 2.4
T.Button {
id: control
diff --git a/src/imports/controls/universal/CheckBox.qml b/src/imports/controls/universal/CheckBox.qml
index a0ed3da5..0da8b6ac 100644
--- a/src/imports/controls/universal/CheckBox.qml
+++ b/src/imports/controls/universal/CheckBox.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
-import QtQuick.Controls.Universal.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
+import QtQuick.Controls.Universal.impl 2.4
T.CheckBox {
id: control
diff --git a/src/imports/controls/universal/CheckDelegate.qml b/src/imports/controls/universal/CheckDelegate.qml
index 27388987..8419ac1e 100644
--- a/src/imports/controls/universal/CheckDelegate.qml
+++ b/src/imports/controls/universal/CheckDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Universal 2.3
-import QtQuick.Controls.Universal.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Universal 2.4
+import QtQuick.Controls.Universal.impl 2.4
T.CheckDelegate {
id: control
diff --git a/src/imports/controls/universal/CheckIndicator.qml b/src/imports/controls/universal/CheckIndicator.qml
index 669edc7f..63bbc3d0 100644
--- a/src/imports/controls/universal/CheckIndicator.qml
+++ b/src/imports/controls/universal/CheckIndicator.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Universal 2.4
Rectangle {
implicitWidth: 20
diff --git a/src/imports/controls/universal/ComboBox.qml b/src/imports/controls/universal/ComboBox.qml
index 28c9e4cc..2a5a4f3f 100644
--- a/src/imports/controls/universal/ComboBox.qml
+++ b/src/imports/controls/universal/ComboBox.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
+import QtQuick 2.11
import QtQuick.Window 2.3
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.ComboBox {
id: control
diff --git a/src/imports/controls/universal/DelayButton.qml b/src/imports/controls/universal/DelayButton.qml
index ae313a4c..be0cccad 100644
--- a/src/imports/controls/universal/DelayButton.qml
+++ b/src/imports/controls/universal/DelayButton.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.DelayButton {
id: control
diff --git a/src/imports/controls/universal/Dial.qml b/src/imports/controls/universal/Dial.qml
index 8f5700aa..539400cd 100644
--- a/src/imports/controls/universal/Dial.qml
+++ b/src/imports/controls/universal/Dial.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.Dial {
id: control
diff --git a/src/imports/controls/universal/Dialog.qml b/src/imports/controls/universal/Dialog.qml
index 1188ef08..08cc441a 100644
--- a/src/imports/controls/universal/Dialog.qml
+++ b/src/imports/controls/universal/Dialog.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.Universal 2.4
T.Dialog {
id: control
diff --git a/src/imports/controls/universal/DialogButtonBox.qml b/src/imports/controls/universal/DialogButtonBox.qml
index b50658b0..7f28a144 100644
--- a/src/imports/controls/universal/DialogButtonBox.qml
+++ b/src/imports/controls/universal/DialogButtonBox.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.Universal 2.4
T.DialogButtonBox {
id: control
diff --git a/src/imports/controls/universal/Drawer.qml b/src/imports/controls/universal/Drawer.qml
index faf4c15b..8fbd57c6 100644
--- a/src/imports/controls/universal/Drawer.qml
+++ b/src/imports/controls/universal/Drawer.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.Drawer {
id: control
diff --git a/src/imports/controls/universal/Frame.qml b/src/imports/controls/universal/Frame.qml
index ac6c1e4f..4f11bc18 100644
--- a/src/imports/controls/universal/Frame.qml
+++ b/src/imports/controls/universal/Frame.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.Frame {
id: control
diff --git a/src/imports/controls/universal/GroupBox.qml b/src/imports/controls/universal/GroupBox.qml
index 75d6ba02..39af8cc0 100644
--- a/src/imports/controls/universal/GroupBox.qml
+++ b/src/imports/controls/universal/GroupBox.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.GroupBox {
id: control
diff --git a/src/imports/controls/universal/ItemDelegate.qml b/src/imports/controls/universal/ItemDelegate.qml
index a2d4cfb9..65d52729 100644
--- a/src/imports/controls/universal/ItemDelegate.qml
+++ b/src/imports/controls/universal/ItemDelegate.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Universal 2.4
T.ItemDelegate {
id: control
diff --git a/src/imports/controls/universal/Label.qml b/src/imports/controls/universal/Label.qml
index 2e116d97..bad9ac04 100644
--- a/src/imports/controls/universal/Label.qml
+++ b/src/imports/controls/universal/Label.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.Label {
id: control
diff --git a/src/imports/controls/universal/Menu.qml b/src/imports/controls/universal/Menu.qml
index 056053bb..36241f3a 100644
--- a/src/imports/controls/universal/Menu.qml
+++ b/src/imports/controls/universal/Menu.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls 2.3
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Controls 2.4
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.Menu {
id: control
diff --git a/src/imports/controls/universal/MenuBar.qml b/src/imports/controls/universal/MenuBar.qml
index 72a0f504..a1d7e88a 100644
--- a/src/imports/controls/universal/MenuBar.qml
+++ b/src/imports/controls/universal/MenuBar.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Universal 2.4
T.MenuBar {
id: control
diff --git a/src/imports/controls/universal/MenuBarItem.qml b/src/imports/controls/universal/MenuBarItem.qml
index 59064ca1..e88a3ced 100644
--- a/src/imports/controls/universal/MenuBarItem.qml
+++ b/src/imports/controls/universal/MenuBarItem.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Universal 2.4
T.MenuBarItem {
id: control
diff --git a/src/imports/controls/universal/MenuItem.qml b/src/imports/controls/universal/MenuItem.qml
index b2d6c36c..c9c38cb5 100644
--- a/src/imports/controls/universal/MenuItem.qml
+++ b/src/imports/controls/universal/MenuItem.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Universal 2.4
T.MenuItem {
id: control
diff --git a/src/imports/controls/universal/MenuSeparator.qml b/src/imports/controls/universal/MenuSeparator.qml
index a99dfa66..6d0d9dd5 100644
--- a/src/imports/controls/universal/MenuSeparator.qml
+++ b/src/imports/controls/universal/MenuSeparator.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.MenuSeparator {
id: control
diff --git a/src/imports/controls/universal/Page.qml b/src/imports/controls/universal/Page.qml
index d0dc73f3..de8482d8 100644
--- a/src/imports/controls/universal/Page.qml
+++ b/src/imports/controls/universal/Page.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.Page {
id: control
diff --git a/src/imports/controls/universal/PageIndicator.qml b/src/imports/controls/universal/PageIndicator.qml
index 8acede74..c14a3365 100644
--- a/src/imports/controls/universal/PageIndicator.qml
+++ b/src/imports/controls/universal/PageIndicator.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.PageIndicator {
id: control
diff --git a/src/imports/controls/universal/Pane.qml b/src/imports/controls/universal/Pane.qml
index 5f1f07e5..340653ea 100644
--- a/src/imports/controls/universal/Pane.qml
+++ b/src/imports/controls/universal/Pane.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.Pane {
id: control
diff --git a/src/imports/controls/universal/Popup.qml b/src/imports/controls/universal/Popup.qml
index 1be238b7..567fa7d2 100644
--- a/src/imports/controls/universal/Popup.qml
+++ b/src/imports/controls/universal/Popup.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.Popup {
id: control
diff --git a/src/imports/controls/universal/ProgressBar.qml b/src/imports/controls/universal/ProgressBar.qml
index 9b8be7d3..e7aa6bbe 100644
--- a/src/imports/controls/universal/ProgressBar.qml
+++ b/src/imports/controls/universal/ProgressBar.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
-import QtQuick.Controls.Universal.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
+import QtQuick.Controls.Universal.impl 2.4
T.ProgressBar {
id: control
diff --git a/src/imports/controls/universal/RadioButton.qml b/src/imports/controls/universal/RadioButton.qml
index 18cb8e92..ef095db5 100644
--- a/src/imports/controls/universal/RadioButton.qml
+++ b/src/imports/controls/universal/RadioButton.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
-import QtQuick.Controls.Universal.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
+import QtQuick.Controls.Universal.impl 2.4
T.RadioButton {
id: control
diff --git a/src/imports/controls/universal/RadioDelegate.qml b/src/imports/controls/universal/RadioDelegate.qml
index 0fd5aacf..90d023b3 100644
--- a/src/imports/controls/universal/RadioDelegate.qml
+++ b/src/imports/controls/universal/RadioDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Universal 2.3
-import QtQuick.Controls.Universal.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Universal 2.4
+import QtQuick.Controls.Universal.impl 2.4
T.RadioDelegate {
id: control
diff --git a/src/imports/controls/universal/RadioIndicator.qml b/src/imports/controls/universal/RadioIndicator.qml
index fcf80d4b..11f388c2 100644
--- a/src/imports/controls/universal/RadioIndicator.qml
+++ b/src/imports/controls/universal/RadioIndicator.qml
@@ -34,8 +34,8 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Controls.Universal 2.4
Rectangle {
implicitWidth: 20
diff --git a/src/imports/controls/universal/RangeSlider.qml b/src/imports/controls/universal/RangeSlider.qml
index da759b4a..6ee923e1 100644
--- a/src/imports/controls/universal/RangeSlider.qml
+++ b/src/imports/controls/universal/RangeSlider.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.RangeSlider {
id: control
diff --git a/src/imports/controls/universal/RoundButton.qml b/src/imports/controls/universal/RoundButton.qml
index 0161552f..34983ac9 100644
--- a/src/imports/controls/universal/RoundButton.qml
+++ b/src/imports/controls/universal/RoundButton.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Universal 2.4
T.RoundButton {
id: control
diff --git a/src/imports/controls/universal/ScrollBar.qml b/src/imports/controls/universal/ScrollBar.qml
index 70df3bb1..91b77366 100644
--- a/src/imports/controls/universal/ScrollBar.qml
+++ b/src/imports/controls/universal/ScrollBar.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.ScrollBar {
id: control
diff --git a/src/imports/controls/universal/ScrollIndicator.qml b/src/imports/controls/universal/ScrollIndicator.qml
index 3f0390f3..029efe4c 100644
--- a/src/imports/controls/universal/ScrollIndicator.qml
+++ b/src/imports/controls/universal/ScrollIndicator.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.ScrollIndicator {
id: control
diff --git a/src/imports/controls/universal/Slider.qml b/src/imports/controls/universal/Slider.qml
index acfb06d3..49b6d371 100644
--- a/src/imports/controls/universal/Slider.qml
+++ b/src/imports/controls/universal/Slider.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.Slider {
id: control
diff --git a/src/imports/controls/universal/SpinBox.qml b/src/imports/controls/universal/SpinBox.qml
index 918568d5..d9ceed78 100644
--- a/src/imports/controls/universal/SpinBox.qml
+++ b/src/imports/controls/universal/SpinBox.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Universal 2.4
T.SpinBox {
id: control
@@ -69,7 +69,7 @@ T.SpinBox {
}
contentItem: TextInput {
- text: control.textFromValue(control.value, control.locale)
+ text: control.displayText
font: control.font
color: !enabled ? control.Universal.chromeDisabledLowColor :
diff --git a/src/imports/controls/universal/StackView.qml b/src/imports/controls/universal/StackView.qml
index 737d10b0..77d70255 100644
--- a/src/imports/controls/universal/StackView.qml
+++ b/src/imports/controls/universal/StackView.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.StackView {
id: control
diff --git a/src/imports/controls/universal/SwipeDelegate.qml b/src/imports/controls/universal/SwipeDelegate.qml
index fc4d6ecf..ffcdf0a9 100644
--- a/src/imports/controls/universal/SwipeDelegate.qml
+++ b/src/imports/controls/universal/SwipeDelegate.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Universal 2.4
T.SwipeDelegate {
id: control
diff --git a/src/imports/controls/universal/Switch.qml b/src/imports/controls/universal/Switch.qml
index 3d97f60d..7682c3ed 100644
--- a/src/imports/controls/universal/Switch.qml
+++ b/src/imports/controls/universal/Switch.qml
@@ -34,10 +34,10 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
-import QtQuick.Controls.Universal.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
+import QtQuick.Controls.Universal.impl 2.4
T.Switch {
id: control
diff --git a/src/imports/controls/universal/SwitchDelegate.qml b/src/imports/controls/universal/SwitchDelegate.qml
index 8720a2f9..48248193 100644
--- a/src/imports/controls/universal/SwitchDelegate.qml
+++ b/src/imports/controls/universal/SwitchDelegate.qml
@@ -34,12 +34,12 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Universal 2.3
-import QtQuick.Controls.Universal.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Universal 2.4
+import QtQuick.Controls.Universal.impl 2.4
T.SwitchDelegate {
id: control
diff --git a/src/imports/controls/universal/SwitchIndicator.qml b/src/imports/controls/universal/SwitchIndicator.qml
index 20b797ea..b1072b88 100644
--- a/src/imports/controls/universal/SwitchIndicator.qml
+++ b/src/imports/controls/universal/SwitchIndicator.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
Item {
implicitWidth: 44
diff --git a/src/imports/controls/universal/TabBar.qml b/src/imports/controls/universal/TabBar.qml
index 5447049d..81003b48 100644
--- a/src/imports/controls/universal/TabBar.qml
+++ b/src/imports/controls/universal/TabBar.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.TabBar {
id: control
diff --git a/src/imports/controls/universal/TabButton.qml b/src/imports/controls/universal/TabButton.qml
index 8a5e1f1e..3a9e6d45 100644
--- a/src/imports/controls/universal/TabButton.qml
+++ b/src/imports/controls/universal/TabButton.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Universal 2.4
T.TabButton {
id: control
diff --git a/src/imports/controls/universal/TextArea.qml b/src/imports/controls/universal/TextArea.qml
index d6838544..5dc78c80 100644
--- a/src/imports/controls/universal/TextArea.qml
+++ b/src/imports/controls/universal/TextArea.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Universal 2.4
T.TextArea {
id: control
diff --git a/src/imports/controls/universal/TextField.qml b/src/imports/controls/universal/TextField.qml
index 36407595..f4164fed 100644
--- a/src/imports/controls/universal/TextField.qml
+++ b/src/imports/controls/universal/TextField.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Universal 2.4
T.TextField {
id: control
diff --git a/src/imports/controls/universal/ToolBar.qml b/src/imports/controls/universal/ToolBar.qml
index 32c11dd1..65dca3bb 100644
--- a/src/imports/controls/universal/ToolBar.qml
+++ b/src/imports/controls/universal/ToolBar.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.ToolBar {
id: control
diff --git a/src/imports/controls/universal/ToolButton.qml b/src/imports/controls/universal/ToolButton.qml
index 15463ebb..118d4baa 100644
--- a/src/imports/controls/universal/ToolButton.qml
+++ b/src/imports/controls/universal/ToolButton.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
+import QtQuick.Controls.Universal 2.4
T.ToolButton {
id: control
diff --git a/src/imports/controls/universal/ToolSeparator.qml b/src/imports/controls/universal/ToolSeparator.qml
index 3fc25d92..2e7b6a01 100644
--- a/src/imports/controls/universal/ToolSeparator.qml
+++ b/src/imports/controls/universal/ToolSeparator.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.ToolSeparator {
id: control
diff --git a/src/imports/controls/universal/ToolTip.qml b/src/imports/controls/universal/ToolTip.qml
index db48aab9..1c7c7b69 100644
--- a/src/imports/controls/universal/ToolTip.qml
+++ b/src/imports/controls/universal/ToolTip.qml
@@ -34,9 +34,9 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
T.ToolTip {
id: control
diff --git a/src/imports/controls/universal/Tumbler.qml b/src/imports/controls/universal/Tumbler.qml
index c4fc9ea3..5b5a0744 100644
--- a/src/imports/controls/universal/Tumbler.qml
+++ b/src/imports/controls/universal/Tumbler.qml
@@ -34,11 +34,11 @@
**
****************************************************************************/
-import QtQuick 2.10
-import QtQuick.Templates 2.3 as T
-import QtQuick.Controls.Universal 2.3
-import QtQuick.Controls 2.3
-import QtQuick.Controls.impl 2.3
+import QtQuick 2.11
+import QtQuick.Templates 2.4 as T
+import QtQuick.Controls.Universal 2.4
+import QtQuick.Controls 2.4
+import QtQuick.Controls.impl 2.4
T.Tumbler {
id: control
diff --git a/src/imports/templates/qtquicktemplates2plugin.cpp b/src/imports/templates/qtquicktemplates2plugin.cpp
index ebd30bdc..a491c031 100644
--- a/src/imports/templates/qtquicktemplates2plugin.cpp
+++ b/src/imports/templates/qtquicktemplates2plugin.cpp
@@ -318,6 +318,15 @@ void QtQuickTemplates2Plugin::registerTypes(const char *uri)
// make revisioned properties available to their subclasses (synced with Qt 5.10)
qmlRegisterRevision<QQuickText, 10>(uri, 2, 3);
qmlRegisterRevision<QQuickTextEdit, 10>(uri, 2, 3);
+
+ // QtQuick.Templates 2.4 (new types and revisions in Qt 5.11)
+ qmlRegisterType<QQuickAbstractButton, 4>(uri, 2, 4, "AbstractButton");
+ qmlRegisterType<QQuickButtonGroup, 4>(uri, 2, 4, "ButtonGroup");
+ qmlRegisterType<QQuickCheckBox, 4>(uri, 2, 4, "CheckBox");
+ qmlRegisterType<QQuickCheckDelegate, 4>(uri, 2, 4, "CheckDelegate");
+ qmlRegisterType<QQuickScrollBar, 4>(uri, 2, 4, "ScrollBar");
+ qmlRegisterType<QQuickScrollIndicator, 4>(uri, 2, 4, "ScrollIndicator");
+ qmlRegisterType<QQuickSpinBox, 4>(uri, 2, 4, "SpinBox");
}
QT_END_NAMESPACE
diff --git a/src/quicktemplates2/qquickabstractbutton.cpp b/src/quicktemplates2/qquickabstractbutton.cpp
index be7d35a2..b8c6eb84 100644
--- a/src/quicktemplates2/qquickabstractbutton.cpp
+++ b/src/quicktemplates2/qquickabstractbutton.cpp
@@ -131,6 +131,8 @@ QQuickAbstractButtonPrivate::QQuickAbstractButtonPrivate()
holdTimer(0),
delayTimer(0),
repeatTimer(0),
+ repeatDelay(AUTO_REPEAT_DELAY),
+ repeatInterval(AUTO_REPEAT_INTERVAL),
#if QT_CONFIG(shortcut)
shortcutId(0),
#endif
@@ -142,11 +144,29 @@ QQuickAbstractButtonPrivate::QQuickAbstractButtonPrivate()
{
}
+void QQuickAbstractButtonPrivate::setPressPoint(const QPointF &point)
+{
+ pressPoint = point;
+ setMovePoint(point);
+}
+
+void QQuickAbstractButtonPrivate::setMovePoint(const QPointF &point)
+{
+ Q_Q(QQuickAbstractButton);
+ bool xChange = !qFuzzyCompare(point.x(), movePoint.x());
+ bool yChange = !qFuzzyCompare(point.y(), movePoint.y());
+ movePoint = point;
+ if (xChange)
+ emit q->pressXChanged();
+ if (yChange)
+ emit q->pressYChanged();
+}
+
void QQuickAbstractButtonPrivate::handlePress(const QPointF &point)
{
Q_Q(QQuickAbstractButton);
QQuickControlPrivate::handlePress(point);
- pressPoint = point;
+ setPressPoint(point);
q->setPressed(true);
emit q->pressed();
@@ -163,6 +183,7 @@ void QQuickAbstractButtonPrivate::handleMove(const QPointF &point)
{
Q_Q(QQuickAbstractButton);
QQuickControlPrivate::handleMove(point);
+ setMovePoint(point);
q->setPressed(keepPressed || q->contains(point));
if (!pressed && autoRepeat)
@@ -176,6 +197,7 @@ void QQuickAbstractButtonPrivate::handleRelease(const QPointF &point)
Q_Q(QQuickAbstractButton);
QQuickControlPrivate::handleRelease(point);
bool wasPressed = pressed;
+ setPressPoint(point);
q->setPressed(false);
pressButtons = Qt::NoButton;
@@ -238,14 +260,14 @@ void QQuickAbstractButtonPrivate::startRepeatDelay()
{
Q_Q(QQuickAbstractButton);
stopPressRepeat();
- delayTimer = q->startTimer(AUTO_REPEAT_DELAY);
+ delayTimer = q->startTimer(repeatDelay);
}
void QQuickAbstractButtonPrivate::startPressRepeat()
{
Q_Q(QQuickAbstractButton);
stopPressRepeat();
- repeatTimer = q->startTimer(AUTO_REPEAT_INTERVAL);
+ repeatTimer = q->startTimer(repeatInterval);
}
void QQuickAbstractButtonPrivate::stopPressRepeat()
@@ -613,6 +635,17 @@ void QQuickAbstractButton::setAutoExclusive(bool exclusive)
emit autoExclusiveChanged();
}
+/*!
+ \qmlproperty bool QtQuick.Controls::AbstractButton::autoRepeat
+
+ This property holds whether the button repeats \l pressed(), \l released()
+ and \l clicked() signals while the button is pressed and held down.
+
+ The default value is \c false.
+
+ The initial delay and the repetition interval are defined in milliseconds
+ by \l autoRepeatDelay and \l autoRepeatInterval.
+*/
bool QQuickAbstractButton::autoRepeat() const
{
Q_D(const QQuickAbstractButton);
@@ -627,7 +660,7 @@ void QQuickAbstractButton::setAutoRepeat(bool repeat)
d->stopPressRepeat();
d->autoRepeat = repeat;
- buttonChange(ButtonAutoRepeatChange);
+ emit autoRepeatChanged();
}
/*!
@@ -801,6 +834,56 @@ void QQuickAbstractButton::setAction(QQuickAction *action)
emit actionChanged();
}
+/*!
+ \since QtQuick.Controls 2.4 (Qt 5.11)
+ \qmlproperty int QtQuick.Controls::AbstractButton::autoRepeatDelay
+
+ This property holds the initial delay of auto-repetition in milliseconds.
+ The default value is \c 300 ms.
+
+ \sa autoRepeat, autoRepeatInterval
+*/
+int QQuickAbstractButton::autoRepeatDelay() const
+{
+ Q_D(const QQuickAbstractButton);
+ return d->repeatDelay;
+}
+
+void QQuickAbstractButton::setAutoRepeatDelay(int delay)
+{
+ Q_D(QQuickAbstractButton);
+ if (d->repeatDelay == delay)
+ return;
+
+ d->repeatDelay = delay;
+ emit autoRepeatDelayChanged();
+}
+
+/*!
+ \since QtQuick.Controls 2.4 (Qt 5.11)
+ \qmlproperty int QtQuick.Controls::AbstractButton::autoRepeatInterval
+
+ This property holds the interval of auto-repetition in milliseconds.
+ The default value is \c 100 ms.
+
+ \sa autoRepeat, autoRepeatDelay
+*/
+int QQuickAbstractButton::autoRepeatInterval() const
+{
+ Q_D(const QQuickAbstractButton);
+ return d->repeatInterval;
+}
+
+void QQuickAbstractButton::setAutoRepeatInterval(int interval)
+{
+ Q_D(QQuickAbstractButton);
+ if (d->repeatInterval == interval)
+ return;
+
+ d->repeatInterval = interval;
+ emit autoRepeatIntervalChanged();
+}
+
#if QT_CONFIG(shortcut)
QKeySequence QQuickAbstractButton::shortcut() const
{
@@ -822,6 +905,40 @@ void QQuickAbstractButton::setShortcut(const QKeySequence &shortcut)
#endif
/*!
+ \readonly
+ \since QtQuick.Controls 2.4 (Qt 5.11)
+ \qmlproperty real QtQuick.Controls::AbstractButton::pressX
+
+ This property holds the x-coordinate of the last press.
+
+ \note The value is updated on touch moves, but left intact after touch release.
+
+ \sa pressY
+*/
+qreal QQuickAbstractButton::pressX() const
+{
+ Q_D(const QQuickAbstractButton);
+ return d->movePoint.x();
+}
+
+/*!
+ \readonly
+ \since QtQuick.Controls 2.4 (Qt 5.11)
+ \qmlproperty real QtQuick.Controls::AbstractButton::pressY
+
+ This property holds the y-coordinate of the last press.
+
+ \note The value is updated on touch moves, but left intact after touch release.
+
+ \sa pressX
+*/
+qreal QQuickAbstractButton::pressY() const
+{
+ Q_D(const QQuickAbstractButton);
+ return d->movePoint.y();
+}
+
+/*!
\qmlmethod void QtQuick.Controls::AbstractButton::toggle()
Toggles the checked state of the button.
@@ -867,7 +984,7 @@ void QQuickAbstractButton::keyPressEvent(QKeyEvent *event)
Q_D(QQuickAbstractButton);
QQuickControl::keyPressEvent(event);
if (event->key() == Qt::Key_Space) {
- d->pressPoint = QPoint(qRound(width() / 2), qRound(height() / 2));
+ d->setPressPoint(QPoint(qRound(width() / 2), qRound(height() / 2)));
setPressed(true);
if (d->autoRepeat)
diff --git a/src/quicktemplates2/qquickabstractbutton_p.h b/src/quicktemplates2/qquickabstractbutton_p.h
index 2f3d88f6..de0c26ab 100644
--- a/src/quicktemplates2/qquickabstractbutton_p.h
+++ b/src/quicktemplates2/qquickabstractbutton_p.h
@@ -65,11 +65,17 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickAbstractButton : public QQuickContr
Q_PROPERTY(bool checked READ isChecked WRITE setChecked NOTIFY checkedChanged FINAL)
Q_PROPERTY(bool checkable READ isCheckable WRITE setCheckable NOTIFY checkableChanged FINAL)
Q_PROPERTY(bool autoExclusive READ autoExclusive WRITE setAutoExclusive NOTIFY autoExclusiveChanged FINAL)
+ Q_PROPERTY(bool autoRepeat READ autoRepeat WRITE setAutoRepeat NOTIFY autoRepeatChanged FINAL)
Q_PROPERTY(QQuickItem *indicator READ indicator WRITE setIndicator NOTIFY indicatorChanged FINAL)
// 2.3 (Qt 5.10)
Q_PROPERTY(QQuickIcon icon READ icon WRITE setIcon NOTIFY iconChanged FINAL REVISION 3)
Q_PROPERTY(Display display READ display WRITE setDisplay NOTIFY displayChanged FINAL REVISION 3)
Q_PROPERTY(QQuickAction *action READ action WRITE setAction NOTIFY actionChanged FINAL REVISION 3)
+ // 2.4 (Qt 5.11)
+ Q_PROPERTY(int autoRepeatDelay READ autoRepeatDelay WRITE setAutoRepeatDelay NOTIFY autoRepeatDelayChanged FINAL REVISION 4)
+ Q_PROPERTY(int autoRepeatInterval READ autoRepeatInterval WRITE setAutoRepeatInterval NOTIFY autoRepeatIntervalChanged FINAL REVISION 4)
+ Q_PROPERTY(qreal pressX READ pressX NOTIFY pressXChanged FINAL REVISION 4)
+ Q_PROPERTY(qreal pressY READ pressY NOTIFY pressYChanged FINAL REVISION 4)
Q_CLASSINFO("DeferredPropertyNames", "background,contentItem,indicator")
public:
@@ -125,6 +131,16 @@ public:
void setShortcut(const QKeySequence &shortcut);
#endif
+ // 2.4 (Qt 5.11)
+ int autoRepeatDelay() const;
+ void setAutoRepeatDelay(int delay);
+
+ int autoRepeatInterval() const;
+ void setAutoRepeatInterval(int interval);
+
+ qreal pressX() const;
+ qreal pressY() const;
+
public Q_SLOTS:
void toggle();
@@ -141,6 +157,7 @@ Q_SIGNALS:
void checkedChanged();
void checkableChanged();
void autoExclusiveChanged();
+ void autoRepeatChanged();
void indicatorChanged();
// 2.2 (Qt 5.9)
Q_REVISION(2) void toggled();
@@ -148,6 +165,11 @@ Q_SIGNALS:
Q_REVISION(3) void iconChanged();
Q_REVISION(3) void displayChanged();
Q_REVISION(3) void actionChanged();
+ // 2.4 (Qt 5.11)
+ Q_REVISION(4) void autoRepeatDelayChanged();
+ Q_REVISION(4) void autoRepeatIntervalChanged();
+ Q_REVISION(4) void pressXChanged();
+ Q_REVISION(4) void pressYChanged();
protected:
QQuickAbstractButton(QQuickAbstractButtonPrivate &dd, QQuickItem *parent);
@@ -165,7 +187,6 @@ protected:
void itemChange(ItemChange change, const ItemChangeData &value) override;
enum ButtonChange {
- ButtonAutoRepeatChange,
ButtonCheckedChange,
ButtonCheckableChange,
ButtonPressedChanged,
diff --git a/src/quicktemplates2/qquickabstractbutton_p_p.h b/src/quicktemplates2/qquickabstractbutton_p_p.h
index cdf7419e..d5afc4cf 100644
--- a/src/quicktemplates2/qquickabstractbutton_p_p.h
+++ b/src/quicktemplates2/qquickabstractbutton_p_p.h
@@ -69,6 +69,9 @@ public:
return button->d_func();
}
+ void setPressPoint(const QPointF &point);
+ void setMovePoint(const QPointF &point);
+
void handlePress(const QPointF &point) override;
void handleMove(const QPointF &point) override;
void handleRelease(const QPointF &point) override;
@@ -113,12 +116,15 @@ public:
int holdTimer;
int delayTimer;
int repeatTimer;
+ int repeatDelay;
+ int repeatInterval;
#if QT_CONFIG(shortcut)
int shortcutId;
QKeySequence shortcut;
#endif
QQuickIcon icon;
QPointF pressPoint;
+ QPointF movePoint;
Qt::MouseButtons pressButtons;
QQuickDeferredPointer<QQuickItem> indicator;
QQuickButtonGroup *group;
diff --git a/src/quicktemplates2/qquickbutton.cpp b/src/quicktemplates2/qquickbutton.cpp
index 9cbf8b21..a1bea792 100644
--- a/src/quicktemplates2/qquickbutton.cpp
+++ b/src/quicktemplates2/qquickbutton.cpp
@@ -100,24 +100,6 @@ QQuickButton::QQuickButton(QQuickButtonPrivate &dd, QQuickItem *parent)
{
}
-/*!
- \qmlproperty bool QtQuick.Controls::Button::autoRepeat
-
- This property holds whether the button repeats
- \l {AbstractButton::}{pressed()}, \l {AbstractButton::}{released()}
- and \l {AbstractButton::}{clicked()} signals while the button is pressed
- and held down.
-
- The default value is \c false.
-*/
-
-void QQuickButton::buttonChange(ButtonChange change)
-{
- QQuickAbstractButton::buttonChange(change);
- if (change == ButtonAutoRepeatChange)
- emit autoRepeatChanged();
-}
-
QFont QQuickButton::defaultFont() const
{
return QQuickControlPrivate::themeFont(QPlatformTheme::PushButtonFont);
diff --git a/src/quicktemplates2/qquickbutton_p.h b/src/quicktemplates2/qquickbutton_p.h
index f1a34b10..a77db16e 100644
--- a/src/quicktemplates2/qquickbutton_p.h
+++ b/src/quicktemplates2/qquickbutton_p.h
@@ -57,7 +57,6 @@ class QQuickButtonPrivate;
class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickButton : public QQuickAbstractButton
{
Q_OBJECT
- Q_PROPERTY(bool autoRepeat READ autoRepeat WRITE setAutoRepeat NOTIFY autoRepeatChanged FINAL)
Q_PROPERTY(bool highlighted READ isHighlighted WRITE setHighlighted NOTIFY highlightedChanged FINAL)
Q_PROPERTY(bool flat READ isFlat WRITE setFlat NOTIFY flatChanged FINAL)
@@ -71,15 +70,12 @@ public:
void setFlat(bool flat);
Q_SIGNALS:
- void autoRepeatChanged();
void highlightedChanged();
void flatChanged();
protected:
QQuickButton(QQuickButtonPrivate &dd, QQuickItem *parent);
- void buttonChange(ButtonChange change) override;
-
QFont defaultFont() const override;
QPalette defaultPalette() const override;
diff --git a/src/quicktemplates2/qquickbuttongroup.cpp b/src/quicktemplates2/qquickbuttongroup.cpp
index 2a1e354c..e2b1a557 100644
--- a/src/quicktemplates2/qquickbuttongroup.cpp
+++ b/src/quicktemplates2/qquickbuttongroup.cpp
@@ -154,18 +154,29 @@ class QQuickButtonGroupPrivate : public QObjectPrivate
Q_DECLARE_PUBLIC(QQuickButtonGroup)
public:
- QQuickButtonGroupPrivate() : exclusive(true) { }
+ QQuickButtonGroupPrivate()
+ : complete(true),
+ exclusive(true),
+ settingCheckState(false),
+ checkState(Qt::Unchecked)
+ {
+ }
void clear();
void buttonClicked();
void _q_updateCurrent();
+ void updateCheckState();
+ void setCheckState(Qt::CheckState state);
static void buttons_append(QQmlListProperty<QQuickAbstractButton> *prop, QQuickAbstractButton *obj);
static int buttons_count(QQmlListProperty<QQuickAbstractButton> *prop);
static QQuickAbstractButton *buttons_at(QQmlListProperty<QQuickAbstractButton> *prop, int index);
static void buttons_clear(QQmlListProperty<QQuickAbstractButton> *prop);
+ bool complete;
bool exclusive;
+ bool settingCheckState;
+ Qt::CheckState checkState;
QPointer<QQuickAbstractButton> checkedButton;
QVector<QQuickAbstractButton*> buttons;
};
@@ -191,13 +202,39 @@ void QQuickButtonGroupPrivate::buttonClicked()
void QQuickButtonGroupPrivate::_q_updateCurrent()
{
Q_Q(QQuickButtonGroup);
- if (!exclusive)
+ if (exclusive) {
+ QQuickAbstractButton *button = qobject_cast<QQuickAbstractButton*>(q->sender());
+ if (button && button->isChecked())
+ q->setCheckedButton(button);
+ else if (!buttons.contains(checkedButton))
+ q->setCheckedButton(nullptr);
+ }
+ updateCheckState();
+}
+
+void QQuickButtonGroupPrivate::updateCheckState()
+{
+ if (!complete || settingCheckState)
return;
- QQuickAbstractButton *button = qobject_cast<QQuickAbstractButton*>(q->sender());
- if (button && button->isChecked())
- q->setCheckedButton(button);
- else if (!buttons.contains(checkedButton))
- q->setCheckedButton(nullptr);
+
+ bool anyChecked = false;
+ bool allChecked = !buttons.isEmpty();
+ for (QQuickAbstractButton *button : qAsConst(buttons)) {
+ const bool isChecked = button->isChecked();
+ anyChecked |= isChecked;
+ allChecked &= isChecked;
+ }
+ setCheckState(Qt::CheckState(anyChecked + allChecked));
+}
+
+void QQuickButtonGroupPrivate::setCheckState(Qt::CheckState state)
+{
+ Q_Q(QQuickButtonGroup);
+ if (checkState == state)
+ return;
+
+ checkState = state;
+ emit q->checkStateChanged();
}
void QQuickButtonGroupPrivate::buttons_append(QQmlListProperty<QQuickAbstractButton> *prop, QQuickAbstractButton *obj)
@@ -346,6 +383,49 @@ void QQuickButtonGroup::setExclusive(bool exclusive)
}
/*!
+ \since QtQuick.Controls 2.4 (Qt 5.11)
+ \qmlproperty enumeration QtQuick.Controls::ButtonGroup::checkState
+
+ This property holds the combined check state of the button group.
+
+ Available states:
+ \value Qt.Unchecked None of the buttons are checked.
+ \value Qt.PartiallyChecked Some of the buttons are checked.
+ \value Qt.Checked All of the buttons are checked.
+
+ Setting the check state of a non-exclusive button group to \c Qt.Unchecked
+ or \c Qt.Checked unchecks or checks all buttons in the group, respectively.
+ \c Qt.PartiallyChecked is ignored.
+
+ Setting the check state of an exclusive button group to \c Qt.Unchecked
+ unchecks the \l checkedButton. \c Qt.Checked and \c Qt.PartiallyChecked
+ are ignored.
+*/
+Qt::CheckState QQuickButtonGroup::checkState() const
+{
+ Q_D(const QQuickButtonGroup);
+ return d->checkState;
+}
+
+void QQuickButtonGroup::setCheckState(Qt::CheckState state)
+{
+ Q_D(QQuickButtonGroup);
+ if (d->checkState == state || state == Qt::PartiallyChecked)
+ return;
+
+ d->settingCheckState = true;
+ if (d->exclusive) {
+ if (d->checkedButton && state == Qt::Unchecked)
+ setCheckedButton(nullptr);
+ } else {
+ for (QQuickAbstractButton *button : qAsConst(d->buttons))
+ button->setChecked(state == Qt::Checked);
+ }
+ d->settingCheckState = false;
+ d->setCheckState(state);
+}
+
+/*!
\qmlmethod void QtQuick.Controls::ButtonGroup::addButton(AbstractButton button)
Adds a \a button to the button group.
@@ -370,6 +450,7 @@ void QQuickButtonGroup::addButton(QQuickAbstractButton *button)
setCheckedButton(button);
d->buttons.append(button);
+ d->updateCheckState();
emit buttonsChanged();
}
@@ -398,9 +479,24 @@ void QQuickButtonGroup::removeButton(QQuickAbstractButton *button)
setCheckedButton(nullptr);
d->buttons.removeOne(button);
+ d->updateCheckState();
emit buttonsChanged();
}
+void QQuickButtonGroup::classBegin()
+{
+ Q_D(QQuickButtonGroup);
+ d->complete = false;
+}
+
+void QQuickButtonGroup::componentComplete()
+{
+ Q_D(QQuickButtonGroup);
+ d->complete = true;
+ if (!d->buttons.isEmpty())
+ d->updateCheckState();
+}
+
class QQuickButtonGroupAttachedPrivate : public QObjectPrivate
{
public:
diff --git a/src/quicktemplates2/qquickbuttongroup_p.h b/src/quicktemplates2/qquickbuttongroup_p.h
index 53f8be8c..84ddd225 100644
--- a/src/quicktemplates2/qquickbuttongroup_p.h
+++ b/src/quicktemplates2/qquickbuttongroup_p.h
@@ -51,6 +51,7 @@
#include <QtCore/qobject.h>
#include <QtQuickTemplates2/private/qtquicktemplates2global_p.h>
#include <QtQml/qqml.h>
+#include <QtQml/qqmlparserstatus.h>
QT_BEGIN_NAMESPACE
@@ -59,13 +60,16 @@ class QQuickButtonGroupPrivate;
class QQuickButtonGroupAttached;
class QQuickButtonGroupAttachedPrivate;
-class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickButtonGroup : public QObject
+class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickButtonGroup : public QObject, public QQmlParserStatus
{
Q_OBJECT
Q_PROPERTY(QQuickAbstractButton *checkedButton READ checkedButton WRITE setCheckedButton NOTIFY checkedButtonChanged FINAL)
Q_PROPERTY(QQmlListProperty<QQuickAbstractButton> buttons READ buttons NOTIFY buttonsChanged FINAL)
// 2.3 (Qt 5.10)
Q_PROPERTY(bool exclusive READ isExclusive WRITE setExclusive NOTIFY exclusiveChanged FINAL REVISION 3)
+ // 2.4 (Qt 5.11)
+ Q_PROPERTY(Qt::CheckState checkState READ checkState WRITE setCheckState NOTIFY checkStateChanged FINAL REVISION 4)
+ Q_INTERFACES(QQmlParserStatus)
public:
explicit QQuickButtonGroup(QObject *parent = nullptr);
@@ -81,6 +85,10 @@ public:
bool isExclusive() const;
void setExclusive(bool exclusive);
+ // 2.4 (Qt 5.11)
+ Qt::CheckState checkState() const;
+ void setCheckState(Qt::CheckState state);
+
public Q_SLOTS:
void addButton(QQuickAbstractButton *button);
void removeButton(QQuickAbstractButton *button);
@@ -92,6 +100,12 @@ Q_SIGNALS:
Q_REVISION(1) void clicked(QQuickAbstractButton *button);
// 2.3 (Qt 5.10)
Q_REVISION(3) void exclusiveChanged();
+ // 2.4 (Qt 5.11)
+ Q_REVISION(4) void checkStateChanged();
+
+protected:
+ void classBegin() override;
+ void componentComplete() override;
private:
Q_DISABLE_COPY(QQuickButtonGroup)
diff --git a/src/quicktemplates2/qquickcheckbox.cpp b/src/quicktemplates2/qquickcheckbox.cpp
index 2e0c401a..c6519338 100644
--- a/src/quicktemplates2/qquickcheckbox.cpp
+++ b/src/quicktemplates2/qquickcheckbox.cpp
@@ -38,6 +38,7 @@
#include "qquickabstractbutton_p_p.h"
#include <QtGui/qpa/qplatformtheme.h>
+#include <QtQml/qjsvalue.h>
QT_BEGIN_NAMESPACE
@@ -83,7 +84,17 @@ QT_BEGIN_NAMESPACE
}
\endcode
- \sa {Customizing CheckBox}, {Button Controls}
+ Hierarchical checkbox groups can be managed with a non-exclusive
+ \l ButtonGroup.
+
+ \image qtquickcontrols2-checkbox-group.png
+
+ The following example illustrates how the combined check state of
+ children can be bound to the check state of the parent checkbox:
+
+ \snippet qtquickcontrols2-checkbox-group.qml 1
+
+ \sa {Customizing CheckBox}, ButtonGroup, {Button Controls}
*/
class QQuickCheckBoxPrivate : public QQuickAbstractButtonPrivate
@@ -97,10 +108,20 @@ public:
{
}
+ void setNextCheckState(const QJSValue &callback);
+
bool tristate;
Qt::CheckState checkState;
+ QJSValue nextCheckState;
};
+void QQuickCheckBoxPrivate::setNextCheckState(const QJSValue &callback)
+{
+ Q_Q(QQuickCheckBox);
+ nextCheckState = callback;
+ emit q->nextCheckStateChanged();
+}
+
QQuickCheckBox::QQuickCheckBox(QQuickItem *parent)
: QQuickAbstractButton(*(new QQuickCheckBoxPrivate), parent)
{
@@ -158,11 +179,8 @@ void QQuickCheckBox::setCheckState(Qt::CheckState state)
if (d->checkState == state)
return;
- if (!d->tristate && state == Qt::PartiallyChecked)
- setTristate(true);
-
bool wasChecked = isChecked();
- d->checked = state != Qt::Unchecked;
+ d->checked = state == Qt::Checked;
d->checkState = state;
emit checkStateChanged();
if (d->checked != wasChecked)
@@ -187,10 +205,45 @@ void QQuickCheckBox::buttonChange(ButtonChange change)
QQuickAbstractButton::buttonChange(change);
}
+/*!
+ \since QtQuick.Controls 2.4 (Qt 5.11)
+ \qmlproperty function QtQuick.Controls::CheckBox::nextCheckState
+
+ This property holds a callback function that is called to determine
+ the next check state whenever the checkbox is interactively toggled
+ by the user via touch, mouse, or keyboard.
+
+ By default, a normal checkbox cycles between \c Qt.Unchecked and
+ \c Qt.Checked states, and a tri-state checkbox cycles between
+ \c Qt.Unchecked, \c Qt.PartiallyChecked, and \c Qt.Checked states.
+
+ The \c nextCheckState callback function can override the default behavior.
+ The following example implements a tri-state checkbox that can present
+ a partially checked state depending on external conditions, but never
+ cycles to the partially checked state when interactively toggled by
+ the user.
+
+ \code
+ CheckBox {
+ tristate: true
+ checkState: allChildrenChecked ? Qt.Checked :
+ anyChildChecked ? Qt.PartiallyChecked : Qt.Unchecked
+
+ nextCheckState: function() {
+ if (checkState === Qt.Checked)
+ return Qt.Unchecked
+ else
+ return Qt.Checked
+ }
+ }
+ \endcode
+*/
void QQuickCheckBox::nextCheckState()
{
Q_D(QQuickCheckBox);
- if (d->tristate)
+ if (d->nextCheckState.isCallable())
+ setCheckState(static_cast<Qt::CheckState>(d->nextCheckState.call().toInt()));
+ else if (d->tristate)
setCheckState(static_cast<Qt::CheckState>((d->checkState + 1) % 3));
else
QQuickAbstractButton::nextCheckState();
@@ -204,3 +257,5 @@ QAccessible::Role QQuickCheckBox::accessibleRole() const
#endif
QT_END_NAMESPACE
+
+#include "moc_qquickcheckbox_p.cpp"
diff --git a/src/quicktemplates2/qquickcheckbox_p.h b/src/quicktemplates2/qquickcheckbox_p.h
index 979f096b..81bd680c 100644
--- a/src/quicktemplates2/qquickcheckbox_p.h
+++ b/src/quicktemplates2/qquickcheckbox_p.h
@@ -59,6 +59,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickCheckBox : public QQuickAbstractBut
Q_OBJECT
Q_PROPERTY(bool tristate READ isTristate WRITE setTristate NOTIFY tristateChanged FINAL)
Q_PROPERTY(Qt::CheckState checkState READ checkState WRITE setCheckState NOTIFY checkStateChanged FINAL)
+ // 2.4 (Qt 5.11)
+ Q_PRIVATE_PROPERTY(QQuickCheckBox::d_func(), QJSValue nextCheckState MEMBER nextCheckState WRITE setNextCheckState NOTIFY nextCheckStateChanged FINAL REVISION 4)
public:
explicit QQuickCheckBox(QQuickItem *parent = nullptr);
@@ -72,6 +74,8 @@ public:
Q_SIGNALS:
void tristateChanged();
void checkStateChanged();
+ // 2.4 (Qt 5.11)
+ Q_REVISION(4) void nextCheckStateChanged();
protected:
QFont defaultFont() const override;
diff --git a/src/quicktemplates2/qquickcheckdelegate.cpp b/src/quicktemplates2/qquickcheckdelegate.cpp
index 78d55e1d..9fd8c183 100644
--- a/src/quicktemplates2/qquickcheckdelegate.cpp
+++ b/src/quicktemplates2/qquickcheckdelegate.cpp
@@ -38,6 +38,7 @@
#include "qquickitemdelegate_p_p.h"
#include <QtGui/qpa/qplatformtheme.h>
+#include <QtQml/qjsvalue.h>
QT_BEGIN_NAMESPACE
@@ -94,10 +95,20 @@ public:
{
}
+ void setNextCheckState(const QJSValue &callback);
+
bool tristate;
Qt::CheckState checkState;
+ QJSValue nextCheckState;
};
+void QQuickCheckDelegatePrivate::setNextCheckState(const QJSValue &callback)
+{
+ Q_Q(QQuickCheckDelegate);
+ nextCheckState = callback;
+ emit q->nextCheckStateChanged();
+}
+
QQuickCheckDelegate::QQuickCheckDelegate(QQuickItem *parent)
: QQuickItemDelegate(*(new QQuickCheckDelegatePrivate), parent)
{
@@ -179,10 +190,45 @@ void QQuickCheckDelegate::buttonChange(ButtonChange change)
QQuickAbstractButton::buttonChange(change);
}
+/*!
+ \since QtQuick.Controls 2.4 (Qt 5.11)
+ \qmlproperty function QtQuick.Controls::CheckDelegate::nextCheckState
+
+ This property holds a callback function that is called to determine
+ the next check state whenever the check delegate is interactively toggled
+ by the user via touch, mouse, or keyboard.
+
+ By default, a normal check delegate cycles between \c Qt.Unchecked and
+ \c Qt.Checked states, and a tri-state check delegate cycles between
+ \c Qt.Unchecked, \c Qt.PartiallyChecked, and \c Qt.Checked states.
+
+ The \c nextCheckState callback function can override the default behavior.
+ The following example implements a tri-state check delegate that can present
+ a partially checked state depending on external conditions, but never
+ cycles to the partially checked state when interactively toggled by
+ the user.
+
+ \code
+ CheckDelegate {
+ tristate: true
+ checkState: allChildrenChecked ? Qt.Checked :
+ anyChildChecked ? Qt.PartiallyChecked : Qt.Unchecked
+
+ nextCheckState: function() {
+ if (checkState === Qt.Checked)
+ return Qt.Unchecked
+ else
+ return Qt.Checked
+ }
+ }
+ \endcode
+*/
void QQuickCheckDelegate::nextCheckState()
{
Q_D(QQuickCheckDelegate);
- if (d->tristate)
+ if (d->nextCheckState.isCallable())
+ setCheckState(static_cast<Qt::CheckState>(d->nextCheckState.call().toInt()));
+ else if (d->tristate)
setCheckState(static_cast<Qt::CheckState>((d->checkState + 1) % 3));
else
QQuickItemDelegate::nextCheckState();
@@ -196,3 +242,5 @@ QAccessible::Role QQuickCheckDelegate::accessibleRole() const
#endif
QT_END_NAMESPACE
+
+#include "moc_qquickcheckdelegate_p.cpp"
diff --git a/src/quicktemplates2/qquickcheckdelegate_p.h b/src/quicktemplates2/qquickcheckdelegate_p.h
index ae2b4f52..67dcf706 100644
--- a/src/quicktemplates2/qquickcheckdelegate_p.h
+++ b/src/quicktemplates2/qquickcheckdelegate_p.h
@@ -59,6 +59,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickCheckDelegate : public QQuickItemDe
Q_OBJECT
Q_PROPERTY(bool tristate READ isTristate WRITE setTristate NOTIFY tristateChanged FINAL)
Q_PROPERTY(Qt::CheckState checkState READ checkState WRITE setCheckState NOTIFY checkStateChanged FINAL)
+ // 2.4 (Qt 5.11)
+ Q_PRIVATE_PROPERTY(QQuickCheckDelegate::d_func(), QJSValue nextCheckState MEMBER nextCheckState WRITE setNextCheckState NOTIFY nextCheckStateChanged FINAL REVISION 4)
public:
explicit QQuickCheckDelegate(QQuickItem *parent = nullptr);
@@ -72,6 +74,8 @@ public:
Q_SIGNALS:
void tristateChanged();
void checkStateChanged();
+ // 2.4 (Qt 5.11)
+ Q_REVISION(4) void nextCheckStateChanged();
protected:
QFont defaultFont() const override;
diff --git a/src/quicktemplates2/qquickcontrol.cpp b/src/quicktemplates2/qquickcontrol.cpp
index 76d6a688..950ec384 100644
--- a/src/quicktemplates2/qquickcontrol.cpp
+++ b/src/quicktemplates2/qquickcontrol.cpp
@@ -569,8 +569,8 @@ void QQuickControlPrivate::updateLocale(const QLocale &l, bool e)
hasLocale = e;
if (old != l) {
bool wasMirrored = q->isMirrored();
- q->localeChange(l, old);
locale = l;
+ q->localeChange(l, old);
QQuickControlPrivate::updateLocaleRecur(q, l);
emit q->localeChanged();
if (wasMirrored != q->isMirrored())
diff --git a/src/quicktemplates2/qquickscrollbar.cpp b/src/quicktemplates2/qquickscrollbar.cpp
index e75fed5a..aa0094aa 100644
--- a/src/quicktemplates2/qquickscrollbar.cpp
+++ b/src/quicktemplates2/qquickscrollbar.cpp
@@ -160,6 +160,7 @@ QQuickScrollBarPrivate::QQuickScrollBarPrivate()
position(0),
stepSize(0),
offset(0),
+ minimumSize(0),
active(false),
pressed(false),
moving(false),
@@ -171,6 +172,26 @@ QQuickScrollBarPrivate::QQuickScrollBarPrivate()
{
}
+QQuickScrollBarPrivate::VisualArea QQuickScrollBarPrivate::visualArea() const
+{
+ qreal visualPos = position;
+ if (minimumSize > size)
+ visualPos = position / (1.0 - size) * (1.0 - minimumSize);
+
+ qreal visualSize = qBound<qreal>(0, qMax(size, minimumSize) + qMin<qreal>(0, visualPos), 1.0 - visualPos);
+
+ visualPos = qBound<qreal>(0, visualPos, 1.0 - visualSize);
+
+ return VisualArea(visualPos, visualSize);
+}
+
+qreal QQuickScrollBarPrivate::logicalPosition(qreal position) const
+{
+ if (minimumSize > size)
+ return position * (1.0 - size) / (1.0 - minimumSize);
+ return position;
+}
+
qreal QQuickScrollBarPrivate::snapPosition(qreal position) const
{
const qreal effectiveStep = stepSize * (1.0 - size);
@@ -184,9 +205,9 @@ qreal QQuickScrollBarPrivate::positionAt(const QPointF &point) const
{
Q_Q(const QQuickScrollBar);
if (orientation == Qt::Horizontal)
- return (point.x() - q->leftPadding()) / q->availableWidth();
+ return logicalPosition(point.x() - q->leftPadding()) / q->availableWidth();
else
- return (point.y() - q->topPadding()) / q->availableHeight();
+ return logicalPosition(point.y() - q->topPadding()) / q->availableHeight();
}
void QQuickScrollBarPrivate::setInteractive(bool enabled)
@@ -230,15 +251,14 @@ void QQuickScrollBarPrivate::resizeContent()
// - negative overshoot (pos < 0): clamp the pos to 0, and deduct the overshoot from the size
// - positive overshoot (pos + size > 1): clamp the size to 1-pos
- const qreal clampedSize = qBound<qreal>(0, size + qMin<qreal>(0, position), 1.0 - position);
- const qreal clampedPos = qBound<qreal>(0, position, 1.0 - clampedSize);
+ const VisualArea visual = visualArea();
if (orientation == Qt::Horizontal) {
- contentItem->setPosition(QPointF(q->leftPadding() + clampedPos * q->availableWidth(), q->topPadding()));
- contentItem->setSize(QSizeF(q->availableWidth() * clampedSize, q->availableHeight()));
+ contentItem->setPosition(QPointF(q->leftPadding() + visual.position * q->availableWidth(), q->topPadding()));
+ contentItem->setSize(QSizeF(q->availableWidth() * visual.size, q->availableHeight()));
} else {
- contentItem->setPosition(QPointF(q->leftPadding(), q->topPadding() + clampedPos * q->availableHeight()));
- contentItem->setSize(QSizeF(q->availableWidth(), q->availableHeight() * clampedSize));
+ contentItem->setPosition(QPointF(q->leftPadding(), q->topPadding() + visual.position * q->availableHeight()));
+ contentItem->setSize(QSizeF(q->availableWidth(), q->availableHeight() * visual.size));
}
}
@@ -247,8 +267,9 @@ void QQuickScrollBarPrivate::handlePress(const QPointF &point)
Q_Q(QQuickScrollBar);
QQuickControlPrivate::handlePress(point);
offset = positionAt(point) - position;
- if (offset < 0 || offset > size)
- offset = size / 2;
+ qreal sz = qMax(size, logicalPosition(minimumSize));
+ if (offset < 0 || offset > sz)
+ offset = sz / 2;
q->setPressed(true);
}
@@ -282,6 +303,15 @@ void QQuickScrollBarPrivate::handleUngrab()
q->setPressed(false);
}
+void QQuickScrollBarPrivate::visualAreaChange(const VisualArea &newVisualArea, const VisualArea &oldVisualArea)
+{
+ Q_Q(QQuickScrollBar);
+ if (!qFuzzyCompare(newVisualArea.size, oldVisualArea.size))
+ emit q->visualSizeChanged();
+ if (!qFuzzyCompare(newVisualArea.position, oldVisualArea.position))
+ emit q->visualPositionChanged();
+}
+
QQuickScrollBar::QQuickScrollBar(QQuickItem *parent)
: QQuickControl(*(new QQuickScrollBarPrivate), parent)
{
@@ -306,6 +336,8 @@ QQuickScrollBarAttached *QQuickScrollBar::qmlAttachedProperties(QObject *object)
This property is automatically set when the scroll bar is
\l {Attaching ScrollBar to a Flickable}{attached to a flickable}.
+
+ \sa minimumSize, visualSize
*/
qreal QQuickScrollBar::size() const
{
@@ -319,10 +351,12 @@ void QQuickScrollBar::setSize(qreal size)
if (qFuzzyCompare(d->size, size))
return;
+ auto oldVisualArea = d->visualArea();
d->size = size;
if (isComponentComplete())
d->resizeContent();
emit sizeChanged();
+ d->visualAreaChange(d->visualArea(), oldVisualArea);
}
/*!
@@ -334,6 +368,8 @@ void QQuickScrollBar::setSize(qreal size)
This property is automatically set when the scroll bar is
\l {Attaching ScrollBar to a Flickable}{attached to a flickable}.
+
+ \sa visualPosition
*/
qreal QQuickScrollBar::position() const
{
@@ -347,10 +383,12 @@ void QQuickScrollBar::setPosition(qreal position)
if (qFuzzyCompare(d->position, position))
return;
+ auto oldVisualArea = d->visualArea();
d->position = position;
if (isComponentComplete())
d->resizeContent();
emit positionChanged();
+ d->visualAreaChange(d->visualArea(), oldVisualArea);
}
/*!
@@ -591,6 +629,64 @@ bool QQuickScrollBar::isVertical() const
}
/*!
+ \since QtQuick.Controls 2.4 (Qt 5.11)
+ \qmlproperty real QtQuick.Controls::ScrollBar::minimumSize
+
+ This property holds the minimum size of the scroll bar, scaled to \c {0.0 - 1.0}.
+
+ \sa size, visualSize, visualPosition
+*/
+qreal QQuickScrollBar::minimumSize() const
+{
+ Q_D(const QQuickScrollBar);
+ return d->minimumSize;
+}
+
+void QQuickScrollBar::setMinimumSize(qreal minimumSize)
+{
+ Q_D(QQuickScrollBar);
+ if (qFuzzyCompare(d->minimumSize, minimumSize))
+ return;
+
+ auto oldVisualArea = d->visualArea();
+ d->minimumSize = minimumSize;
+ if (isComponentComplete())
+ d->resizeContent();
+ emit minimumSizeChanged();
+ d->visualAreaChange(d->visualArea(), oldVisualArea);
+}
+
+/*!
+ \since QtQuick.Controls 2.4 (Qt 5.11)
+ \qmlproperty real QtQuick.Controls::ScrollBar::visualSize
+
+ This property holds the effective visual size of the scroll bar,
+ which may be limited by the \l {minimumSize}{minimum size}.
+
+ \sa size, minimumSize
+*/
+qreal QQuickScrollBar::visualSize() const
+{
+ Q_D(const QQuickScrollBar);
+ return d->visualArea().size;
+}
+
+/*!
+ \since QtQuick.Controls 2.4 (Qt 5.11)
+ \qmlproperty real QtQuick.Controls::ScrollBar::visualPosition
+
+ This property holds the effective visual position of the scroll bar,
+ which may be limited by the \l {minimumSize}{minimum size}.
+
+ \sa position, minimumSize
+*/
+qreal QQuickScrollBar::visualPosition() const
+{
+ Q_D(const QQuickScrollBar);
+ return d->visualArea().position;
+}
+
+/*!
\qmlmethod void QtQuick.Controls::ScrollBar::increase()
Increases the position by \l stepSize or \c 0.1 if stepSize is \c 0.0.
@@ -776,9 +872,9 @@ void QQuickScrollBarAttachedPrivate::scrollHorizontal()
{
QQuickFriendlyFlickable *f = reinterpret_cast<QQuickFriendlyFlickable *>(flickable);
- const qreal viewwidth = f->width();
- const qreal maxxextent = -f->maxXExtent() + f->minXExtent();
- qreal cx = horizontal->position() * (maxxextent + viewwidth) - f->minXExtent();
+ const qreal extent = f->contentWidth() - f->minXExtent();
+ const qreal cx = horizontal->position() * extent;
+
if (!qIsNaN(cx) && !qFuzzyCompare(cx, flickable->contentX()))
flickable->setContentX(cx);
}
@@ -787,9 +883,9 @@ void QQuickScrollBarAttachedPrivate::scrollVertical()
{
QQuickFriendlyFlickable *f = reinterpret_cast<QQuickFriendlyFlickable *>(flickable);
- const qreal viewheight = f->height();
- const qreal maxyextent = -f->maxYExtent() + f->minYExtent();
- qreal cy = vertical->position() * (maxyextent + viewheight) - f->minYExtent();
+ const qreal extent = f->contentHeight() - f->minYExtent();
+ const qreal cy = vertical->position() * extent;
+
if (!qIsNaN(cy) && !qFuzzyCompare(cy, flickable->contentY()))
flickable->setContentY(cy);
}
diff --git a/src/quicktemplates2/qquickscrollbar_p.h b/src/quicktemplates2/qquickscrollbar_p.h
index 6dda6f2e..5fad8240 100644
--- a/src/quicktemplates2/qquickscrollbar_p.h
+++ b/src/quicktemplates2/qquickscrollbar_p.h
@@ -71,6 +71,10 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickScrollBar : public QQuickControl
// 2.3 (Qt 5.10)
Q_PROPERTY(bool horizontal READ isHorizontal NOTIFY orientationChanged FINAL REVISION 3)
Q_PROPERTY(bool vertical READ isVertical NOTIFY orientationChanged FINAL REVISION 3)
+ // 2.4 (Qt 5.11)
+ Q_PROPERTY(qreal minimumSize READ minimumSize WRITE setMinimumSize NOTIFY minimumSizeChanged FINAL REVISION 4)
+ Q_PROPERTY(qreal visualSize READ visualSize NOTIFY visualSizeChanged FINAL REVISION 4)
+ Q_PROPERTY(qreal visualPosition READ visualPosition NOTIFY visualPositionChanged FINAL REVISION 4)
public:
explicit QQuickScrollBar(QQuickItem *parent = nullptr);
@@ -121,6 +125,13 @@ public:
bool isHorizontal() const;
bool isVertical() const;
+ // 2.4 (Qt 5.11)
+ qreal minimumSize() const;
+ void setMinimumSize(qreal minimumSize);
+
+ qreal visualSize() const;
+ qreal visualPosition() const;
+
public Q_SLOTS:
void increase();
void decrease();
@@ -138,6 +149,10 @@ Q_SIGNALS:
Q_REVISION(2) void snapModeChanged();
Q_REVISION(2) void interactiveChanged();
Q_REVISION(2) void policyChanged();
+ // 2.4 (Qt 5.11)
+ Q_REVISION(4) void minimumSizeChanged();
+ Q_REVISION(4) void visualSizeChanged();
+ Q_REVISION(4) void visualPositionChanged();
protected:
void mousePressEvent(QMouseEvent *event) override;
diff --git a/src/quicktemplates2/qquickscrollbar_p_p.h b/src/quicktemplates2/qquickscrollbar_p_p.h
index 431bb383..384348b4 100644
--- a/src/quicktemplates2/qquickscrollbar_p_p.h
+++ b/src/quicktemplates2/qquickscrollbar_p_p.h
@@ -68,6 +68,17 @@ public:
return bar->d_func();
}
+ struct VisualArea
+ {
+ VisualArea(qreal pos, qreal sz)
+ : position(pos), size(sz) { }
+ qreal position;
+ qreal size;
+ };
+ VisualArea visualArea() const;
+
+ qreal logicalPosition(qreal position) const;
+
qreal snapPosition(qreal position) const;
qreal positionAt(const QPointF &point) const;
void setInteractive(bool interactive);
@@ -79,10 +90,13 @@ public:
void handleRelease(const QPointF &point) override;
void handleUngrab() override;
+ void visualAreaChange(const VisualArea &newVisualArea, const VisualArea &oldVisualArea);
+
qreal size;
qreal position;
qreal stepSize;
qreal offset;
+ qreal minimumSize;
bool active;
bool pressed;
bool moving;
diff --git a/src/quicktemplates2/qquickscrollindicator.cpp b/src/quicktemplates2/qquickscrollindicator.cpp
index ee1078e4..511a8311 100644
--- a/src/quicktemplates2/qquickscrollindicator.cpp
+++ b/src/quicktemplates2/qquickscrollindicator.cpp
@@ -137,20 +137,54 @@ class QQuickScrollIndicatorPrivate : public QQuickControlPrivate
public:
QQuickScrollIndicatorPrivate()
: size(0),
+ minimumSize(0),
position(0),
active(false),
orientation(Qt::Vertical)
{
}
+ struct VisualArea
+ {
+ VisualArea(qreal pos, qreal sz)
+ : position(pos), size(sz) { }
+ qreal position;
+ qreal size;
+ };
+ VisualArea visualArea() const;
+ void visualAreaChange(const VisualArea &newVisualArea, const VisualArea &oldVisualArea);
+
void resizeContent() override;
qreal size;
+ qreal minimumSize;
qreal position;
bool active;
Qt::Orientation orientation;
};
+QQuickScrollIndicatorPrivate::VisualArea QQuickScrollIndicatorPrivate::visualArea() const
+{
+ qreal visualPos = position;
+ if (minimumSize > size)
+ visualPos = position / (1.0 - size) * (1.0 - minimumSize);
+
+ qreal visualSize = qBound<qreal>(0, qMax(size, minimumSize) + qMin<qreal>(0, visualPos), 1.0 - visualPos);
+
+ visualPos = qBound<qreal>(0, visualPos, 1.0 - visualSize);
+
+ return VisualArea(visualPos, visualSize);
+}
+
+void QQuickScrollIndicatorPrivate::visualAreaChange(const VisualArea &newVisualArea, const VisualArea &oldVisualArea)
+{
+ Q_Q(QQuickScrollIndicator);
+ if (!qFuzzyCompare(newVisualArea.size, oldVisualArea.size))
+ emit q->visualSizeChanged();
+ if (!qFuzzyCompare(newVisualArea.position, oldVisualArea.position))
+ emit q->visualPositionChanged();
+}
+
void QQuickScrollIndicatorPrivate::resizeContent()
{
Q_Q(QQuickScrollIndicator);
@@ -159,15 +193,14 @@ void QQuickScrollIndicatorPrivate::resizeContent()
// - negative overshoot (pos < 0): clamp the pos to 0, and deduct the overshoot from the size
// - positive overshoot (pos + size > 1): clamp the size to 1-pos
- const qreal clampedSize = qBound<qreal>(0, size + qMin<qreal>(0, position), 1.0 - position);
- const qreal clampedPos = qBound<qreal>(0, position, 1.0 - clampedSize);
+ const VisualArea visual = visualArea();
if (orientation == Qt::Horizontal) {
- contentItem->setPosition(QPointF(q->leftPadding() + clampedPos * q->availableWidth(), q->topPadding()));
- contentItem->setSize(QSizeF(q->availableWidth() * clampedSize, q->availableHeight()));
+ contentItem->setPosition(QPointF(q->leftPadding() + visual.position * q->availableWidth(), q->topPadding()));
+ contentItem->setSize(QSizeF(q->availableWidth() * visual.size, q->availableHeight()));
} else {
- contentItem->setPosition(QPointF(q->leftPadding(), q->topPadding() + clampedPos * q->availableHeight()));
- contentItem->setSize(QSizeF(q->availableWidth(), q->availableHeight() * clampedSize));
+ contentItem->setPosition(QPointF(q->leftPadding(), q->topPadding() + visual.position * q->availableHeight()));
+ contentItem->setSize(QSizeF(q->availableWidth(), q->availableHeight() * visual.size));
}
}
@@ -190,6 +223,8 @@ QQuickScrollIndicatorAttached *QQuickScrollIndicator::qmlAttachedProperties(QObj
This property is automatically set when the scroll indicator is
\l {Attaching ScrollIndicator to a Flickable}{attached to a flickable}.
+
+ \sa minimumSize, visualSize
*/
qreal QQuickScrollIndicator::size() const
{
@@ -203,10 +238,12 @@ void QQuickScrollIndicator::setSize(qreal size)
if (qFuzzyCompare(d->size, size))
return;
+ auto oldVisualArea = d->visualArea();
d->size = size;
if (isComponentComplete())
d->resizeContent();
emit sizeChanged();
+ d->visualAreaChange(d->visualArea(), oldVisualArea);
}
/*!
@@ -217,7 +254,7 @@ void QQuickScrollIndicator::setSize(qreal size)
This property is automatically set when the scroll indicator is
\l {Attaching ScrollIndicator to a Flickable}{attached to a flickable}.
- \sa {Flickable::visibleArea.yPosition}{Flickable::visibleArea}
+ \sa {Flickable::visibleArea.yPosition}{Flickable::visibleArea}, visualPosition
*/
qreal QQuickScrollIndicator::position() const
{
@@ -231,10 +268,12 @@ void QQuickScrollIndicator::setPosition(qreal position)
if (qFuzzyCompare(d->position, position))
return;
+ auto oldVisualArea = d->visualArea();
d->position = position;
if (isComponentComplete())
d->resizeContent();
emit positionChanged();
+ d->visualAreaChange(d->visualArea(), oldVisualArea);
}
/*!
@@ -327,6 +366,64 @@ bool QQuickScrollIndicator::isVertical() const
return d->orientation == Qt::Vertical;
}
+/*!
+ \since QtQuick.Controls 2.4 (Qt 5.11)
+ \qmlproperty real QtQuick.Controls::ScrollIndicator::minimumSize
+
+ This property holds the minimum size of the indicator, scaled to \c {0.0 - 1.0}.
+
+ \sa size, visualSize, visualPosition
+*/
+qreal QQuickScrollIndicator::minimumSize() const
+{
+ Q_D(const QQuickScrollIndicator);
+ return d->minimumSize;
+}
+
+void QQuickScrollIndicator::setMinimumSize(qreal minimumSize)
+{
+ Q_D(QQuickScrollIndicator);
+ if (qFuzzyCompare(d->minimumSize, minimumSize))
+ return;
+
+ auto oldVisualArea = d->visualArea();
+ d->minimumSize = minimumSize;
+ if (isComponentComplete())
+ d->resizeContent();
+ emit minimumSizeChanged();
+ d->visualAreaChange(d->visualArea(), oldVisualArea);
+}
+
+/*!
+ \since QtQuick.Controls 2.4 (Qt 5.11)
+ \qmlproperty real QtQuick.Controls::ScrollIndicator::visualSize
+
+ This property holds the effective visual size of the indicator,
+ which may be limited by the \l {minimumSize}{minimum size}.
+
+ \sa size, minimumSize
+*/
+qreal QQuickScrollIndicator::visualSize() const
+{
+ Q_D(const QQuickScrollIndicator);
+ return d->visualArea().size;
+}
+
+/*!
+ \since QtQuick.Controls 2.4 (Qt 5.11)
+ \qmlproperty real QtQuick.Controls::ScrollIndicator::visualPosition
+
+ This property holds the effective visual position of the indicator,
+ which may be limited by the \l {minimumSize}{minimum size}.
+
+ \sa position, minimumSize
+*/
+qreal QQuickScrollIndicator::visualPosition() const
+{
+ Q_D(const QQuickScrollIndicator);
+ return d->visualArea().position;
+}
+
class QQuickScrollIndicatorAttachedPrivate : public QObjectPrivate, public QQuickItemChangeListener
{
public:
diff --git a/src/quicktemplates2/qquickscrollindicator_p.h b/src/quicktemplates2/qquickscrollindicator_p.h
index d679cf74..4fa06a33 100644
--- a/src/quicktemplates2/qquickscrollindicator_p.h
+++ b/src/quicktemplates2/qquickscrollindicator_p.h
@@ -66,6 +66,10 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickScrollIndicator : public QQuickCont
// 2.3 (Qt 5.10)
Q_PROPERTY(bool horizontal READ isHorizontal NOTIFY orientationChanged FINAL REVISION 3)
Q_PROPERTY(bool vertical READ isVertical NOTIFY orientationChanged FINAL REVISION 3)
+ // 2.4 (Qt 5.11)
+ Q_PROPERTY(qreal minimumSize READ minimumSize WRITE setMinimumSize NOTIFY minimumSizeChanged FINAL REVISION 4)
+ Q_PROPERTY(qreal visualSize READ visualSize NOTIFY visualSizeChanged FINAL REVISION 4)
+ Q_PROPERTY(qreal visualPosition READ visualPosition NOTIFY visualPositionChanged FINAL REVISION 4)
public:
explicit QQuickScrollIndicator(QQuickItem *parent = nullptr);
@@ -85,6 +89,13 @@ public:
bool isHorizontal() const;
bool isVertical() const;
+ // 2.4 (Qt 5.11)
+ qreal minimumSize() const;
+ void setMinimumSize(qreal minimumSize);
+
+ qreal visualSize() const;
+ qreal visualPosition() const;
+
public Q_SLOTS:
void setSize(qreal size);
void setPosition(qreal position);
@@ -94,6 +105,10 @@ Q_SIGNALS:
void positionChanged();
void activeChanged();
void orientationChanged();
+ // 2.4 (Qt 5.11)
+ Q_REVISION(4) void minimumSizeChanged();
+ Q_REVISION(4) void visualSizeChanged();
+ Q_REVISION(4) void visualPositionChanged();
protected:
#if QT_CONFIG(quicktemplates2_multitouch)
diff --git a/src/quicktemplates2/qquickspinbox.cpp b/src/quicktemplates2/qquickspinbox.cpp
index 27dd0d5e..f7af2015 100644
--- a/src/quicktemplates2/qquickspinbox.cpp
+++ b/src/quicktemplates2/qquickspinbox.cpp
@@ -132,6 +132,9 @@ public:
int effectiveStepSize() const;
+ void updateDisplayText();
+ void setDisplayText(const QString &displayText);
+
bool upEnabled() const;
void updateUpEnabled();
bool downEnabled() const;
@@ -155,6 +158,7 @@ public:
int stepSize;
int delayTimer;
int repeatTimer;
+ QString displayText;
QQuickSpinButton *up;
QQuickSpinButton *down;
QValidator *validator;
@@ -209,13 +213,16 @@ void QQuickSpinBoxPrivate::updateValue()
if (contentItem) {
QVariant text = contentItem->property("text");
if (text.isValid()) {
+ int val = 0;
QQmlEngine *engine = qmlEngine(q);
- if (engine) {
+ if (engine && valueFromText.isCallable()) {
QV4::ExecutionEngine *v4 = QQmlEnginePrivate::getV4Engine(engine);
QJSValue loc(v4, QQmlLocale::wrap(v4, locale));
- QJSValue val = q->valueFromText().call(QJSValueList() << text.toString() << loc);
- setValue(val.toInt(), /* allowWrap = */ false, /* modified = */ true);
+ val = valueFromText.call(QJSValueList() << text.toString() << loc).toInt();
+ } else {
+ val = locale.toInt(text.toString());
}
+ setValue(val, /* allowWrap = */ false, /* modified = */ true);
}
}
}
@@ -231,6 +238,7 @@ bool QQuickSpinBoxPrivate::setValue(int newValue, bool allowWrap, bool modified)
value = newValue;
+ updateDisplayText();
updateUpEnabled();
updateDownEnabled();
@@ -260,6 +268,31 @@ int QQuickSpinBoxPrivate::effectiveStepSize() const
return from > to ? -1 * stepSize : stepSize;
}
+void QQuickSpinBoxPrivate::updateDisplayText()
+{
+ Q_Q(QQuickSpinBox);
+ QString text;
+ QQmlEngine *engine = qmlEngine(q);
+ if (engine && textFromValue.isCallable()) {
+ QV4::ExecutionEngine *v4 = QQmlEnginePrivate::getV4Engine(engine);
+ QJSValue loc(v4, QQmlLocale::wrap(v4, locale));
+ text = textFromValue.call(QJSValueList() << value << loc).toString();
+ } else {
+ text = locale.toString(value);
+ }
+ setDisplayText(text);
+}
+
+void QQuickSpinBoxPrivate::setDisplayText(const QString &text)
+{
+ Q_Q(QQuickSpinBox);
+ if (displayText == text)
+ return;
+
+ displayText = text;
+ emit q->displayTextChanged();
+}
+
bool QQuickSpinBoxPrivate::upEnabled() const
{
const QQuickItem *upIndicator = up->indicator();
@@ -778,6 +811,27 @@ void QQuickSpinBox::setWrap(bool wrap)
}
/*!
+ \since QtQuick.Controls 2.4 (Qt 5.11)
+ \qmlproperty string QtQuick.Controls::SpinBox::displayText
+ \readonly
+
+ This property holds the textual value of the spinbox.
+
+ The value of the property is based on \l textFromValue() and \l {Control::}
+ {locale}, and equal to:
+ \badcode
+ var text = spinBox.textFromValue(spinBox.value, spinBox.locale)
+ \endcode
+
+ \sa textFromValue
+*/
+QString QQuickSpinBox::displayText() const
+{
+ Q_D(const QQuickSpinBox);
+ return d->displayText;
+}
+
+/*!
\qmlmethod void QtQuick.Controls::SpinBox::increase()
Increases the value by \l stepSize, or \c 1 if stepSize is not defined.
@@ -925,6 +979,7 @@ void QQuickSpinBox::componentComplete()
QQuickControl::componentComplete();
if (!d->setValue(d->value, /* allowWrap = */ false, /* modified = */ false)) {
+ d->updateDisplayText();
d->updateUpEnabled();
d->updateDownEnabled();
}
@@ -958,6 +1013,13 @@ void QQuickSpinBox::contentItemChange(QQuickItem *newItem, QQuickItem *oldItem)
}
}
+void QQuickSpinBox::localeChange(const QLocale &newLocale, const QLocale &oldLocale)
+{
+ Q_D(QQuickSpinBox);
+ QQuickControl::localeChange(newLocale, oldLocale);
+ d->updateDisplayText();
+}
+
QFont QQuickSpinBox::defaultFont() const
{
return QQuickControlPrivate::themeFont(QPlatformTheme::EditorFont);
diff --git a/src/quicktemplates2/qquickspinbox_p.h b/src/quicktemplates2/qquickspinbox_p.h
index 524930a2..f5370331 100644
--- a/src/quicktemplates2/qquickspinbox_p.h
+++ b/src/quicktemplates2/qquickspinbox_p.h
@@ -76,6 +76,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickSpinBox : public QQuickControl
Q_PROPERTY(bool inputMethodComposing READ isInputMethodComposing NOTIFY inputMethodComposingChanged FINAL REVISION 2)
// 2.3 (Qt 5.10)
Q_PROPERTY(bool wrap READ wrap WRITE setWrap NOTIFY wrapChanged FINAL REVISION 3)
+ // 2.4 (Qt 5.11)
+ Q_PROPERTY(QString displayText READ displayText NOTIFY displayTextChanged FINAL REVISION 4)
public:
explicit QQuickSpinBox(QQuickItem *parent = nullptr);
@@ -117,6 +119,9 @@ public:
bool wrap() const;
void setWrap(bool wrap);
+ // 2.4 (Qt 5.11)
+ QString displayText() const;
+
public Q_SLOTS:
void increase();
void decrease();
@@ -136,6 +141,8 @@ Q_SIGNALS:
Q_REVISION(2) void inputMethodComposingChanged();
// 2.3 (Qt 5.10)
Q_REVISION(3) void wrapChanged();
+ // 2.4 (Qt 5.11)
+ Q_REVISION(4) void displayTextChanged();
protected:
void focusInEvent(QFocusEvent *event) override;
@@ -153,6 +160,7 @@ protected:
void componentComplete() override;
void itemChange(ItemChange change, const ItemChangeData &value) override;
void contentItemChange(QQuickItem *newItem, QQuickItem *oldItem) override;
+ void localeChange(const QLocale &newLocale, const QLocale &oldLocale) override;
QFont defaultFont() const override;
QPalette defaultPalette() const override;
diff --git a/src/quicktemplates2/qquickswipedelegate.cpp b/src/quicktemplates2/qquickswipedelegate.cpp
index 0524b2cc..dcf93437 100644
--- a/src/quicktemplates2/qquickswipedelegate.cpp
+++ b/src/quicktemplates2/qquickswipedelegate.cpp
@@ -736,7 +736,7 @@ bool QQuickSwipeDelegatePrivate::handleMousePressEvent(QQuickItem *item, QMouseE
// The press point could be incorrect if the press happened over a child item,
// so we correct it after calling the base class' mousePressEvent(), rather
// than having to duplicate its code just so we can set the pressPoint.
- pressPoint = item->mapToItem(q, event->pos());
+ setPressPoint(item->mapToItem(q, event->pos()));
return true;
}
@@ -745,7 +745,7 @@ bool QQuickSwipeDelegatePrivate::handleMousePressEvent(QQuickItem *item, QMouseE
// mouse movement in case it turns into a swipe, in which case we grab the mouse.
swipePrivate->positionBeforePress = swipePrivate->position;
swipePrivate->velocityCalculator.startMeasuring(event->pos(), event->timestamp());
- pressPoint = item->mapToItem(q, event->pos());
+ setPressPoint(item->mapToItem(q, event->pos()));
// When a delegate uses the attached properties and signals, it declares that it wants mouse events.
Attached *attached = attachedObject(item);
diff --git a/src/quicktemplates2/qquicktooltip.cpp b/src/quicktemplates2/qquicktooltip.cpp
index f0bc6ffc..1bf6ca55 100644
--- a/src/quicktemplates2/qquicktooltip.cpp
+++ b/src/quicktemplates2/qquicktooltip.cpp
@@ -360,7 +360,7 @@ QQuickToolTip *QQuickToolTipAttachedPrivate::instance(bool create) const
if (!tip && create) {
// TODO: a cleaner way to create the instance? QQml(Meta)Type?
QQmlComponent component(engine);
- component.setData("import QtQuick.Controls 2.3; ToolTip { }", QUrl());
+ component.setData("import QtQuick.Controls 2.4; ToolTip { }", QUrl());
QObject *object = component.create();
if (object)
diff --git a/tests/auto/controls/data/tst_abstractbutton.qml b/tests/auto/controls/data/tst_abstractbutton.qml
index 7acf9882..b266b183 100644
--- a/tests/auto/controls/data/tst_abstractbutton.qml
+++ b/tests/auto/controls/data/tst_abstractbutton.qml
@@ -119,6 +119,113 @@ TestCase {
compare(control.implicitHeight, 220)
}
+ function test_pressPoint_data() {
+ return [
+ { tag: "mouse", mouse: true },
+ { tag: "touch", touch: true }
+ ]
+ }
+
+ function test_pressPoint(data) {
+ var control = createTemporaryObject(button, testCase, {width: 100, height: 40})
+ verify(control)
+
+ var pressXChanges = 0
+ var pressYChanges = 0
+
+ var pressXSpy = signalSpy.createObject(control, {target: control, signalName: "pressXChanged"})
+ verify(pressXSpy.valid)
+
+ var pressYSpy = signalSpy.createObject(control, {target: control, signalName: "pressYChanged"})
+ verify(pressYSpy.valid)
+
+ compare(control.pressX, 0)
+ compare(control.pressY, 0)
+
+ var touch = data.touch ? touchEvent(control) : null
+
+ if (data.touch)
+ touch.press(0, control, control.width / 2, control.height / 2).commit()
+ else
+ mousePress(control, control.width / 2, control.height / 2)
+ compare(control.pressX, control.width / 2)
+ compare(control.pressY, control.height / 2)
+ compare(pressXSpy.count, ++pressXChanges)
+ compare(pressYSpy.count, ++pressYChanges)
+
+ if (data.touch)
+ touch.move(0, control, control.width / 2, control.height / 2).commit()
+ else
+ mouseMove(control, control.width / 2, control.height / 2)
+ compare(control.pressX, control.width / 2)
+ compare(control.pressY, control.height / 2)
+ compare(pressXSpy.count, pressXChanges)
+ compare(pressYSpy.count, pressYChanges)
+
+ if (data.touch)
+ touch.move(0, control, control.width / 4, control.height / 4).commit()
+ else
+ mouseMove(control, control.width / 4, control.height / 4)
+ compare(control.pressX, control.width / 4)
+ compare(control.pressY, control.height / 4)
+ compare(pressXSpy.count, ++pressXChanges)
+ compare(pressYSpy.count, ++pressYChanges)
+
+ if (data.touch)
+ touch.move(0, control, 0, 0).commit()
+ else
+ mouseMove(control, 0, 0)
+ compare(control.pressX, 0)
+ compare(control.pressY, 0)
+ compare(pressXSpy.count, ++pressXChanges)
+ compare(pressYSpy.count, ++pressYChanges)
+
+ if (data.touch)
+ touch.move(0, control, -control.width / 2, -control.height / 2).commit()
+ else
+ mouseMove(control, -control.width / 2, -control.height / 2)
+ compare(control.pressX, -control.width / 2)
+ compare(control.pressY, -control.height / 2)
+ compare(pressXSpy.count, ++pressXChanges)
+ compare(pressYSpy.count, ++pressYChanges)
+
+ if (data.touch)
+ touch.release(0, control, -control.width / 2, -control.height / 2).commit()
+ else
+ mouseRelease(control, -control.width / 2, -control.height / 2)
+ compare(control.pressX, -control.width / 2)
+ compare(control.pressY, -control.height / 2)
+ compare(pressXSpy.count, pressXChanges)
+ compare(pressYSpy.count, pressYChanges)
+
+ if (data.touch)
+ touch.press(0, control, control.width - 1, control.height - 1).commit()
+ else
+ mousePress(control, control.width - 1, control.height - 1)
+ compare(control.pressX, control.width - 1)
+ compare(control.pressY, control.height - 1)
+ compare(pressXSpy.count, ++pressXChanges)
+ compare(pressYSpy.count, ++pressYChanges)
+
+ if (data.touch)
+ touch.move(0, control, control.width + 1, control.height + 1).commit()
+ else
+ mousePress(control, control.width + 1, control.height + 1)
+ compare(control.pressX, control.width + 1)
+ compare(control.pressY, control.height + 1)
+ compare(pressXSpy.count, ++pressXChanges)
+ compare(pressYSpy.count, ++pressYChanges)
+
+ if (data.touch)
+ touch.release(0, control, control.width + 2, control.height + 2).commit()
+ else
+ mouseRelease(control, control.width + 2, control.height + 2)
+ compare(control.pressX, control.width + 2)
+ compare(control.pressY, control.height + 2)
+ compare(pressXSpy.count, ++pressXChanges)
+ compare(pressYSpy.count, ++pressYChanges)
+ }
+
function test_pressAndHold() {
var control = createTemporaryObject(button, testCase, {checkable: true})
verify(control)
diff --git a/tests/auto/controls/data/tst_buttongroup.qml b/tests/auto/controls/data/tst_buttongroup.qml
index 7d981dd3..1b7fa4a3 100644
--- a/tests/auto/controls/data/tst_buttongroup.qml
+++ b/tests/auto/controls/data/tst_buttongroup.qml
@@ -99,6 +99,7 @@ TestCase {
compare(group.buttons.length, 0)
compare(group.checkedButton, null)
compare(group.exclusive, true)
+ compare(group.checkState, Qt.Unchecked)
}
function test_current() {
@@ -371,36 +372,63 @@ TestCase {
var group = createTemporaryObject(nonExclusiveGroup, testCase)
verify(group)
+ compare(group.checkState, Qt.Unchecked)
+
var button1 = createTemporaryObject(button, testCase, {checked: true})
group.addButton(button1)
compare(button1.checked, true)
compare(group.checkedButton, null)
+ compare(group.checkState, Qt.Checked)
var button2 = createTemporaryObject(button, testCase, {checked: true})
group.addButton(button2)
compare(button1.checked, true)
compare(button2.checked, true)
compare(group.checkedButton, null)
+ compare(group.checkState, Qt.Checked)
+
+ var button3 = createTemporaryObject(button, testCase, {checked: false})
+ group.addButton(button3)
+ compare(button1.checked, true)
+ compare(button2.checked, true)
+ compare(button3.checked, false)
+ compare(group.checkedButton, null)
+ compare(group.checkState, Qt.PartiallyChecked)
button1.checked = false
compare(button1.checked, false)
compare(button2.checked, true)
+ compare(button3.checked, false)
compare(group.checkedButton, null)
+ compare(group.checkState, Qt.PartiallyChecked)
button2.checked = false
compare(button1.checked, false)
compare(button2.checked, false)
+ compare(button3.checked, false)
compare(group.checkedButton, null)
+ compare(group.checkState, Qt.Unchecked)
button1.checked = true
compare(button1.checked, true)
compare(button2.checked, false)
+ compare(button3.checked, false)
compare(group.checkedButton, null)
+ compare(group.checkState, Qt.PartiallyChecked)
button2.checked = true
compare(button1.checked, true)
compare(button2.checked, true)
+ compare(button3.checked, false)
+ compare(group.checkedButton, null)
+ compare(group.checkState, Qt.PartiallyChecked)
+
+ button3.checked = true
+ compare(button1.checked, true)
+ compare(button2.checked, true)
+ compare(button3.checked, true)
compare(group.checkedButton, null)
+ compare(group.checkState, Qt.Checked)
}
Component {
diff --git a/tests/auto/controls/data/tst_checkbox.qml b/tests/auto/controls/data/tst_checkbox.qml
index 5f36b00c..3fb7d15e 100644
--- a/tests/auto/controls/data/tst_checkbox.qml
+++ b/tests/auto/controls/data/tst_checkbox.qml
@@ -382,17 +382,19 @@ TestCase {
compare(container.cb2.tristate, false)
container.cb1.checkState = Qt.PartiallyChecked
- compare(container.cb1.checked, true)
+ compare(container.cb1.checked, false)
compare(container.cb1.checkState, Qt.PartiallyChecked)
- compare(container.cb2.checked, true)
+ compare(container.cb2.checked, false)
compare(container.cb2.checkState, Qt.PartiallyChecked)
- compare(container.cb1.tristate, true)
- compare(container.cb2.tristate, true)
+ // note: since Qt Quick Controls 2.4 (Qt 5.11), CheckBox does not
+ // force tristate when checkState is set to Qt.PartiallyChecked
+ compare(container.cb1.tristate, false)
+ compare(container.cb2.tristate, false)
}
function test_tristate() {
- var control = createTemporaryObject(checkBox, testCase)
+ var control = createTemporaryObject(checkBox, testCase, {tristate: true})
var sequenceSpy = signalSequenceSpy.createObject(control, {target: control})
@@ -400,23 +402,22 @@ TestCase {
control.forceActiveFocus()
verify(control.activeFocus)
- compare(control.tristate, false)
+ compare(control.tristate, true)
compare(control.checked, false)
compare(control.checkState, Qt.Unchecked)
- sequenceSpy.expectedSequence = [["checkStateChanged", { "pressed": false, "checked": true, "checkState": Qt.PartiallyChecked }],
- ["checkedChanged", { "pressed": false, "checked": true, "checkState": Qt.PartiallyChecked }]]
+ sequenceSpy.expectedSequence = [["checkStateChanged", { "pressed": false, "checked": false, "checkState": Qt.PartiallyChecked }]]
control.checkState = Qt.PartiallyChecked
- compare(control.tristate, true)
- compare(control.checked, true)
+ compare(control.checked, false)
compare(control.checkState, Qt.PartiallyChecked)
verify(sequenceSpy.success)
// key: partial -> checked
- sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true, "checkState": Qt.PartiallyChecked }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false, "checkState": Qt.PartiallyChecked }],
"pressed",
- ["pressedChanged", { "pressed": false, "checked": true, "checkState": Qt.PartiallyChecked }],
+ ["pressedChanged", { "pressed": false, "checked": false, "checkState": Qt.PartiallyChecked }],
["checkStateChanged", { "pressed": false, "checked": true, "checkState": Qt.Checked }],
+ ["checkedChanged", { "pressed": false, "checked": true, "checkState": Qt.Checked }],
"released",
"clicked"]
keyClick(Qt.Key_Space)
@@ -441,20 +442,20 @@ TestCase {
sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false, "checkState": Qt.Unchecked }],
"pressed",
["pressedChanged", { "pressed": false, "checked": false, "checkState": Qt.Unchecked }],
- ["checkStateChanged", { "pressed": false, "checked": true, "checkState": Qt.PartiallyChecked }],
- ["checkedChanged", { "pressed": false, "checked": true, "checkState": Qt.PartiallyChecked }],
+ ["checkStateChanged", { "pressed": false, "checked": false, "checkState": Qt.PartiallyChecked }],
"released",
"clicked"]
keyClick(Qt.Key_Space)
- compare(control.checked, true)
+ compare(control.checked, false)
compare(control.checkState, Qt.PartiallyChecked)
verify(sequenceSpy.success)
// mouse: partial -> checked
- sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true, "checkState": Qt.PartiallyChecked }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false, "checkState": Qt.PartiallyChecked }],
"pressed",
- ["pressedChanged", { "pressed": false, "checked": true, "checkState": Qt.PartiallyChecked }],
+ ["pressedChanged", { "pressed": false, "checked": false, "checkState": Qt.PartiallyChecked }],
["checkStateChanged", { "pressed": false, "checked": true, "checkState": Qt.Checked }],
+ ["checkedChanged", { "pressed": false, "checked": true, "checkState": Qt.Checked }],
"released",
"clicked"]
mouseClick(control)
@@ -479,12 +480,11 @@ TestCase {
sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false, "checkState": Qt.Unchecked }],
"pressed",
["pressedChanged", { "pressed": false, "checked": false, "checkState": Qt.Unchecked }],
- ["checkStateChanged", { "pressed": false, "checked": true, "checkState": Qt.PartiallyChecked }],
- ["checkedChanged", { "pressed": false, "checked": true, "checkState": Qt.PartiallyChecked }],
+ ["checkStateChanged", { "pressed": false, "checked": false, "checkState": Qt.PartiallyChecked }],
"released",
"clicked"]
mouseClick(control)
- compare(control.checked, true)
+ compare(control.checked, false)
compare(control.checkState, Qt.PartiallyChecked)
verify(sequenceSpy.success)
}
@@ -494,4 +494,51 @@ TestCase {
verify(control)
compare(control.baselineOffset, control.contentItem.y + control.contentItem.baselineOffset)
}
+
+ Component {
+ id: nextCheckStateBox
+ CheckBox {
+ tristate: true
+ nextCheckState: function() {
+ if (checkState === Qt.Checked)
+ return Qt.Unchecked
+ else
+ return Qt.Checked
+ }
+ }
+ }
+
+ function test_nextCheckState_data() {
+ return [
+ { tag: "unchecked", checkState: Qt.Unchecked, expectedState: Qt.Checked },
+ { tag: "partially-checked", checkState: Qt.PartiallyChecked, expectedState: Qt.Checked },
+ { tag: "checked", checkState: Qt.Checked, expectedState: Qt.Unchecked }
+ ]
+ }
+
+ function test_nextCheckState(data) {
+ var control = createTemporaryObject(nextCheckStateBox, testCase)
+ verify(control)
+
+ // mouse
+ control.checkState = data.checkState
+ compare(control.checkState, data.checkState)
+ mouseClick(control)
+ compare(control.checkState, data.expectedState)
+
+ // touch
+ control.checkState = data.checkState
+ compare(control.checkState, data.checkState)
+ var touch = touchEvent(control)
+ touch.press(0, control).commit().release(0, control).commit()
+ compare(control.checkState, data.expectedState)
+
+ // keyboard
+ control.forceActiveFocus()
+ tryCompare(control, "activeFocus", true)
+ control.checkState = data.checkState
+ compare(control.checkState, data.checkState)
+ keyClick(Qt.Key_Space)
+ compare(control.checkState, data.expectedState)
+ }
}
diff --git a/tests/auto/controls/data/tst_checkdelegate.qml b/tests/auto/controls/data/tst_checkdelegate.qml
index 9f92b4dc..72b45251 100644
--- a/tests/auto/controls/data/tst_checkdelegate.qml
+++ b/tests/auto/controls/data/tst_checkdelegate.qml
@@ -170,4 +170,51 @@ TestCase {
break;
}
}
+
+ Component {
+ id: nextCheckStateDelegate
+ CheckDelegate {
+ tristate: true
+ nextCheckState: function() {
+ if (checkState === Qt.Checked)
+ return Qt.Unchecked
+ else
+ return Qt.Checked
+ }
+ }
+ }
+
+ function test_nextCheckState_data() {
+ return [
+ { tag: "unchecked", checkState: Qt.Unchecked, expectedState: Qt.Checked },
+ { tag: "partially-checked", checkState: Qt.PartiallyChecked, expectedState: Qt.Checked },
+ { tag: "checked", checkState: Qt.Checked, expectedState: Qt.Unchecked }
+ ]
+ }
+
+ function test_nextCheckState(data) {
+ var control = createTemporaryObject(nextCheckStateDelegate, testCase)
+ verify(control)
+
+ // mouse
+ control.checkState = data.checkState
+ compare(control.checkState, data.checkState)
+ mouseClick(control)
+ compare(control.checkState, data.expectedState)
+
+ // touch
+ control.checkState = data.checkState
+ compare(control.checkState, data.checkState)
+ var touch = touchEvent(control)
+ touch.press(0, control).commit().release(0, control).commit()
+ compare(control.checkState, data.expectedState)
+
+ // keyboard
+ control.forceActiveFocus()
+ tryCompare(control, "activeFocus", true)
+ control.checkState = data.checkState
+ compare(control.checkState, data.checkState)
+ keyClick(Qt.Key_Space)
+ compare(control.checkState, data.expectedState)
+ }
}
diff --git a/tests/auto/controls/data/tst_scrollbar.qml b/tests/auto/controls/data/tst_scrollbar.qml
index d515db7e..90fe9468 100644
--- a/tests/auto/controls/data/tst_scrollbar.qml
+++ b/tests/auto/controls/data/tst_scrollbar.qml
@@ -788,4 +788,52 @@ TestCase {
if (control.background)
tryCompare(control.background, "opacity", 0)
}
+
+ function test_minimumSize() {
+ var container = createTemporaryObject(flickable, testCase)
+ verify(container)
+ waitForRendering(container)
+
+ var vertical = scrollBar.createObject(container, {minimumSize: 0.1})
+ container.ScrollBar.vertical = vertical
+
+ compare(container.visibleArea.heightRatio, 0.5)
+ compare(vertical.size, 0.5)
+ compare(vertical.visualSize, 0.5)
+ compare(vertical.contentItem.height, 0.5 * vertical.availableHeight)
+
+ container.contentHeight = 2000
+
+ compare(container.visibleArea.heightRatio, 0.05)
+ compare(vertical.size, 0.05)
+ compare(vertical.visualSize, 0.1)
+ compare(vertical.contentItem.height, 0.1 * vertical.availableHeight)
+
+ verify(container.atYBeginning)
+ compare(container.visibleArea.yPosition, 0.0)
+ compare(vertical.position, 0.0)
+ compare(vertical.visualPosition, 0.0)
+ compare(vertical.contentItem.y, vertical.topPadding)
+
+ container.contentY = 1900
+
+ verify(container.atYEnd)
+ compare(container.visibleArea.yPosition, 0.95)
+ compare(vertical.position, 0.95)
+ compare(vertical.visualPosition, 0.9)
+ compare(vertical.contentItem.y, vertical.topPadding + 0.9 * vertical.availableHeight)
+
+ container.contentHeight = 125
+
+ compare(container.visibleArea.heightRatio, 0.8)
+ compare(vertical.size, 0.8)
+ compare(vertical.visualSize, 0.8)
+ compare(vertical.contentItem.height, 0.8 * vertical.availableHeight)
+
+ verify(container.atYEnd)
+ compare(container.visibleArea.yPosition, 0.2)
+ compare(vertical.position, 0.2)
+ compare(vertical.visualPosition, 0.2)
+ compare(vertical.contentItem.y, vertical.topPadding + 0.2 * vertical.availableHeight)
+ }
}
diff --git a/tests/auto/controls/data/tst_scrollindicator.qml b/tests/auto/controls/data/tst_scrollindicator.qml
index a6275f91..9435ec3b 100644
--- a/tests/auto/controls/data/tst_scrollindicator.qml
+++ b/tests/auto/controls/data/tst_scrollindicator.qml
@@ -258,4 +258,52 @@ TestCase {
touch.release(0, control).commit()
verify(!ma.pressed)
}
+
+ function test_minimumSize() {
+ var container = createTemporaryObject(flickable, testCase)
+ verify(container)
+ waitForRendering(container)
+
+ var vertical = scrollIndicator.createObject(container, {minimumSize: 0.1})
+ container.ScrollIndicator.vertical = vertical
+
+ compare(container.visibleArea.heightRatio, 0.5)
+ compare(vertical.size, 0.5)
+ compare(vertical.visualSize, 0.5)
+ compare(vertical.contentItem.height, 0.5 * vertical.availableHeight)
+
+ container.contentHeight = 2000
+
+ compare(container.visibleArea.heightRatio, 0.05)
+ compare(vertical.size, 0.05)
+ compare(vertical.visualSize, 0.1)
+ compare(vertical.contentItem.height, 0.1 * vertical.availableHeight)
+
+ verify(container.atYBeginning)
+ compare(container.visibleArea.yPosition, 0.0)
+ compare(vertical.position, 0.0)
+ compare(vertical.visualPosition, 0.0)
+ compare(vertical.contentItem.y, vertical.topPadding)
+
+ container.contentY = 1900
+
+ verify(container.atYEnd)
+ compare(container.visibleArea.yPosition, 0.95)
+ compare(vertical.position, 0.95)
+ compare(vertical.visualPosition, 0.9)
+ compare(vertical.contentItem.y, vertical.topPadding + 0.9 * vertical.availableHeight)
+
+ container.contentHeight = 125
+
+ compare(container.visibleArea.heightRatio, 0.8)
+ compare(vertical.size, 0.8)
+ compare(vertical.visualSize, 0.8)
+ compare(vertical.contentItem.height, 0.8 * vertical.availableHeight)
+
+ verify(container.atYEnd)
+ compare(container.visibleArea.yPosition, 0.2)
+ compare(vertical.position, 0.2)
+ compare(vertical.visualPosition, 0.2)
+ compare(vertical.contentItem.y, vertical.topPadding + 0.2 * vertical.availableHeight)
+ }
}
diff --git a/tests/auto/controls/data/tst_spinbox.qml b/tests/auto/controls/data/tst_spinbox.qml
index 5a3b1f29..9568da1a 100644
--- a/tests/auto/controls/data/tst_spinbox.qml
+++ b/tests/auto/controls/data/tst_spinbox.qml
@@ -570,4 +570,48 @@ TestCase {
verify(control)
compare(control.value, 1000)
}
+
+ Component {
+ id: sizeBox
+ SpinBox {
+ from: 0
+ to: items.length - 1
+
+ property var items: ["Small", "Medium", "Large"]
+
+ validator: RegExpValidator {
+ regExp: new RegExp("(Small|Medium|Large)", "i")
+ }
+
+ textFromValue: function(value) {
+ return items[value];
+ }
+
+ valueFromText: function(text) {
+ for (var i = 0; i < items.length; ++i) {
+ if (items[i].toLowerCase().indexOf(text.toLowerCase()) === 0)
+ return i
+ }
+ return sb.value
+ }
+ }
+ }
+
+ function test_textFromValue_data() {
+ return [
+ { tag: "default", component: spinBox, values: [0, 10, 99], displayTexts: ["0", "10", "99"] },
+ { tag: "custom", component: sizeBox, values: [0, 1, 2], displayTexts: ["Small", "Medium", "Large"] }
+ ]
+ }
+
+ function test_textFromValue(data) {
+ var control = createTemporaryObject(data.component, testCase)
+ verify(control)
+
+ for (var i = 0; i < data.values.length; ++i) {
+ control.value = data.values[i]
+ compare(control.value, data.values[i])
+ compare(control.displayText, data.displayTexts[i])
+ }
+ }
}
diff --git a/tests/manual/testbench/fonts/LICENSE.txt b/tests/manual/testbench/fonts/LICENSE.txt
index 8fa3da36..8fa3da36 100755..100644
--- a/tests/manual/testbench/fonts/LICENSE.txt
+++ b/tests/manual/testbench/fonts/LICENSE.txt
diff --git a/tests/manual/testbench/fonts/fontawesome.ttf b/tests/manual/testbench/fonts/fontawesome.ttf
index 49b6c5da..49b6c5da 100755..100644
--- a/tests/manual/testbench/fonts/fontawesome.ttf
+++ b/tests/manual/testbench/fonts/fontawesome.ttf
Binary files differ
diff --git a/tests/tests.pro b/tests/tests.pro
index e98339ef..0bf4ae1f 100644
--- a/tests/tests.pro
+++ b/tests/tests.pro
@@ -1,4 +1,4 @@
TEMPLATE = subdirs
SUBDIRS += \
auto \
- benchmarks
+# benchmarks