aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/studiowelcome/studiowelcomeplugin.cpp
diff options
context:
space:
mode:
authorMahmoud Badri <mahmoud.badri@qt.io>2024-03-27 19:02:50 +0200
committerMahmoud Badri <mahmoud.badri@qt.io>2024-03-28 09:18:39 +0000
commitc04eb4444d3e7990ed41896c0937d32b4e24c9fa (patch)
tree62622dfe1bb074b111107e382507fb8b1ea985ea /src/plugins/studiowelcome/studiowelcomeplugin.cpp
parentff4e33dc0a2224e35c969ef34879e6ef98d22aae (diff)
QmlDesigner: Use ExamplesModelV2
V2 adds minQDSVersion property for model items Change-Id: I27d36428f73b27b1d52d429e23654d094d6ff86d Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io> Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Diffstat (limited to 'src/plugins/studiowelcome/studiowelcomeplugin.cpp')
-rw-r--r--src/plugins/studiowelcome/studiowelcomeplugin.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/plugins/studiowelcome/studiowelcomeplugin.cpp b/src/plugins/studiowelcome/studiowelcomeplugin.cpp
index ac6a17de87..fe209b5fd0 100644
--- a/src/plugins/studiowelcome/studiowelcomeplugin.cpp
+++ b/src/plugins/studiowelcome/studiowelcomeplugin.cpp
@@ -333,6 +333,37 @@ public:
Core::EditorManager::openEditor(qmlFile);
}
+ Q_INVOKABLE bool exampleVersionOk(const QString &exampleVersion)
+ {
+ if (exampleVersion.isEmpty())
+ return true;
+
+ const QStringList exampleVersionParts = exampleVersion.split('.');
+ const QStringList qdsVersionParts = QCoreApplication::applicationVersion().split('.');
+
+ QList<int> exampleVerInts;
+ QList<int> qdsVerInts;
+ for (const QString &part : exampleVersionParts)
+ exampleVerInts.append(part.toInt());
+
+ for (const QString &part : qdsVersionParts)
+ qdsVerInts.append(part.toInt());
+
+ // pad zeros so both lists are same size
+ while (qdsVerInts.size() < exampleVerInts.size())
+ qdsVerInts.append(0);
+
+ while (exampleVerInts.size() < qdsVerInts.size())
+ exampleVerInts.append(0);
+
+ for (int i = 0; i < qdsVerInts.size(); ++i) {
+ if (exampleVerInts[i] < qdsVerInts[i])
+ return false;
+ }
+
+ return true;
+ }
+
public slots:
void resetProjects();
void delayedResetProjects();