From c04eb4444d3e7990ed41896c0937d32b4e24c9fa Mon Sep 17 00:00:00 2001 From: Mahmoud Badri Date: Wed, 27 Mar 2024 19:02:50 +0200 Subject: QmlDesigner: Use ExamplesModelV2 V2 adds minQDSVersion property for model items Change-Id: I27d36428f73b27b1d52d429e23654d094d6ff86d Reviewed-by: Reviewed-by: Thomas Hartmann Reviewed-by: Qt CI Patch Build Bot --- src/plugins/studiowelcome/studiowelcomeplugin.cpp | 31 +++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'src/plugins/studiowelcome/studiowelcomeplugin.cpp') 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 exampleVerInts; + QList 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(); -- cgit v1.2.3