diff options
author | Jarek Kobus <jaroslaw.kobus@qt.io> | 2019-02-26 13:04:35 +0100 |
---|---|---|
committer | Jarek Kobus <jaroslaw.kobus@qt.io> | 2019-03-01 10:43:05 +0000 |
commit | 32f5237cd79385681481ba37ecf7f0bcfaa5ab96 (patch) | |
tree | 6942a8e359284513f291285e6e27245b32dc41f9 /src/assistant | |
parent | cc7feade6095d08cee225294a3635229e34a6e1c (diff) |
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>
Diffstat (limited to 'src/assistant')
-rw-r--r-- | src/assistant/assistant/preferencesdialog.cpp | 27 | ||||
-rw-r--r-- | src/assistant/assistant/preferencesdialog.h | 17 | ||||
-rw-r--r-- | src/assistant/help/qcompressedhelpinfo.cpp | 7 | ||||
-rw-r--r-- | src/assistant/help/qcompressedhelpinfo.h | 3 | ||||
-rw-r--r-- | src/assistant/help/qhelpcollectionhandler.cpp | 24 | ||||
-rw-r--r-- | src/assistant/help/qhelpcollectionhandler_p.h | 3 | ||||
-rw-r--r-- | src/assistant/help/qhelpfilterdata.cpp | 7 | ||||
-rw-r--r-- | src/assistant/help/qhelpfilterdata.h | 5 | ||||
-rw-r--r-- | src/assistant/help/qhelpfilterengine.cpp | 6 | ||||
-rw-r--r-- | src/assistant/help/qhelpfilterengine.h | 3 |
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; |