summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2018-07-25 14:43:17 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2018-07-25 15:08:18 +0000
commitcaf3b6c291d3659d9fbc083ccf26fa178a3d38dc (patch)
tree28c48183143846f96ff7911db77029719430962f /src
parentab770ff7952b0c2236021ecb6591492819b3bf46 (diff)
Qt Designer: Simplify the form version checking code
Replace parsing by QVersionNumber. Change-Id: I793a30f7d5746ea3f2644be94a2a57fbfb0f2769 Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/designer/src/lib/uilib/formbuilderextra.cpp22
1 files changed, 5 insertions, 17 deletions
diff --git a/src/designer/src/lib/uilib/formbuilderextra.cpp b/src/designer/src/lib/uilib/formbuilderextra.cpp
index 66609737b..7025ee479 100644
--- a/src/designer/src/lib/uilib/formbuilderextra.cpp
+++ b/src/designer/src/lib/uilib/formbuilderextra.cpp
@@ -63,6 +63,7 @@
#include <QtCore/qtextstream.h>
#include <QtCore/qstringlist.h>
#include <QtCore/qcoreapplication.h>
+#include <QtCore/qversionnumber.h>
#include <limits.h>
@@ -114,20 +115,6 @@ void QFormBuilderExtra::clear()
m_buttonGroups.clear();
}
-// Return UI file version from attribute 'version="4.0"'
-static QPair<int, int> uiVersion(const QString &attr)
-{
- const QVector<QStringRef> versions = attr.splitRef(QLatin1Char('.'), QString::SkipEmptyParts);
- if (versions.size() >= 2) {
- bool okMajor, okMinor;
- const int majorVersion = versions.at(0).toInt(&okMajor);
- const int minorVersion = versions.at(1).toInt(&okMinor);
- if (okMajor && okMinor)
- return QPair<int, int>(majorVersion, minorVersion);
- }
- return QPair<int, int>(-1, -1);
-}
-
static inline QString msgXmlError(const QXmlStreamReader &reader)
{
return QCoreApplication::translate("QAbstractFormBuilder",
@@ -154,12 +141,13 @@ static bool inline readUiAttributes(QXmlStreamReader &reader, const QString &lan
const QString languageAttribute = QStringLiteral("language");
const QXmlStreamAttributes attributes = reader.attributes();
if (attributes.hasAttribute(versionAttribute)) {
- const QString versionString = attributes.value(versionAttribute).toString();
- if (uiVersion(versionString).first < 4) {
+ const QVersionNumber version =
+ QVersionNumber::fromString(attributes.value(versionAttribute));
+ if (version < QVersionNumber(4)) {
*errorMessage =
QCoreApplication::translate("QAbstractFormBuilder",
"This file was created using Designer from Qt-%1 and cannot be read.")
- .arg(versionString);
+ .arg(attributes.value(versionAttribute));
return false;
} // version error
} // has version