diff options
Diffstat (limited to 'src/imports/controls')
-rw-r--r-- | src/imports/controls/MenuSeparator.qml | 2 | ||||
-rw-r--r-- | src/imports/controls/RoundButton.qml | 4 | ||||
-rw-r--r-- | src/imports/controls/ToolSeparator.qml | 2 | ||||
-rw-r--r-- | src/imports/controls/controls.pri | 104 | ||||
-rw-r--r-- | src/imports/controls/controls.pro | 6 | ||||
-rw-r--r-- | src/imports/controls/material/DialogButtonBox.qml | 5 | ||||
-rw-r--r-- | src/imports/controls/material/ToolSeparator.qml | 2 | ||||
-rw-r--r-- | src/imports/controls/material/material.pro | 7 | ||||
-rw-r--r-- | src/imports/controls/material/qquickmaterialtheme.cpp | 18 | ||||
-rw-r--r-- | src/imports/controls/material/qquickmaterialtheme_p.h | 3 | ||||
-rw-r--r-- | src/imports/controls/universal/RadioDelegate.qml | 2 | ||||
-rw-r--r-- | src/imports/controls/universal/ToolSeparator.qml | 2 | ||||
-rw-r--r-- | src/imports/controls/universal/universal.pro | 7 |
13 files changed, 88 insertions, 76 deletions
diff --git a/src/imports/controls/MenuSeparator.qml b/src/imports/controls/MenuSeparator.qml index e68d9bea..f3916673 100644 --- a/src/imports/controls/MenuSeparator.qml +++ b/src/imports/controls/MenuSeparator.qml @@ -49,11 +49,9 @@ T.MenuSeparator { topPadding: padding + 4 bottomPadding: padding + 4 - //! [contentItem] contentItem: Rectangle { implicitWidth: 188 implicitHeight: 1 color: Default.separatorColor } - //! [contentItem] } diff --git a/src/imports/controls/RoundButton.qml b/src/imports/controls/RoundButton.qml index f6304961..747988d8 100644 --- a/src/imports/controls/RoundButton.qml +++ b/src/imports/controls/RoundButton.qml @@ -55,7 +55,6 @@ T.RoundButton { icon.height: 24 icon.color: enabled ? undefined : Default.textDisabledLightColor - //! [contentItem] contentItem: IconLabel { spacing: control.spacing mirrored: control.mirrored @@ -69,9 +68,7 @@ T.RoundButton { : control.down ? Default.textDarkColor : Default.textColor, enabled || control.highlighted || control.checked ? 1 : 0.3) } - //! [contentItem] - //! [background] background: Rectangle { implicitWidth: 40 implicitHeight: 40 @@ -84,5 +81,4 @@ T.RoundButton { border.color: Default.focusColor border.width: control.visualFocus ? 2 : 0 } - //! [background] } diff --git a/src/imports/controls/ToolSeparator.qml b/src/imports/controls/ToolSeparator.qml index 9b34363d..b1d5dd7b 100644 --- a/src/imports/controls/ToolSeparator.qml +++ b/src/imports/controls/ToolSeparator.qml @@ -49,11 +49,9 @@ T.ToolSeparator { topPadding: vertical ? 2 : 6 bottomPadding: vertical ? 2 : 6 - //! [contentItem] contentItem: Rectangle { implicitWidth: vertical ? 1 : 30 implicitHeight: vertical ? 30 : 1 color: Default.separatorColor } - //! [contentItem] } diff --git a/src/imports/controls/controls.pri b/src/imports/controls/controls.pri index 5aa56418..41347aa7 100644 --- a/src/imports/controls/controls.pri +++ b/src/imports/controls/controls.pri @@ -11,57 +11,57 @@ SOURCES += \ $$PWD/qquickdefaultstyle.cpp QML_CONTROLS = \ - AbstractButton.qml \ - ApplicationWindow.qml \ - BusyIndicator.qml \ - Button.qml \ - CheckBox.qml \ - CheckDelegate.qml \ - CheckIndicator.qml \ - ComboBox.qml \ - Container.qml \ - Control.qml \ - DelayButton.qml \ - Dial.qml \ - Dialog.qml \ - DialogButtonBox.qml \ - Drawer.qml \ - Frame.qml \ - GroupBox.qml \ - ItemDelegate.qml \ - Label.qml \ - Menu.qml \ - MenuItem.qml \ - MenuSeparator.qml \ - Page.qml \ - PageIndicator.qml \ - Pane.qml \ - Popup.qml \ - ProgressBar.qml \ - RadioButton.qml \ - RadioDelegate.qml \ - RadioIndicator.qml \ - RangeSlider.qml \ - RoundButton.qml \ - ScrollBar.qml \ - ScrollIndicator.qml \ - ScrollView.qml \ - Slider.qml \ - SpinBox.qml \ - StackView.qml \ - SwipeDelegate.qml \ - Switch.qml \ - SwitchIndicator.qml \ - SwitchDelegate.qml \ - SwipeView.qml \ - TabBar.qml \ - TabButton.qml \ - TextArea.qml \ - TextField.qml \ - ToolBar.qml \ - ToolButton.qml \ - ToolSeparator.qml \ - ToolTip.qml \ - Tumbler.qml + $$PWD/AbstractButton.qml \ + $$PWD/ApplicationWindow.qml \ + $$PWD/BusyIndicator.qml \ + $$PWD/Button.qml \ + $$PWD/CheckBox.qml \ + $$PWD/CheckDelegate.qml \ + $$PWD/CheckIndicator.qml \ + $$PWD/ComboBox.qml \ + $$PWD/Container.qml \ + $$PWD/Control.qml \ + $$PWD/DelayButton.qml \ + $$PWD/Dial.qml \ + $$PWD/Dialog.qml \ + $$PWD/DialogButtonBox.qml \ + $$PWD/Drawer.qml \ + $$PWD/Frame.qml \ + $$PWD/GroupBox.qml \ + $$PWD/ItemDelegate.qml \ + $$PWD/Label.qml \ + $$PWD/Menu.qml \ + $$PWD/MenuItem.qml \ + $$PWD/MenuSeparator.qml \ + $$PWD/Page.qml \ + $$PWD/PageIndicator.qml \ + $$PWD/Pane.qml \ + $$PWD/Popup.qml \ + $$PWD/ProgressBar.qml \ + $$PWD/RadioButton.qml \ + $$PWD/RadioDelegate.qml \ + $$PWD/RadioIndicator.qml \ + $$PWD/RangeSlider.qml \ + $$PWD/RoundButton.qml \ + $$PWD/ScrollBar.qml \ + $$PWD/ScrollIndicator.qml \ + $$PWD/ScrollView.qml \ + $$PWD/Slider.qml \ + $$PWD/SpinBox.qml \ + $$PWD/StackView.qml \ + $$PWD/SwipeDelegate.qml \ + $$PWD/Switch.qml \ + $$PWD/SwitchIndicator.qml \ + $$PWD/SwitchDelegate.qml \ + $$PWD/SwipeView.qml \ + $$PWD/TabBar.qml \ + $$PWD/TabButton.qml \ + $$PWD/TextArea.qml \ + $$PWD/TextField.qml \ + $$PWD/ToolBar.qml \ + $$PWD/ToolButton.qml \ + $$PWD/ToolSeparator.qml \ + $$PWD/ToolTip.qml \ + $$PWD/Tumbler.qml !qtquickcompiler: QML_FILES += $$QML_CONTROLS diff --git a/src/imports/controls/controls.pro b/src/imports/controls/controls.pro index 309f103c..145b468c 100644 --- a/src/imports/controls/controls.pro +++ b/src/imports/controls/controls.pro @@ -7,8 +7,11 @@ QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2 DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII +include(controls.pri) + OTHER_FILES += \ - qmldir + qmldir \ + $$QML_CONTROLS SOURCES += \ $$PWD/qtquickcontrols2plugin.cpp @@ -16,7 +19,6 @@ SOURCES += \ RESOURCES += \ $$PWD/qtquickcontrols2plugin.qrc -include(controls.pri) !static: qtConfig(quick-designer): include(designer/designer.pri) include(doc/doc.pri) diff --git a/src/imports/controls/material/DialogButtonBox.qml b/src/imports/controls/material/DialogButtonBox.qml index 7f4c3606..f66ecda3 100644 --- a/src/imports/controls/material/DialogButtonBox.qml +++ b/src/imports/controls/material/DialogButtonBox.qml @@ -50,8 +50,8 @@ T.DialogButtonBox { spacing: 8 padding: 8 - topPadding: padding - 4 - bottomPadding: padding - 4 + topPadding: 2 + bottomPadding: 2 alignment: Qt.AlignRight Material.foreground: Material.accent @@ -73,6 +73,7 @@ T.DialogButtonBox { implicitHeight: 52 radius: 2 color: control.Material.dialogColor + // Rounded corners should be only at the top or at the bottom topPadding: control.position === T.DialogButtonBox.Footer ? -2 : 0 bottomPadding: control.position === T.DialogButtonBox.Header ? -2 : 0 clip: true diff --git a/src/imports/controls/material/ToolSeparator.qml b/src/imports/controls/material/ToolSeparator.qml index bdb2bc55..f8a5d9bb 100644 --- a/src/imports/controls/material/ToolSeparator.qml +++ b/src/imports/controls/material/ToolSeparator.qml @@ -49,11 +49,9 @@ T.ToolSeparator { topPadding: vertical ? 5 : 12 bottomPadding: vertical ? 5 : 12 - //! [contentItem] contentItem: Rectangle { implicitWidth: vertical ? 1 : 38 implicitHeight: vertical ? 38 : 1 color: control.Material.hintTextColor } - //! [contentItem] } diff --git a/src/imports/controls/material/material.pro b/src/imports/controls/material/material.pro index eb41cfb0..08d5e3ab 100644 --- a/src/imports/controls/material/material.pro +++ b/src/imports/controls/material/material.pro @@ -7,8 +7,11 @@ QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2 DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII +include(material.pri) + OTHER_FILES += \ - qmldir + qmldir \ + $$QML_FILES SOURCES += \ $$PWD/qtquickcontrols2materialstyleplugin.cpp @@ -16,8 +19,6 @@ SOURCES += \ RESOURCES += \ $$PWD/qtquickcontrols2materialstyleplugin.qrc -include(material.pri) - CONFIG += no_cxx_module load(qml_plugin) diff --git a/src/imports/controls/material/qquickmaterialtheme.cpp b/src/imports/controls/material/qquickmaterialtheme.cpp index 63def7a5..3ea41779 100644 --- a/src/imports/controls/material/qquickmaterialtheme.cpp +++ b/src/imports/controls/material/qquickmaterialtheme.cpp @@ -36,6 +36,7 @@ #include "qquickmaterialtheme_p.h" +#include <QtGui/qpa/qplatformdialoghelper.h> #include <QtGui/qfont.h> #include <QtGui/qfontinfo.h> @@ -105,4 +106,21 @@ const QFont *QQuickMaterialTheme::font(QPlatformTheme::Font type) const } } +QVariant QQuickMaterialTheme::themeHint(ThemeHint hint) const +{ + switch (hint) { + case QPlatformTheme::DialogButtonBoxLayout: + // https://material.io/guidelines/components/dialogs.html#dialogs-specs + // As per spec, affirmative actions are placed to the right, dismissive + // actions are placed directly to the left of affirmative actions. + // In the Android sources, there are additional type of actions - + // neutral, which are placed to the left. + // Rules for macOS seems to be the most suitable here and are also used + // in the Android QPA plugin. + return QVariant(QPlatformDialogHelper::MacLayout); + default: + return QQuickProxyTheme::themeHint(hint); + } +} + QT_END_NAMESPACE diff --git a/src/imports/controls/material/qquickmaterialtheme_p.h b/src/imports/controls/material/qquickmaterialtheme_p.h index 828ca83a..d505d4ff 100644 --- a/src/imports/controls/material/qquickmaterialtheme_p.h +++ b/src/imports/controls/material/qquickmaterialtheme_p.h @@ -48,6 +48,7 @@ // We mean it. // +#include <QtCore/qvariant.h> #include <QtGui/qfont.h> #include <QtQuickControls2/private/qquickproxytheme_p.h> @@ -60,6 +61,8 @@ public: const QFont *font(Font type = SystemFont) const override; + QVariant themeHint(ThemeHint hint) const override; + private: QFont systemFont; QFont buttonFont; diff --git a/src/imports/controls/universal/RadioDelegate.qml b/src/imports/controls/universal/RadioDelegate.qml index 17373e08..bc15f990 100644 --- a/src/imports/controls/universal/RadioDelegate.qml +++ b/src/imports/controls/universal/RadioDelegate.qml @@ -60,8 +60,6 @@ T.RadioDelegate { icon.height: 20 icon.color: enabled ? undefined : Color.transparent(Universal.foreground, 0.2) - property Item control - indicator: RadioIndicator { x: text ? (control.mirrored ? control.leftPadding : control.width - width - control.rightPadding) : control.leftPadding + (control.availableWidth - width) / 2 y: control.topPadding + (control.availableHeight - height) / 2 diff --git a/src/imports/controls/universal/ToolSeparator.qml b/src/imports/controls/universal/ToolSeparator.qml index bf82133a..965b9690 100644 --- a/src/imports/controls/universal/ToolSeparator.qml +++ b/src/imports/controls/universal/ToolSeparator.qml @@ -49,11 +49,9 @@ T.ToolSeparator { topPadding: vertical ? 12 : 16 bottomPadding: vertical ? 12 : 15 - //! [contentItem] contentItem: Rectangle { implicitWidth: vertical ? 1 : 20 implicitHeight: vertical ? 20 : 1 color: control.Universal.baseMediumLowColor } - //! [contentItem] } diff --git a/src/imports/controls/universal/universal.pro b/src/imports/controls/universal/universal.pro index cfbfdbfd..d9bae111 100644 --- a/src/imports/controls/universal/universal.pro +++ b/src/imports/controls/universal/universal.pro @@ -7,8 +7,11 @@ QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2 DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII +include(universal.pri) + OTHER_FILES += \ - qmldir + qmldir \ + $$QML_FILES SOURCES += \ $$PWD/qtquickcontrols2universalstyleplugin.cpp @@ -16,8 +19,6 @@ SOURCES += \ RESOURCES += \ $$PWD/qtquickcontrols2universalstyleplugin.qrc -include(universal.pri) - CONFIG += no_cxx_module load(qml_plugin) |