summaryrefslogtreecommitdiffabout
path: root/microkde/kdecore/kprefs.cpp
Unidiff
Diffstat (limited to 'microkde/kdecore/kprefs.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--microkde/kdecore/kprefs.cpp50
1 files changed, 49 insertions, 1 deletions
diff --git a/microkde/kdecore/kprefs.cpp b/microkde/kdecore/kprefs.cpp
index f5e5e5a..71050e7 100644
--- a/microkde/kdecore/kprefs.cpp
+++ b/microkde/kdecore/kprefs.cpp
@@ -64,24 +64,39 @@ class KPrefsItemColor : public KPrefsItem {
64 const QColor &defaultValue=QColor(128,128,128)); 64 const QColor &defaultValue=QColor(128,128,128));
65 virtual ~KPrefsItemColor() {} 65 virtual ~KPrefsItemColor() {}
66 66
67 void setDefault(); 67 void setDefault();
68 void readConfig(KConfig *); 68 void readConfig(KConfig *);
69 void writeConfig(KConfig *); 69 void writeConfig(KConfig *);
70 70
71 private: 71 private:
72 QColor *mReference; 72 QColor *mReference;
73 QColor mDefault; 73 QColor mDefault;
74}; 74};
75 75
76class KPrefsItemSize : public KPrefsItem {
77 public:
78 KPrefsItemSize(const QString &group,const QString &name,QSize *,
79 const QSize &defaultValue=QSize());
80 ~KPrefsItemSize() {}
81
82 void setDefault();
83 void readConfig(KConfig *);
84 void writeConfig(KConfig *);
85
86 private:
87 QSize *mReference;
88 QSize mDefault;
89};
90
76 91
77class KPrefsItemFont : public KPrefsItem { 92class KPrefsItemFont : public KPrefsItem {
78 public: 93 public:
79 KPrefsItemFont(const QString &group,const QString &name,QFont *, 94 KPrefsItemFont(const QString &group,const QString &name,QFont *,
80 const QFont &defaultValue=QFont("helvetica",12)); 95 const QFont &defaultValue=QFont("helvetica",12));
81 virtual ~KPrefsItemFont() {} 96 virtual ~KPrefsItemFont() {}
82 97
83 void setDefault(); 98 void setDefault();
84 void readConfig(KConfig *); 99 void readConfig(KConfig *);
85 void writeConfig(KConfig *); 100 void writeConfig(KConfig *);
86 101
87 private: 102 private:
@@ -210,24 +225,51 @@ void KPrefsItemColor::writeConfig(KConfig *config)
210 config->setGroup(mGroup); 225 config->setGroup(mGroup);
211 config->writeEntry(mName,*mReference); 226 config->writeEntry(mName,*mReference);
212} 227}
213 228
214void KPrefsItemColor::readConfig(KConfig *config) 229void KPrefsItemColor::readConfig(KConfig *config)
215{ 230{
216 config->setGroup(mGroup); 231 config->setGroup(mGroup);
217 *mReference = config->readColorEntry(mName,&mDefault); 232 *mReference = config->readColorEntry(mName,&mDefault);
218 233
219} 234}
220 235
221 236
237KPrefsItemSize::KPrefsItemSize(const QString &group,const QString &name,
238 QSize *reference,const QSize &defaultValue) :
239 KPrefsItem(group,name)
240{
241 mReference = reference;
242 mDefault = defaultValue;
243}
244
245void KPrefsItemSize::setDefault()
246{
247 *mReference = mDefault;
248}
249
250void KPrefsItemSize::writeConfig(KConfig *config)
251{
252 config->setGroup(mGroup);
253 config->writeEntry(mName,*mReference);
254}
255
256void KPrefsItemSize::readConfig(KConfig *config)
257{
258 config->setGroup(mGroup);
259 *mReference = config->readSizeEntry(mName,&mDefault);
260
261}
262
263
222KPrefsItemFont::KPrefsItemFont(const QString &group,const QString &name, 264KPrefsItemFont::KPrefsItemFont(const QString &group,const QString &name,
223 QFont *reference,const QFont &defaultValue) : 265 QFont *reference,const QFont &defaultValue) :
224 KPrefsItem(group,name) 266 KPrefsItem(group,name)
225{ 267{
226 mReference = reference; 268 mReference = reference;
227 mDefault = defaultValue; 269 mDefault = defaultValue;
228} 270}
229 271
230void KPrefsItemFont::setDefault() 272void KPrefsItemFont::setDefault()
231{ 273{
232 *mReference = mDefault; 274 *mReference = mDefault;
233} 275}
@@ -391,35 +433,36 @@ void KPrefs::setDefaults()
391 433
392 usrSetDefaults(); 434 usrSetDefaults();
393} 435}
394 436
395void KPrefs::readConfig() 437void KPrefs::readConfig()
396{ 438{
397 KPrefsItem *item; 439 KPrefsItem *item;
398 for(item = mItems.first();item;item = mItems.next()) { 440 for(item = mItems.first();item;item = mItems.next()) {
399 item->readConfig(mConfig); 441 item->readConfig(mConfig);
400 } 442 }
401 443
402 usrReadConfig(); 444 usrReadConfig();
445 //qDebug("KPrefs::readConfig: %s", mConfig->getFileName().latin1());
403} 446}
404 447
405void KPrefs::writeConfig() 448void KPrefs::writeConfig()
406{ 449{
407 KPrefsItem *item; 450 KPrefsItem *item;
408 for(item = mItems.first();item;item = mItems.next()) { 451 for(item = mItems.first();item;item = mItems.next()) {
409 item->writeConfig(mConfig); 452 item->writeConfig(mConfig);
410 } 453 }
411 454
412 usrWriteConfig(); 455 usrWriteConfig();
413 456 //qDebug("KPrefs::WriteConfig: %s", mConfig->getFileName().latin1());
414 mConfig->sync(); 457 mConfig->sync();
415} 458}
416 459
417 460
418void KPrefs::addItem(KPrefsItem *item) 461void KPrefs::addItem(KPrefsItem *item)
419{ 462{
420 mItems.append(item); 463 mItems.append(item);
421} 464}
422 465
423void KPrefs::addItemBool(const QString &key,bool *reference,bool defaultValue) 466void KPrefs::addItemBool(const QString &key,bool *reference,bool defaultValue)
424{ 467{
425 addItem(new KPrefsItemBool(*mCurrentGroup,key,reference,defaultValue)); 468 addItem(new KPrefsItemBool(*mCurrentGroup,key,reference,defaultValue));
@@ -431,24 +474,29 @@ void KPrefs::addItemInt(const QString &key,int *reference,int defaultValue)
431} 474}
432 475
433void KPrefs::addItemColor(const QString &key,QColor *reference,const QColor &defaultValue) 476void KPrefs::addItemColor(const QString &key,QColor *reference,const QColor &defaultValue)
434{ 477{
435 addItem(new KPrefsItemColor(*mCurrentGroup,key,reference,defaultValue)); 478 addItem(new KPrefsItemColor(*mCurrentGroup,key,reference,defaultValue));
436} 479}
437 480
438void KPrefs::addItemFont(const QString &key,QFont *reference,const QFont &defaultValue) 481void KPrefs::addItemFont(const QString &key,QFont *reference,const QFont &defaultValue)
439{ 482{
440 addItem(new KPrefsItemFont(*mCurrentGroup,key,reference,defaultValue)); 483 addItem(new KPrefsItemFont(*mCurrentGroup,key,reference,defaultValue));
441} 484}
442 485
486void KPrefs::addItemSize(const QString &key,QSize *reference,const QSize &defaultValue)
487{
488 addItem(new KPrefsItemSize(*mCurrentGroup,key,reference,defaultValue));
489}
490
443void KPrefs::addItemString(const QString &key,QString *reference,const QString &defaultValue) 491void KPrefs::addItemString(const QString &key,QString *reference,const QString &defaultValue)
444{ 492{
445 addItem(new KPrefsItemString(*mCurrentGroup,key,reference,defaultValue,false)); 493 addItem(new KPrefsItemString(*mCurrentGroup,key,reference,defaultValue,false));
446} 494}
447 495
448void KPrefs::addItemPassword(const QString &key,QString *reference,const QString &defaultValue) 496void KPrefs::addItemPassword(const QString &key,QString *reference,const QString &defaultValue)
449{ 497{
450 addItem(new KPrefsItemString(*mCurrentGroup,key,reference,defaultValue,true)); 498 addItem(new KPrefsItemString(*mCurrentGroup,key,reference,defaultValue,true));
451} 499}
452 500
453void KPrefs::addItemStringList(const QString &key,QStringList *reference, 501void KPrefs::addItemStringList(const QString &key,QStringList *reference,
454 const QStringList &defaultValue) 502 const QStringList &defaultValue)