int main(int argc, char *argv[])
{
QApplication::setGraphicsSystem ("native");
+ QApplication::setOrganizationName ("Shmuma");
+ QApplication::setApplicationName ("yandex-traffic-widget");
+
QApplication app (argc, argv);
MainWidget w;
QMaemo5HomescreenAdaptor *adaptor = new QMaemo5HomescreenAdaptor (&w);
Settings::Settings ()
{
- if (!load ())
- makeDefault ();
+ load ();
}
-bool Settings::load ()
+void Settings::load ()
{
- return false;
+ QSettings settings;
+
+ makeDefault ();
+
+ _regionID = settings.value ("region", _regionID).toString ();
+
+ _checks[C_Light] = settings.value ("checks/light", _checks[C_Light]).toBool ();
+ _checks[C_Rank] = settings.value ("checks/rank", _checks[C_Rank]).toBool ();
+ _checks[C_Time] = settings.value ("checks/time", _checks[C_Time]).toBool ();
+ _checks[C_Hint] = settings.value ("checks/hint", _checks[C_Hint]).toBool ();
+
+ loadCities (&settings);
+}
+
+
+void Settings::save ()
+{
+ QSettings settings;
+
+ settings.setValue ("region", _regionID);
+
+ settings.setValue ("checks/light", _checks[C_Light]);
+ settings.setValue ("checks/rank", _checks[C_Rank]);
+ settings.setValue ("checks/time", _checks[C_Time]);
+ settings.setValue ("checks/hint", _checks[C_Hint]);
+
+ saveCities (&settings);
}
-bool Settings::save ()
+void Settings::loadCities (QSettings *settings)
{
- return false;
+ QMap<QString, QVariant> v;
+ QMap<QString, QVariant>::const_iterator it;
+
+ v = settings->value ("cities", v).toMap ();
+
+ if (v.size () == 0)
+ return;
+
+ it = v.begin ();
+ _cities.clear ();
+
+ while (it != v.end ()) {
+ _cities[it.key ()] = it.value ().toString ();
+ it++;
+ }
+}
+
+
+void Settings::saveCities (QSettings *settings)
+{
+ QMap<QString, QVariant> v;
+ QMap<QString, QString>::const_iterator it;
+
+ it = _cities.begin ();
+
+ while (it != _cities.end ()) {
+ v[it.key ()] = it.value ();
+ it++;
+ }
+
+ settings->setValue ("cities", v);
}