diff options
author | Olli Werwolff <qt-info@nokia.com> | 2010-12-07 10:49:00 +0100 |
---|---|---|
committer | Olli Werwolff <qt-info@nokia.com> | 2010-12-07 11:06:19 +0100 |
commit | 0cad8392068f28c8b0c3db7f7c7cc755c909392a (patch) | |
tree | 4c82ae4a33b81b5fac457b4ac927ff660c199a57 | |
parent | 813c505c8fc0089b45c8ae2510a319306256c63a (diff) |
Added versioning for simulator registration in QSettings1.1TP
Reviewed-by: ckamm
-rw-r--r-- | src/main.cpp | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/src/main.cpp b/src/main.cpp index 34152df..bd8c8dc 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -64,10 +64,26 @@ static void registerSimulator(const QString &location) } #endif - const QString locationKey = QLatin1String(SIMULATOR_APP_LOCATION_KEY); - QVariant value = settings->value(locationKey); - if (!value.isValid() || settings->value(locationKey).toString() != location) - settings->setValue(locationKey, location); + settings->beginGroup(SIMULATOR_APP_LOCATION_KEY); + QString simulatorVersionString = simulatorVersion.toString(); + QVariant value = settings->value(simulatorVersionString); + if (!value.isValid() || settings->value(simulatorVersionString).toString() != location) + settings->setValue(simulatorVersionString, location); + settings->endGroup(); + + settings->beginGroup(SIMULATOR_APP_QT_VERSIONS_KEY); + QList<QString> supportedQtVersion; + supportedQtVersion << "4.7.1.0"; + foreach(const QString &version, supportedQtVersion) { + QList<QString> simulators; + QVariant value = settings->value(version); + if (value.isValid()) + simulators = value.toStringList(); + if (!simulators.contains(simulatorVersionString)) + simulators.append(simulatorVersionString); + settings->setValue(version, QVariant::fromValue<QStringList>(simulators)); + } + settings->endGroup(); const QString dataKey = QLatin1String(SIMULATOR_APP_DATA_KEY); QString appDataLocation = QDesktopServices::storageLocation(QDesktopServices::DataLocation); |