diff options
author | Dominik Riebeling <Dominik.Riebeling@gmail.com> | 2009-08-11 17:02:35 +0000 |
---|---|---|
committer | Dominik Riebeling <Dominik.Riebeling@gmail.com> | 2009-08-11 17:02:35 +0000 |
commit | 6cea3308d05c21aabe073f77c3d013485b0429a0 (patch) | |
tree | 63b6774909837045ff6635e232293c7818e826da /rbutil/rbutilqt/base/rbsettings.cpp | |
parent | 9a5174c8a3a1a2a358be57ecb72fa2740b10cd0d (diff) | |
download | rockbox-6cea3308d05c21aabe073f77c3d013485b0429a0.tar.gz rockbox-6cea3308d05c21aabe073f77c3d013485b0429a0.zip |
Clean up accessing system setting values for a specific player.
Remove the ugly "save, change and restore platform" accesses and extend the settings class to allow accessing player specific system values.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22254 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'rbutil/rbutilqt/base/rbsettings.cpp')
-rw-r--r-- | rbutil/rbutilqt/base/rbsettings.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/rbutil/rbutilqt/base/rbsettings.cpp b/rbutil/rbutilqt/base/rbsettings.cpp index 8ab340faa3..150640f010 100644 --- a/rbutil/rbutilqt/base/rbsettings.cpp +++ b/rbutil/rbutilqt/base/rbsettings.cpp @@ -220,6 +220,25 @@ void RbSettings::setSubValue(QString sub, enum UserSettings setting, QVariant va userSettings->setValue(s, value); } + +QVariant RbSettings::platformValue(QString platform, enum SystemSettings setting) +{ + ensureRbSettingsExists(); + + // locate setting item + int i = 0; + while(SystemSettingsList[i].setting != setting) + i++; + + QString s = SystemSettingsList[i].name; + s.replace(":platform:", platform); + QString d = SystemSettingsList[i].def; + d.replace(":platform:", platform); + qDebug() << "[Settings] GET P:" << s << systemSettings->value(s, d).toString(); + return systemSettings->value(s, d); +} + + QStringList RbSettings::platforms() { ensureRbSettingsExists(); @@ -250,6 +269,7 @@ QStringList RbSettings::languages() return result; } + QString RbSettings::name(QString platform) { ensureRbSettingsExists(); |