diff options
Diffstat (limited to 'src/quicktemplates2/qquickaction.cpp')
-rw-r--r-- | src/quicktemplates2/qquickaction.cpp | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/src/quicktemplates2/qquickaction.cpp b/src/quicktemplates2/qquickaction.cpp index e6b1cedb..fb6d7c3e 100644 --- a/src/quicktemplates2/qquickaction.cpp +++ b/src/quicktemplates2/qquickaction.cpp @@ -38,7 +38,6 @@ #include "qquickaction_p_p.h" #include "qquickactiongroup_p.h" #include "qquickshortcutcontext_p_p.h" -#include "qquickicon_p.h" #include <QtGui/qevent.h> #include <QtGui/private/qshortcutmap_p.h> @@ -176,7 +175,6 @@ QQuickActionPrivate::QQuickActionPrivate() enabled(true), checked(false), checkable(false), - icon(nullptr), defaultShortcutEntry(nullptr), group(nullptr) { @@ -381,16 +379,22 @@ void QQuickAction::setText(const QString &text) \include qquickicon.qdocinc grouped-properties */ -QQuickIcon *QQuickAction::icon() const +QQuickIcon QQuickAction::icon() const { - QQuickActionPrivate *d = const_cast<QQuickActionPrivate *>(d_func()); - if (!d->icon) { - d->icon = new QQuickIcon; - QQml_setParent_noEvent(d->icon, const_cast<QQuickAction *>(this)); - } + Q_D(const QQuickAction); return d->icon; } +void QQuickAction::setIcon(const QQuickIcon &icon) +{ + Q_D(QQuickAction); + if (d->icon == icon) + return; + + d->icon = icon; + emit iconChanged(icon); +} + /*! \qmlproperty bool QtQuick.Controls::Action::enabled |