diff options
author | Robert Griebl <robert.griebl@qt.io> | 2022-05-13 22:42:08 +0200 |
---|---|---|
committer | Robert Griebl <robert.griebl@qt.io> | 2022-07-01 12:41:23 +0000 |
commit | 4c845c092c550d118d7ca3a4ca863aa94ec78882 (patch) | |
tree | 1aa7f8f1ac8a0a487b7082bfea1b0c26d53f4609 /plugins/style | |
parent | df878f3935fe28dd3d7253b9fa59d65db331eed0 (diff) |
Port to Qt 6.2
- Build is warning free on Linux
- Still using qmake
- Custom fragmenShaders in the cluster are not ported yet
- Qt 3D models are rendered, but the Studio 3D integration is untested
Change-Id: I0e410a932d6461ba29e7c945cb5e9750d6df8964
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
Reviewed-by: Bramastyo Harimukti Santoso <bram.harimukti@gmail.com>
Diffstat (limited to 'plugins/style')
-rw-r--r-- | plugins/style/Style.cpp | 1 | ||||
-rw-r--r-- | plugins/style/Style.h | 2 | ||||
-rw-r--r-- | plugins/style/StyleData.h | 2 | ||||
-rw-r--r-- | plugins/style/StyleDefaults.cpp | 22 | ||||
-rw-r--r-- | plugins/style/StyleDefaults.h | 4 | ||||
-rw-r--r-- | plugins/style/style.pro | 2 |
6 files changed, 29 insertions, 4 deletions
diff --git a/plugins/style/Style.cpp b/plugins/style/Style.cpp index 4a6d44a1..c5c4f937 100644 --- a/plugins/style/Style.cpp +++ b/plugins/style/Style.cpp @@ -51,6 +51,7 @@ Style::~Style() Style *Style::qmlAttachedProperties(QObject *object) { + StyleDefaults::setEngine(qmlEngine(object)); return new Style(object); } diff --git a/plugins/style/Style.h b/plugins/style/Style.h index 32ed108c..c3f5ca55 100644 --- a/plugins/style/Style.h +++ b/plugins/style/Style.h @@ -33,7 +33,7 @@ #include "StyleData.h" -#include <QtQuickControls2/private/qquickattachedobject_p.h> +#include <QtQuickControls2Impl/private/qquickattachedobject_p.h> #include <QJSValue> class Style : public QQuickAttachedObject diff --git a/plugins/style/StyleData.h b/plugins/style/StyleData.h index 177a67a3..db0f3de5 100644 --- a/plugins/style/StyleData.h +++ b/plugins/style/StyleData.h @@ -4,7 +4,7 @@ ** Copyright (C) 2018 Pelagicore AG ** Contact: https://www.qt.io/licensing/ ** -** This file is part of the Neptune 3 IVI UI. +** This file is part of the Neptune 3 UI. ** ** $QT_BEGIN_LICENSE:GPL-QTAS$ ** Commercial License Usage diff --git a/plugins/style/StyleDefaults.cpp b/plugins/style/StyleDefaults.cpp index 3370d3c2..8385eca5 100644 --- a/plugins/style/StyleDefaults.cpp +++ b/plugins/style/StyleDefaults.cpp @@ -33,6 +33,7 @@ #include <QDebug> #include <QDir> #include <QQuickStyle> +#include <QQmlEngine> #define CHECK_KEY(key) \ if (!settings.contains(key)) { \ @@ -49,6 +50,13 @@ variable = settings.value(key).toReal(); StyleDefaults *StyleDefaults::m_instance = nullptr; +QQmlEngine *StyleDefaults::m_engine = nullptr; + +void StyleDefaults::setEngine(QQmlEngine *e) +{ + if (!m_engine && e) + m_engine = e; +} StyleDefaults *StyleDefaults::instance() { @@ -62,7 +70,19 @@ StyleDefaults::StyleDefaults() { const char *confFileName = "style.conf"; - QDir chosenStyleDir(QDir(QQuickStyle::path()).absoluteFilePath(QQuickStyle::name())); + QDir chosenStyleDir = QStringLiteral("/does-not-exist0000000000000000"); + + Q_ASSERT(m_engine); + const QString name = QQuickStyle::name(); + const auto paths = m_engine->importPathList(); + + for (const auto &path : paths) { + QDir d(path); + if (d.cd(name)) { + chosenStyleDir = d; + break; + } + } if (!chosenStyleDir.exists()) { qCritical() << "Style: directory for the chosen style does not exist:" << chosenStyleDir.absolutePath(); diff --git a/plugins/style/StyleDefaults.h b/plugins/style/StyleDefaults.h index c14972d9..3c922944 100644 --- a/plugins/style/StyleDefaults.h +++ b/plugins/style/StyleDefaults.h @@ -35,9 +35,12 @@ #include <QSettings> +QT_FORWARD_DECLARE_CLASS(QQmlEngine) + class StyleDefaults { public: + static void setEngine(QQmlEngine *e); static StyleDefaults *instance(); const StyleData &data() const { return m_data; } @@ -56,4 +59,5 @@ private: QString m_imagePath; static StyleDefaults *m_instance; + static QQmlEngine *m_engine; }; diff --git a/plugins/style/style.pro b/plugins/style/style.pro index ef2c04ce..5ac94e0f 100644 --- a/plugins/style/style.pro +++ b/plugins/style/style.pro @@ -1,7 +1,7 @@ TEMPLATE = lib CONFIG += qt plugin c++11 no_private_qt_headers_warning QT += qml quick -QT += core-private gui-private qml-private quick-private quickcontrols2-private +QT += core-private gui-private qml-private quick-private quickcontrols2-private quickcontrols2impl-private SOURCES += StylePlugin.cpp Style.cpp StyleDefaults.cpp HEADERS += Style.h StyleDefaults.h |