aboutsummaryrefslogtreecommitdiffstats
path: root/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'plugins')
-rw-r--r--plugins/sizes/Sizes.cpp15
-rw-r--r--plugins/sizes/Sizes.h19
-rw-r--r--plugins/style/Style.cpp14
-rw-r--r--plugins/style/Style.h20
4 files changed, 44 insertions, 24 deletions
diff --git a/plugins/sizes/Sizes.cpp b/plugins/sizes/Sizes.cpp
index 3a646b2b..d6fbc4b5 100644
--- a/plugins/sizes/Sizes.cpp
+++ b/plugins/sizes/Sizes.cpp
@@ -35,9 +35,6 @@
#include <QtGui/QGuiApplication>
#include <QQmlEngine>
-#include <QtQuickControls2/private/qquickstyle_p.h>
-
-
class StyleData {
public:
@@ -80,10 +77,10 @@ public:
static StyleData GlobalStyleData;
Sizes::Sizes(QObject *parent)
- : QQuickAttachedObject(parent)
+ : QQuickAttachedPropertyPropagator(parent)
, m_data(new StyleData(GlobalStyleData))
{
- init();
+ initialize();
}
Sizes::~Sizes()
@@ -130,13 +127,13 @@ int Sizes::fontSizeXXL() const
return qRound(m_data->fontSizeXXL * m_data->scale);
}
-void Sizes::init()
+void Sizes::initialize()
{
m_data.reset(new StyleData(GlobalStyleData));
- QQuickAttachedObject::init();
+ QQuickAttachedPropertyPropagator::initialize();
}
-void Sizes::attachedParentChange(QQuickAttachedObject *newParent, QQuickAttachedObject *oldParent)
+void Sizes::attachedParentChange(QQuickAttachedPropertyPropagator *newParent, QQuickAttachedPropertyPropagator *oldParent)
{
Q_UNUSED(oldParent)
Sizes* neptune = qobject_cast<Sizes *>(newParent);
@@ -181,7 +178,7 @@ void Sizes::setScale(qreal value)
void Sizes::propagateScale()
{
- for (QQuickAttachedObject *child : attachedChildren()) {
+ for (QQuickAttachedPropertyPropagator *child : attachedChildren()) {
Sizes* neptune = qobject_cast<Sizes *>(child);
if (neptune && !qFuzzyCompare(neptune->scale(), m_data->scale))
neptune->setScale(m_data->scale);
diff --git a/plugins/sizes/Sizes.h b/plugins/sizes/Sizes.h
index bc8af3c9..05c057bb 100644
--- a/plugins/sizes/Sizes.h
+++ b/plugins/sizes/Sizes.h
@@ -35,12 +35,23 @@
#include <QtCore/QSharedPointer>
#include <QtCore/QScopedPointer>
#include <QJSValue>
+#include <QQmlEngine>
-#include <QtQuickControls2Impl/private/qquickattachedobject_p.h>
+#if QT_VERSION < QT_VERSION_CHECK(6, 5, 0)
+# include <QtQuickControls2/private/qquickstyle_p.h>
+class QQuickAttachedPropertyPropagator : public QQuickAttachedObject
+{
+protected:
+ void initialize() { QQuickAttachedObject::init(); }
+};
+
+#else
+# include <QtQuickControls2/QQuickAttachedPropertyPropagator>
+#endif
class StyleData;
-class Sizes : public QQuickAttachedObject
+class Sizes : public QQuickAttachedPropertyPropagator
{
Q_OBJECT
@@ -96,7 +107,7 @@ public:
QJSValue dp() const;
protected:
- void init();
+ void initialize();
signals:
void scaleChanged();
@@ -105,7 +116,7 @@ private:
mutable QJSValue m_dp;
protected:
- void attachedParentChange(QQuickAttachedObject *newParent, QQuickAttachedObject *oldParent) override;
+ void attachedParentChange(QQuickAttachedPropertyPropagator *newParent, QQuickAttachedPropertyPropagator *oldParent) override;
void inheritStyle(const StyleData &data);
void propagateStyle(const StyleData &data);
void propagateScale();
diff --git a/plugins/style/Style.cpp b/plugins/style/Style.cpp
index c5c4f937..d25748ca 100644
--- a/plugins/style/Style.cpp
+++ b/plugins/style/Style.cpp
@@ -40,9 +40,9 @@
#include <QtQml/qqmlinfo.h>
Style::Style(QObject *parent)
- : QQuickAttachedObject(parent)
+ : QQuickAttachedPropertyPropagator(parent)
{
- init();
+ initialize();
}
Style::~Style()
@@ -55,15 +55,15 @@ Style *Style::qmlAttachedProperties(QObject *object)
return new Style(object);
}
-void Style::init()
+void Style::initialize()
{
m_theme = StyleDefaults::instance()->data().theme;
m_accentColor = StyleDefaults::instance()->dataFromTheme(m_theme).accentColor;
- QQuickAttachedObject::init();
+ QQuickAttachedPropertyPropagator::initialize();
}
-void Style::attachedParentChange(QQuickAttachedObject *newParent, QQuickAttachedObject *oldParent)
+void Style::attachedParentChange(QQuickAttachedPropertyPropagator *newParent, QQuickAttachedPropertyPropagator *oldParent)
{
Q_UNUSED(oldParent);
Style* parentStyle = qobject_cast<Style *>(newParent);
@@ -125,7 +125,7 @@ bool Style::supportsMultipleThemes() const
void Style::propagateAccentColor()
{
- for (QQuickAttachedObject *child : attachedChildren()) {
+ for (QQuickAttachedPropertyPropagator *child : attachedChildren()) {
Style* basicStyle = qobject_cast<Style *>(child);
if (basicStyle)
basicStyle->setAccentColor(m_accentColor);
@@ -134,7 +134,7 @@ void Style::propagateAccentColor()
void Style::propagateTheme()
{
- for (QQuickAttachedObject *child : attachedChildren()) {
+ for (QQuickAttachedPropertyPropagator *child : attachedChildren()) {
Style* basicStyle = qobject_cast<Style *>(child);
if (basicStyle)
basicStyle->setTheme(static_cast<Theme>(m_theme));
diff --git a/plugins/style/Style.h b/plugins/style/Style.h
index c3f5ca55..995abbeb 100644
--- a/plugins/style/Style.h
+++ b/plugins/style/Style.h
@@ -33,10 +33,22 @@
#include "StyleData.h"
-#include <QtQuickControls2Impl/private/qquickattachedobject_p.h>
#include <QJSValue>
+#include <QQmlEngine>
-class Style : public QQuickAttachedObject
+#if QT_VERSION < QT_VERSION_CHECK(6, 5, 0)
+# include <QtQuickControls2/private/qquickstyle_p.h>
+class QQuickAttachedPropertyPropagator : public QQuickAttachedObject
+{
+protected:
+ void initialize() { QQuickAttachedObject::init(); }
+};
+
+#else
+# include <QtQuickControls2/QQuickAttachedPropertyPropagator>
+#endif
+
+class Style : public QQuickAttachedPropertyPropagator
{
Q_OBJECT
Q_PROPERTY(Theme theme READ theme WRITE setTheme NOTIFY themeChanged FINAL)
@@ -120,8 +132,8 @@ public:
QJSValue image();
protected:
- void init();
- void attachedParentChange(QQuickAttachedObject *newParent, QQuickAttachedObject *oldParent) override;
+ void initialize();
+ void attachedParentChange(QQuickAttachedPropertyPropagator *newParent, QQuickAttachedPropertyPropagator *oldParent) override;
signals:
void accentColorChanged();