diff options
-rw-r--r-- | src/controls/qquickstyle.cpp | 21 | ||||
-rw-r--r-- | src/controls/qquickstyle_p.h | 2 |
2 files changed, 8 insertions, 15 deletions
diff --git a/src/controls/qquickstyle.cpp b/src/controls/qquickstyle.cpp index c38950d8..76cb24cc 100644 --- a/src/controls/qquickstyle.cpp +++ b/src/controls/qquickstyle.cpp @@ -145,14 +145,20 @@ static QList<QQuickStyle *> findChildStyles(const QMetaObject *type, QObject *ob QQuickStyle::QQuickStyle(QObject *parent) : QObject(parent) { - QQuickItem *item = parentItem(); + QQuickItem *item = qobject_cast<QQuickItem *>(parent); + if (!item) { + QQuickPopup *popup = qobject_cast<QQuickPopup *>(parent); + if (popup) + item = popup->popupItem(); + } + if (item) QQuickItemPrivate::get(item)->addItemChangeListener(this, QQuickItemPrivate::Parent); } QQuickStyle::~QQuickStyle() { - QQuickItem *item = parentItem(); + QQuickItem *item = qobject_cast<QQuickItem *>(parent()); if (item) QQuickItemPrivate::get(item)->removeItemChangeListener(this, QQuickItemPrivate::Parent); @@ -174,17 +180,6 @@ QSharedPointer<QSettings> QQuickStyle::settings(const QString &group) return QSharedPointer<QSettings>(); } -QQuickItem *QQuickStyle::parentItem() const -{ - QQuickItem *item = qobject_cast<QQuickItem *>(parent()); - if (!item) { - QQuickPopup *popup = qobject_cast<QQuickPopup *>(parent()); - if (popup) - item = popup->popupItem(); - } - return item; -} - QList<QQuickStyle *> QQuickStyle::childStyles() const { return m_childStyles; diff --git a/src/controls/qquickstyle_p.h b/src/controls/qquickstyle_p.h index c5bfed0f..02ee667a 100644 --- a/src/controls/qquickstyle_p.h +++ b/src/controls/qquickstyle_p.h @@ -72,8 +72,6 @@ public: protected: void init(); - QQuickItem *parentItem() const; - QList<QQuickStyle *> childStyles() const; QQuickStyle *parentStyle() const; |