summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJarek Kobus <jaroslaw.kobus@qt.io>2019-02-26 13:04:35 +0100
committerJarek Kobus <jaroslaw.kobus@qt.io>2019-03-01 10:43:05 +0000
commit32f5237cd79385681481ba37ecf7f0bcfaa5ab96 (patch)
tree6942a8e359284513f291285e6e27245b32dc41f9
parentcc7feade6095d08cee225294a3635229e34a6e1c (diff)
downloadqttools-32f5237cd79385681481ba37ecf7f0bcfaa5ab96.tar.gz
Use QVersionNumber for version instead of QString
Change-Id: Ib44d3965f45272f7b791f1d164b0901d170c239d Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
-rw-r--r--src/assistant/assistant/preferencesdialog.cpp27
-rw-r--r--src/assistant/assistant/preferencesdialog.h17
-rw-r--r--src/assistant/help/qcompressedhelpinfo.cpp7
-rw-r--r--src/assistant/help/qcompressedhelpinfo.h3
-rw-r--r--src/assistant/help/qhelpcollectionhandler.cpp24
-rw-r--r--src/assistant/help/qhelpcollectionhandler_p.h3
-rw-r--r--src/assistant/help/qhelpfilterdata.cpp7
-rw-r--r--src/assistant/help/qhelpfilterdata.h5
-rw-r--r--src/assistant/help/qhelpfilterengine.cpp6
-rw-r--r--src/assistant/help/qhelpfilterengine.h3
10 files changed, 67 insertions, 35 deletions
diff --git a/src/assistant/assistant/preferencesdialog.cpp b/src/assistant/assistant/preferencesdialog.cpp
index c9840627e..7955e08df 100644
--- a/src/assistant/assistant/preferencesdialog.cpp
+++ b/src/assistant/assistant/preferencesdialog.cpp
@@ -33,6 +33,7 @@
#include "helpenginewrapper.h"
#include "openpagesmanager.h"
+#include <QtCore/QVersionNumber>
#include <QtGui/QFontDatabase>
#include <QtWidgets/QMessageBox>
@@ -47,6 +48,22 @@
QT_BEGIN_NAMESPACE
+static QStringList versionsToStringList(const QList<QVersionNumber> &versions)
+{
+ QStringList versionList;
+ for (const QVersionNumber &version : versions)
+ versionList.append(version.isNull() ? QString() : version.toString());
+ return versionList;
+}
+
+static QList<QVersionNumber> stringListToVersions(const QStringList &versionList)
+{
+ QList<QVersionNumber> versions;
+ for (const QString &versionString : versionList)
+ versions.append(QVersionNumber::fromString(versionString));
+ return versions;
+}
+
PreferencesDialog::PreferencesDialog(QWidget *parent)
: QDialog(parent)
, m_appFontChanged(false)
@@ -231,8 +248,8 @@ void PreferencesDialog::updateCurrentFilter()
m_ui.componentWidget->setOptions(m_currentSetup.m_componentToNamespace.keys(),
m_currentSetup.m_filterToData.value(currentFilter).components());
- m_ui.versionWidget->setOptions(m_currentSetup.m_versionToNamespace.keys(),
- m_currentSetup.m_filterToData.value(currentFilter).versions());
+ m_ui.versionWidget->setOptions(versionsToStringList(m_currentSetup.m_versionToNamespace.keys()),
+ versionsToStringList(m_currentSetup.m_filterToData.value(currentFilter).versions()));
}
void PreferencesDialog::updateDocumentationPage()
@@ -274,7 +291,7 @@ void PreferencesDialog::versionsChanged(const QStringList &versions)
if (currentFilter.isEmpty())
return;
- m_currentSetup.m_filterToData[currentFilter].setVersions(versions);
+ m_currentSetup.m_filterToData[currentFilter].setVersions(stringListToVersions(versions));
}
QString PreferencesDialog::suggestedNewFilterName(const QString &initialFilterName) const
@@ -408,7 +425,7 @@ void PreferencesDialog::addDocumentation()
continue;
const QString component = info.component();
- const QString version = info.version();
+ const QVersionNumber version = info.version();
m_currentSetup.m_namespaceToFileName.insert(namespaceName, fileName);
m_currentSetup.m_fileNameToNamespace.insert(fileName, namespaceName);
@@ -445,7 +462,7 @@ void PreferencesDialog::removeDocumentation()
const QString fileName = m_currentSetup.m_namespaceToFileName.value(namespaceName);
const QString component = m_currentSetup.m_namespaceToComponent.value(namespaceName);
- const QString version = m_currentSetup.m_namespaceToVersion.value(namespaceName);
+ const QVersionNumber version = m_currentSetup.m_namespaceToVersion.value(namespaceName);
m_currentSetup.m_namespaceToComponent.remove(namespaceName);
m_currentSetup.m_namespaceToVersion.remove(namespaceName);
m_currentSetup.m_namespaceToFileName.remove(namespaceName);
diff --git a/src/assistant/assistant/preferencesdialog.h b/src/assistant/assistant/preferencesdialog.h
index 17ffb5add..89c30c568 100644
--- a/src/assistant/assistant/preferencesdialog.h
+++ b/src/assistant/assistant/preferencesdialog.h
@@ -38,19 +38,20 @@ QT_BEGIN_NAMESPACE
class FontPanel;
class HelpEngineWrapper;
class QFileSystemWatcher;
+class QVersionNumber;
struct FilterSetup {
- QMap<QString, QString> m_namespaceToComponent;
- QMap<QString, QStringList> m_componentToNamespace;
+ QMap<QString, QString> m_namespaceToComponent;
+ QMap<QString, QStringList> m_componentToNamespace;
- QMap<QString, QString> m_namespaceToVersion;
- QMap<QString, QStringList> m_versionToNamespace;
+ QMap<QString, QVersionNumber> m_namespaceToVersion;
+ QMap<QVersionNumber, QStringList> m_versionToNamespace;
- QMap<QString, QString> m_namespaceToFileName;
- QMap<QString, QString> m_fileNameToNamespace;
+ QMap<QString, QString> m_namespaceToFileName;
+ QMap<QString, QString> m_fileNameToNamespace;
- QMap<QString, QHelpFilterData> m_filterToData;
- QString m_currentFilter;
+ QMap<QString, QHelpFilterData> m_filterToData;
+ QString m_currentFilter;
};
class PreferencesDialog : public QDialog
diff --git a/src/assistant/help/qcompressedhelpinfo.cpp b/src/assistant/help/qcompressedhelpinfo.cpp
index d65486db3..a94562297 100644
--- a/src/assistant/help/qcompressedhelpinfo.cpp
+++ b/src/assistant/help/qcompressedhelpinfo.cpp
@@ -42,6 +42,7 @@
#include "qhelpdbreader_p.h"
#include <QtCore/QThread>
+#include <QtCore/QVersionNumber>
QT_BEGIN_NAMESPACE
@@ -59,7 +60,7 @@ public:
QString m_namespaceName;
QString m_component;
- QString m_version;
+ QVersionNumber m_version;
};
/*!
@@ -137,7 +138,7 @@ QString QCompressedHelpInfo::component() const
/*!
Returns the version of the compressed help file.
*/
-QString QCompressedHelpInfo::version() const
+QVersionNumber QCompressedHelpInfo::version() const
{
return d->m_version;
}
@@ -155,7 +156,7 @@ QCompressedHelpInfo QCompressedHelpInfo::fromCompressedHelpFile(const QString &d
QCompressedHelpInfo info;
info.d->m_namespaceName = reader.namespaceName();
info.d->m_component = reader.virtualFolder();
- info.d->m_version = reader.version();
+ info.d->m_version = QVersionNumber::fromString(reader.version());
return info;
}
return QCompressedHelpInfo();
diff --git a/src/assistant/help/qcompressedhelpinfo.h b/src/assistant/help/qcompressedhelpinfo.h
index cf27f635c..33f6ab097 100644
--- a/src/assistant/help/qcompressedhelpinfo.h
+++ b/src/assistant/help/qcompressedhelpinfo.h
@@ -46,6 +46,7 @@
QT_BEGIN_NAMESPACE
+class QVersionNumber;
class QCompressedHelpInfoPrivate;
class QHELP_EXPORT QCompressedHelpInfo
@@ -61,7 +62,7 @@ public:
QString namespaceName() const;
QString component() const;
- QString version() const;
+ QVersionNumber version() const;
static QCompressedHelpInfo fromCompressedHelpFile(const QString &documentationFileName);
diff --git a/src/assistant/help/qhelpcollectionhandler.cpp b/src/assistant/help/qhelpcollectionhandler.cpp
index b7bec74ad..9884fbcc1 100644
--- a/src/assistant/help/qhelpcollectionhandler.cpp
+++ b/src/assistant/help/qhelpcollectionhandler.cpp
@@ -615,9 +615,9 @@ QMap<QString, QString> QHelpCollectionHandler::namespaceToComponent() const
return result;
}
-QMap<QString, QString> QHelpCollectionHandler::namespaceToVersion() const
+QMap<QString, QVersionNumber> QHelpCollectionHandler::namespaceToVersion() const
{
- QMap<QString, QString> result;
+ QMap<QString, QVersionNumber> result;
if (m_query) {
m_query->exec(QLatin1String("SELECT "
"NamespaceTable.Name, "
@@ -625,8 +625,10 @@ QMap<QString, QString> QHelpCollectionHandler::namespaceToVersion() const
"FROM NamespaceTable, "
"VersionTable "
"WHERE NamespaceTable.Id = VersionTable.NamespaceId"));
- while (m_query->next())
- result.insert(m_query->value(0).toString(), m_query->value(1).toString());
+ while (m_query->next()) {
+ result.insert(m_query->value(0).toString(),
+ QVersionNumber::fromString(m_query->value(1).toString()));
+ }
}
return result;
}
@@ -634,7 +636,7 @@ QMap<QString, QString> QHelpCollectionHandler::namespaceToVersion() const
QHelpFilterData QHelpCollectionHandler::filterData(const QString &filterName) const
{
QStringList components;
- QStringList versions;
+ QList<QVersionNumber> versions;
if (m_query) {
m_query->prepare(QLatin1String("SELECT ComponentFilter.ComponentName "
"FROM ComponentFilter, Filter "
@@ -654,7 +656,7 @@ QHelpFilterData QHelpCollectionHandler::filterData(const QString &filterName) co
m_query->bindValue(0, filterName);
m_query->exec();
while (m_query->next())
- versions.append(m_query->value(0).toString());
+ versions.append(QVersionNumber::fromString(m_query->value(0).toString()));
}
QHelpFilterData data;
@@ -694,8 +696,8 @@ bool QHelpCollectionHandler::setFilterData(const QString &filterName,
return false;
filterIdList.clear();
- for (const QString &version : filterData.versions()) {
- versionList.append(version);
+ for (const QVersionNumber &version : filterData.versions()) {
+ versionList.append(version.isNull() ? QString() : version.toString());
filterIdList.append(filterId);
}
@@ -1966,12 +1968,16 @@ void QHelpCollectionHandler::createVersionFilter(const QString &version)
if (version.isEmpty())
return;
+ const QVersionNumber versionNumber = QVersionNumber::fromString(version);
+ if (versionNumber.isNull())
+ return;
+
const QString filterName = tr("Version %1").arg(version);
if (filters().contains(filterName))
return;
QHelpFilterData filterData;
- filterData.setVersions(QStringList() << version);
+ filterData.setVersions(QList<QVersionNumber>() << versionNumber);
setFilterData(filterName, filterData);
}
diff --git a/src/assistant/help/qhelpcollectionhandler_p.h b/src/assistant/help/qhelpcollectionhandler_p.h
index 223f66012..7679fccf7 100644
--- a/src/assistant/help/qhelpcollectionhandler_p.h
+++ b/src/assistant/help/qhelpcollectionhandler_p.h
@@ -63,6 +63,7 @@
QT_BEGIN_NAMESPACE
+class QVersionNumber;
class QHelpFilterData;
class QHelpCollectionHandler : public QObject
@@ -159,7 +160,7 @@ public:
QStringList availableComponents() const;
QStringList availableVersions() const;
QMap<QString, QString> namespaceToComponent() const;
- QMap<QString, QString> namespaceToVersion() const;
+ QMap<QString, QVersionNumber> namespaceToVersion() const;
QHelpFilterData filterData(const QString &filterName) const;
bool setFilterData(const QString &filterName, const QHelpFilterData &filterData);
bool removeFilter(const QString &filterName);
diff --git a/src/assistant/help/qhelpfilterdata.cpp b/src/assistant/help/qhelpfilterdata.cpp
index 6f072f9aa..c4a12db64 100644
--- a/src/assistant/help/qhelpfilterdata.cpp
+++ b/src/assistant/help/qhelpfilterdata.cpp
@@ -38,6 +38,7 @@
****************************************************************************/
#include "qhelpfilterdata.h"
+#include <QtCore/QVersionNumber>
QT_BEGIN_NAMESPACE
@@ -53,7 +54,7 @@ public:
~QHelpFilterDataPrivate() = default;
QStringList m_components;
- QStringList m_versions;
+ QList<QVersionNumber> m_versions;
};
/*!
@@ -128,7 +129,7 @@ void QHelpFilterData::setComponents(const QStringList &components)
the search results. Only results from versions in the list
\a versions shall be returned.
*/
-void QHelpFilterData::setVersions(const QStringList &versions)
+void QHelpFilterData::setVersions(const QList<QVersionNumber> &versions)
{
d->m_versions = versions;
}
@@ -146,7 +147,7 @@ QStringList QHelpFilterData::components() const
Returns the version list that is used for filtering
the search results.
*/
-QStringList QHelpFilterData::versions() const
+QList<QVersionNumber> QHelpFilterData::versions() const
{
return d->m_versions;
}
diff --git a/src/assistant/help/qhelpfilterdata.h b/src/assistant/help/qhelpfilterdata.h
index b2a38c087..ea7f7ded9 100644
--- a/src/assistant/help/qhelpfilterdata.h
+++ b/src/assistant/help/qhelpfilterdata.h
@@ -46,6 +46,7 @@
QT_BEGIN_NAMESPACE
+class QVersionNumber;
class QHelpFilterDataPrivate;
class QHELP_EXPORT QHelpFilterData
@@ -61,10 +62,10 @@ public:
bool operator==(const QHelpFilterData &other) const;
void setComponents(const QStringList &components);
- void setVersions(const QStringList &versions);
+ void setVersions(const QList<QVersionNumber> &versions);
QStringList components() const;
- QStringList versions() const;
+ QList<QVersionNumber> versions() const;
private:
QSharedDataPointer<QHelpFilterDataPrivate> d;
};
diff --git a/src/assistant/help/qhelpfilterengine.cpp b/src/assistant/help/qhelpfilterengine.cpp
index 6e5942f87..a53be506e 100644
--- a/src/assistant/help/qhelpfilterengine.cpp
+++ b/src/assistant/help/qhelpfilterengine.cpp
@@ -44,6 +44,7 @@
#include "qhelpcollectionhandler_p.h"
#include <QtCore/QThread>
+#include <QtCore/QVersionNumber>
QT_BEGIN_NAMESPACE
@@ -173,10 +174,11 @@ QMap<QString, QString> QHelpFilterEngine::namespaceToComponent() const
Returns the map of all the available namespaces as keys
together with their associated versions as values.
*/
-QMap<QString, QString> QHelpFilterEngine::namespaceToVersion() const
+QMap<QString, QVersionNumber> QHelpFilterEngine::namespaceToVersion() const
{
if (!d->setup())
- return QMap<QString, QString>();
+ return QMap<QString, QVersionNumber>();
+
return d->m_collectionHandler->namespaceToVersion();
}
diff --git a/src/assistant/help/qhelpfilterengine.h b/src/assistant/help/qhelpfilterengine.h
index 3ed5f4e5d..c4bd139f2 100644
--- a/src/assistant/help/qhelpfilterengine.h
+++ b/src/assistant/help/qhelpfilterengine.h
@@ -48,6 +48,7 @@ QT_BEGIN_NAMESPACE
template <class K, class T>
class QMap;
+class QVersionNumber;
class QHelpCollectionHandler;
class QHelpEngineCore;
@@ -59,7 +60,7 @@ class QHELP_EXPORT QHelpFilterEngine : public QObject
Q_OBJECT
public:
QMap<QString, QString> namespaceToComponent() const;
- QMap<QString, QString> namespaceToVersion() const;
+ QMap<QString, QVersionNumber> namespaceToVersion() const;
QStringList filters() const;