diff options
-rw-r--r-- | src/lib/corelib/api/languageinfo.cpp | 13 | ||||
-rw-r--r-- | src/lib/corelib/api/languageinfo.h | 13 | ||||
-rw-r--r-- | src/lib/corelib/jsextensions/utilitiesextension.cpp | 2 | ||||
-rw-r--r-- | src/lib/corelib/language/item.cpp | 3 | ||||
-rw-r--r-- | src/lib/corelib/language/itemreaderastvisitor.cpp | 3 | ||||
-rw-r--r-- | src/lib/corelib/language/moduleloader.cpp | 3 | ||||
-rw-r--r-- | src/lib/corelib/language/propertydeclaration.cpp | 3 | ||||
-rw-r--r-- | src/lib/corelib/tools/version.cpp | 6 | ||||
-rw-r--r-- | src/lib/corelib/tools/version.h | 2 | ||||
-rw-r--r-- | tests/auto/blackbox/tst_blackbox.cpp | 3 |
10 files changed, 23 insertions, 28 deletions
diff --git a/src/lib/corelib/api/languageinfo.cpp b/src/lib/corelib/api/languageinfo.cpp index df8d62ca0..8bae5243b 100644 --- a/src/lib/corelib/api/languageinfo.cpp +++ b/src/lib/corelib/api/languageinfo.cpp @@ -47,16 +47,12 @@ namespace qbs { -LanguageInfo::LanguageInfo() -{ -} - -QByteArray LanguageInfo::qmlTypeInfo() +std::string LanguageInfo::qmlTypeInfo() { const Internal::BuiltinDeclarations &builtins = Internal::BuiltinDeclarations::instance(); // Header: - QByteArray result; + std::string result; result.append("import QtQuick.tooling 1.0\n\n"); result.append("// This file describes the plugin-supplied types contained in the library.\n"); result.append("// It is used for QML tooling purposes only.\n\n"); @@ -126,9 +122,10 @@ QByteArray LanguageInfo::qmlTypeInfo() return result; } -QString LanguageInfo::qbsVersion() +Version LanguageInfo::qbsVersion() { - return Version::qbsVersion().toString(); + static const auto v = Version::fromString(QLatin1String(QBS_VERSION)); + return v; } } // namespace qbs diff --git a/src/lib/corelib/api/languageinfo.h b/src/lib/corelib/api/languageinfo.h index 22994b546..d0db7d5e8 100644 --- a/src/lib/corelib/api/languageinfo.h +++ b/src/lib/corelib/api/languageinfo.h @@ -42,18 +42,19 @@ #include "../tools/qbs_export.h" -#include <QtCore/qbytearray.h> +#include <string> namespace qbs { +class Version; + class QBS_EXPORT LanguageInfo { -public: - LanguageInfo(); + LanguageInfo() = delete; - QByteArray qmlTypeInfo(); - - static QString qbsVersion(); // TODO: Use QVersionNumber once we require Qt 5.6 +public: + static std::string qmlTypeInfo(); + static Version qbsVersion(); }; } // namespace qbs diff --git a/src/lib/corelib/jsextensions/utilitiesextension.cpp b/src/lib/corelib/jsextensions/utilitiesextension.cpp index e1d9d383f..c10707481 100644 --- a/src/lib/corelib/jsextensions/utilitiesextension.cpp +++ b/src/lib/corelib/jsextensions/utilitiesextension.cpp @@ -541,7 +541,7 @@ QScriptValue UtilitiesExtension::js_versionCompare(QScriptContext *context, QScr QScriptValue UtilitiesExtension::js_qmlTypeInfo(QScriptContext *context, QScriptEngine *engine) { Q_UNUSED(context); - return engine->toScriptValue(QString::fromUtf8(qbs::LanguageInfo().qmlTypeInfo())); + return engine->toScriptValue(QString::fromStdString(qbs::LanguageInfo::qmlTypeInfo())); } QScriptValue UtilitiesExtension::js_builtinExtensionNames(QScriptContext *context, diff --git a/src/lib/corelib/language/item.cpp b/src/lib/corelib/language/item.cpp index 31aa42a37..06dd63da7 100644 --- a/src/lib/corelib/language/item.cpp +++ b/src/lib/corelib/language/item.cpp @@ -46,6 +46,7 @@ #include "itempool.h" #include "value.h" +#include <api/languageinfo.h> #include <logging/logger.h> #include <logging/translator.h> #include <tools/error.h> @@ -262,7 +263,7 @@ void Item::setupForBuiltinType(Logger &logger) m_properties.insert(pd.name(), sourceValue); } else if (pd.isDeprecated()) { const DeprecationInfo &di = pd.deprecationInfo(); - if (di.removalVersion() <= Version::qbsVersion()) { + if (di.removalVersion() <= LanguageInfo::qbsVersion()) { QString message = Tr::tr("The property '%1' is no longer valid for %2 items. " "It was removed in qbs %3.") .arg(pd.name(), typeName(), di.removalVersion().toString()); diff --git a/src/lib/corelib/language/itemreaderastvisitor.cpp b/src/lib/corelib/language/itemreaderastvisitor.cpp index fc0496ccf..8560d1afd 100644 --- a/src/lib/corelib/language/itemreaderastvisitor.cpp +++ b/src/lib/corelib/language/itemreaderastvisitor.cpp @@ -49,6 +49,7 @@ #include "itemreadervisitorstate.h" #include "value.h" +#include <api/languageinfo.h> #include <jsextensions/jsextensions.h> #include <parser/qmljsast_p.h> #include <tools/codelocation.h> @@ -336,7 +337,7 @@ void ItemReaderASTVisitor::checkDeprecationStatus(ItemType itemType, const QStri const DeprecationInfo &di = itemDecl.deprecationInfo(); if (!di.isValid()) return; - if (di.removalVersion() <= Version::qbsVersion()) { + if (di.removalVersion() <= LanguageInfo::qbsVersion()) { QString message = Tr::tr("The item '%1' cannot be used anymore. " "It was removed in qbs %2.") .arg(itemName, di.removalVersion().toString()); diff --git a/src/lib/corelib/language/moduleloader.cpp b/src/lib/corelib/language/moduleloader.cpp index 9063ff894..0e3a8015d 100644 --- a/src/lib/corelib/language/moduleloader.cpp +++ b/src/lib/corelib/language/moduleloader.cpp @@ -50,6 +50,7 @@ #include "scriptengine.h" #include "value.h" +#include <api/languageinfo.h> #include <language/language.h> #include <logging/categories.h> #include <logging/logger.h> @@ -2728,7 +2729,7 @@ void ModuleLoader::setupBaseModulePrototype(Item *prototype) prototype->setProperty(QStringLiteral("libexecPath"), VariantValue::create(m_parameters.libexecPath())); - const Version qbsVersion = Version::qbsVersion(); + const Version qbsVersion = LanguageInfo::qbsVersion(); prototype->setProperty(QStringLiteral("versionMajor"), VariantValue::create(qbsVersion.majorVersion())); prototype->setProperty(QStringLiteral("versionMinor"), diff --git a/src/lib/corelib/language/propertydeclaration.cpp b/src/lib/corelib/language/propertydeclaration.cpp index 5125d3917..f0eff09d1 100644 --- a/src/lib/corelib/language/propertydeclaration.cpp +++ b/src/lib/corelib/language/propertydeclaration.cpp @@ -40,6 +40,7 @@ #include "propertydeclaration.h" #include "deprecationinfo.h" +#include <api/languageinfo.h> #include <tools/stringconstants.h> @@ -218,7 +219,7 @@ bool PropertyDeclaration::isDeprecated() const bool PropertyDeclaration::isExpired() const { - return isDeprecated() && deprecationInfo().removalVersion() <= Version::qbsVersion(); + return isDeprecated() && deprecationInfo().removalVersion() <= LanguageInfo::qbsVersion(); } const DeprecationInfo &PropertyDeclaration::deprecationInfo() const diff --git a/src/lib/corelib/tools/version.cpp b/src/lib/corelib/tools/version.cpp index f9c7a540f..264c44c29 100644 --- a/src/lib/corelib/tools/version.cpp +++ b/src/lib/corelib/tools/version.cpp @@ -115,12 +115,6 @@ QString Version::toString() const return s; } -const Version &Version::qbsVersion() -{ - static const Version v = fromString(QLatin1String(QBS_VERSION)); - return v; -} - int compare(const Version &lhs, const Version &rhs) { if (lhs.majorVersion() < rhs.majorVersion()) diff --git a/src/lib/corelib/tools/version.h b/src/lib/corelib/tools/version.h index 81bfe1f5b..4f5e46500 100644 --- a/src/lib/corelib/tools/version.h +++ b/src/lib/corelib/tools/version.h @@ -73,8 +73,6 @@ public: static Version fromString(const QString &versionString, bool buildNumberAllowed = false); QString toString() const; - static const Version &qbsVersion(); - private: int m_major; int m_minor; diff --git a/tests/auto/blackbox/tst_blackbox.cpp b/tests/auto/blackbox/tst_blackbox.cpp index f51267a6b..37c138d06 100644 --- a/tests/auto/blackbox/tst_blackbox.cpp +++ b/tests/auto/blackbox/tst_blackbox.cpp @@ -30,6 +30,7 @@ #include "../shared.h" +#include <api/languageinfo.h> #include <tools/hostosinfo.h> #include <tools/profile.h> #include <tools/qttools.h> @@ -5355,7 +5356,7 @@ void TestBlackbox::badInterpreter() void TestBlackbox::qbsVersion() { - const qbs::Version v = qbs::Version::qbsVersion(); + const auto v = qbs::LanguageInfo::qbsVersion(); QDir::setCurrent(testDataDir + QLatin1String("/qbsVersion")); QbsRunParameters params; params.arguments = QStringList() |