9 /////////////////////////////////////////////////////////////////
11 /////////////////////////////////////////////////////////////////
12 SimpleSettings::SimpleSettings()
17 SimpleSettings::~SimpleSettings()
21 void SimpleSettings::clear()
27 bool SimpleSettings::readSettings (const QString &path)
30 if (!loadStringFromDisk(path,s))
32 qWarning ()<<"SimpleSettings::readSettings() Couldn't read "+path;
36 lines=s.split (QRegExp("\n"));
38 QStringList::Iterator it=lines.begin();
39 while (it !=lines.end() )
41 i=(*it).indexOf("=",0);
42 keylist.append((*it).left(i));
43 valuelist.append((*it).right((*it).length()-i-1));
49 void SimpleSettings::writeSettings (const QString &path)
52 QStringList::Iterator itk=keylist.begin();
53 QStringList::Iterator itv=valuelist.begin();
55 // First search for value in settings saved in map
56 while (itk !=keylist.end() )
58 s+=*itk+"="+*itv+"\n";
62 if (!saveStringToDisk(path,s))
63 qWarning ()<<"SimpleSettings::writeSettings() Couldn't write "+path;
67 QString SimpleSettings::readValue (const QString &key)
69 QStringList::Iterator itk=keylist.begin();
70 QStringList::Iterator itv=valuelist.begin();
72 // First search for value in settings saved in map
73 while (itk !=keylist.end() )
80 qWarning ("SimpleSettings::readValue() Couldn't find key "+key);
85 QString SimpleSettings::value (const QString &key, const QString &def)
87 QStringList::Iterator itk=keylist.begin();
88 QStringList::Iterator itv=valuelist.begin();
90 // First search for value in settings saved in map
91 while (itk !=keylist.end() )
101 int SimpleSettings::readNumValue (const QString &key, const int &def)
103 QStringList::Iterator itk=keylist.begin();
104 QStringList::Iterator itv=valuelist.begin();
106 // First search for value in settings saved in map
107 while (itk !=keylist.end() )
112 int i=(*itv).toInt(&ok,10);
124 void SimpleSettings::setValue (const QString &key, const QString &value)
126 QStringList::Iterator itk=keylist.begin();
127 QStringList::Iterator itv=valuelist.begin();
131 // Search for existing Value first
132 while (itk !=keylist.end() )
136 if (!value.isEmpty())
147 // If no Value exists, append a new one
148 keylist.append (key);
149 valuelist.append (value);
155 /////////////////////////////////////////////////////////////////
157 /////////////////////////////////////////////////////////////////
163 Settings::Settings(const QString & organization, const QString & application )
164 :QSettings (organization, application)
169 Settings::~Settings()
173 void Settings::clear()
180 void Settings::clearLocal(const QString &fpath, const QString &key)
183 while (i<pathlist.count() )
185 if (fpath == pathlist.at(i) && keylist.at(i).startsWith (key))
187 pathlist.removeAt(i);
189 valuelist.removeAt(i);
195 QVariant Settings::localValue ( const QString &fpath, const QString & key, QVariant def)
197 // First search for value in settings saved in map
199 while (i<pathlist.count() )
201 if (pathlist.at(i) == fpath && keylist.at(i) == key)
202 return valuelist.at(i);
206 // Fall back to global vym settings
207 return value (key,def);
210 void Settings::setLocalValue (const QString &fpath, const QString &key, QVariant value)
212 if (!fpath.isEmpty() && !key.isEmpty() && !value.isNull() )
214 // Search for existing Value first
216 while (i<pathlist.count())
218 if (pathlist.at(i) == fpath && keylist.at(i) == key)
226 // If no Value exists, append a new one
227 pathlist.append (fpath);
228 keylist.append (key);
229 valuelist.append (value);
233 QString Settings::getDataXML (const QString &fpath)
237 while (i<pathlist.count())
239 if (pathlist.at(i)==fpath)
240 if (!valuelist.at(i).isNull())
243 getCDATA( valuelist.at(i).toString() ),
244 attribut ("key",keylist.at(i))