diff options
author | Mitch Curtis <mitch.curtis@qt.io> | 2018-08-23 14:13:25 +0200 |
---|---|---|
committer | Mitch Curtis <mitch.curtis@qt.io> | 2018-08-23 16:05:23 +0000 |
commit | d19f782a887e4a8c87ceee42ad8405a0b12388d0 (patch) | |
tree | c54ea1f4d6085f8ab7e84709d80ba4648a62fda4 | |
parent | 6272ba6ced2d6dc5fdd651fce9e958ac7215ccd0 (diff) |
Fix enum warnings
QPlatformDialogHelper's meta-object is added to QQuickDialogButtonBox's
meta-object as a related meta object, and all of its enums are merged
into the same namespace by the QML engine. This produces a conflict with
the enum values of the ButtonLayout in QQuickDialogButtonBox, which is
a duplicate of the one that's already pulled in.
Fixes: QTBUG-70141
Task-number: QTBUG-70141
Change-Id: Ib33dc8ddbe8aa80d03183eb23861658c9e978f04
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
-rw-r--r-- | src/quicktemplates2/qquickdialogbuttonbox.cpp | 8 | ||||
-rw-r--r-- | src/quicktemplates2/qquickdialogbuttonbox_p.h | 19 | ||||
-rw-r--r-- | src/quicktemplates2/qquickdialogbuttonbox_p_p.h | 2 |
3 files changed, 9 insertions, 20 deletions
diff --git a/src/quicktemplates2/qquickdialogbuttonbox.cpp b/src/quicktemplates2/qquickdialogbuttonbox.cpp index 31b2e646..03f5f8e8 100644 --- a/src/quicktemplates2/qquickdialogbuttonbox.cpp +++ b/src/quicktemplates2/qquickdialogbuttonbox.cpp @@ -192,9 +192,9 @@ QT_BEGIN_NAMESPACE \sa accepted(), rejected(), helpRequested() */ -static QQuickDialogButtonBox::ButtonLayout platformButtonLayout() +static QPlatformDialogHelper::ButtonLayout platformButtonLayout() { - return QGuiApplicationPrivate::platformTheme()->themeHint(QPlatformTheme::DialogButtonBoxLayout).value<QQuickDialogButtonBox::ButtonLayout>(); + return QGuiApplicationPrivate::platformTheme()->themeHint(QPlatformTheme::DialogButtonBoxLayout).value<QPlatformDialogHelper::ButtonLayout>(); } void QQuickDialogButtonBoxPrivate::itemImplicitWidthChanged(QQuickItem *item) @@ -653,13 +653,13 @@ QQuickDialogButtonBoxAttached *QQuickDialogButtonBox::qmlAttachedProperties(QObj \value DialogButtonBox.GnomeLayout Use a policy appropriate for applications on GNOME. \value DialogButtonBox.AndroidLayout Use a policy appropriate for applications on Android. */ -QQuickDialogButtonBox::ButtonLayout QQuickDialogButtonBox::buttonLayout() const +QPlatformDialogHelper::ButtonLayout QQuickDialogButtonBox::buttonLayout() const { Q_D(const QQuickDialogButtonBox); return d->buttonLayout; } -void QQuickDialogButtonBox::setButtonLayout(ButtonLayout layout) +void QQuickDialogButtonBox::setButtonLayout(QPlatformDialogHelper::ButtonLayout layout) { Q_D(QQuickDialogButtonBox); if (d->buttonLayout == layout) diff --git a/src/quicktemplates2/qquickdialogbuttonbox_p.h b/src/quicktemplates2/qquickdialogbuttonbox_p.h index df302e54..51ae473f 100644 --- a/src/quicktemplates2/qquickdialogbuttonbox_p.h +++ b/src/quicktemplates2/qquickdialogbuttonbox_p.h @@ -67,7 +67,7 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickDialogButtonBox : public QQuickCont Q_PROPERTY(QPlatformDialogHelper::StandardButtons standardButtons READ standardButtons WRITE setStandardButtons NOTIFY standardButtonsChanged FINAL) Q_PROPERTY(QQmlComponent *delegate READ delegate WRITE setDelegate NOTIFY delegateChanged FINAL) // 2.5 (Qt 5.12) - Q_PROPERTY(ButtonLayout buttonLayout READ buttonLayout WRITE setButtonLayout RESET resetButtonLayout NOTIFY buttonLayoutChanged FINAL REVISION 5) + Q_PROPERTY(QPlatformDialogHelper::ButtonLayout buttonLayout READ buttonLayout WRITE setButtonLayout RESET resetButtonLayout NOTIFY buttonLayoutChanged FINAL REVISION 5) Q_FLAGS(QPlatformDialogHelper::StandardButtons) public: @@ -97,21 +97,10 @@ public: static QQuickDialogButtonBoxAttached *qmlAttachedProperties(QObject *object); // 2.5 (Qt 5.12) + Q_ENUMS(QPlatformDialogHelper::ButtonLayout) - // ### TODO: use Q_ENUMS(QPlatformDialogHelper::ButtonLayout) - enum ButtonLayout { - UnknownLayout = -1, - WinLayout, - MacLayout, - KdeLayout, - GnomeLayout, - MacModelessLayout, - AndroidLayout - }; - Q_ENUM(ButtonLayout) - - ButtonLayout buttonLayout() const; - void setButtonLayout(ButtonLayout layout); + QPlatformDialogHelper::ButtonLayout buttonLayout() const; + void setButtonLayout(QPlatformDialogHelper::ButtonLayout layout); void resetButtonLayout(); Q_SIGNALS: diff --git a/src/quicktemplates2/qquickdialogbuttonbox_p_p.h b/src/quicktemplates2/qquickdialogbuttonbox_p_p.h index 5d64918a..66386911 100644 --- a/src/quicktemplates2/qquickdialogbuttonbox_p_p.h +++ b/src/quicktemplates2/qquickdialogbuttonbox_p_p.h @@ -81,7 +81,7 @@ public: Qt::Alignment alignment = 0; QQuickDialogButtonBox::Position position = QQuickDialogButtonBox::Footer; QPlatformDialogHelper::StandardButtons standardButtons = QPlatformDialogHelper::NoButton; - QQuickDialogButtonBox::ButtonLayout buttonLayout = QQuickDialogButtonBox::UnknownLayout; + QPlatformDialogHelper::ButtonLayout buttonLayout = QPlatformDialogHelper::UnknownLayout; QQmlComponent *delegate = nullptr; }; |