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
@@ -70,12 +70,27 @@ class KPrefsItemColor : public KPrefsItem {
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() {}
@@ -216,12 +231,39 @@ void KPrefsItemColor::readConfig(KConfig *config)
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;
@@ -397,23 +439,24 @@ void KPrefs::readConfig()
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{
@@ -437,12 +480,17 @@ void KPrefs::addItemColor(const QString &key,QColor *reference,const QColor &def
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)