summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--microkde/kdecore/kprefs.cpp50
-rw-r--r--microkde/kdecore/kprefs.h15
-rw-r--r--microkde/kutils/kcmultidialog.cpp20
-rw-r--r--microkde/kutils/kcmultidialog.h5
4 files changed, 87 insertions, 3 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
@@ -60,32 +60,47 @@ class KPrefsItemInt : public KPrefsItem {
60 60
61class KPrefsItemColor : public KPrefsItem { 61class KPrefsItemColor : public KPrefsItem {
62 public: 62 public:
63 KPrefsItemColor(const QString &group,const QString &name,QColor *, 63 KPrefsItemColor(const QString &group,const QString &name,QColor *,
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:
88 QFont *mReference; 103 QFont *mReference;
89 QFont mDefault; 104 QFont mDefault;
90}; 105};
91 106
@@ -206,32 +221,59 @@ void KPrefsItemColor::setDefault()
206} 221}
207 222
208void KPrefsItemColor::writeConfig(KConfig *config) 223void KPrefsItemColor::writeConfig(KConfig *config)
209{ 224{
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}
234 276
235void KPrefsItemFont::writeConfig(KConfig *config) 277void KPrefsItemFont::writeConfig(KConfig *config)
236{ 278{
237 config->setGroup(mGroup); 279 config->setGroup(mGroup);
@@ -387,72 +429,78 @@ void KPrefs::setDefaults()
387 KPrefsItem *item; 429 KPrefsItem *item;
388 for(item = mItems.first();item;item = mItems.next()) { 430 for(item = mItems.first();item;item = mItems.next()) {
389 item->setDefault(); 431 item->setDefault();
390 } 432 }
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));
426} 469}
427 470
428void KPrefs::addItemInt(const QString &key,int *reference,int defaultValue) 471void KPrefs::addItemInt(const QString &key,int *reference,int defaultValue)
429{ 472{
430 addItem(new KPrefsItemInt(*mCurrentGroup,key,reference,defaultValue)); 473 addItem(new KPrefsItemInt(*mCurrentGroup,key,reference,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)
455{ 503{
456 addItem(new KPrefsItemStringList(*mCurrentGroup,key,reference,defaultValue)); 504 addItem(new KPrefsItemStringList(*mCurrentGroup,key,reference,defaultValue));
457} 505}
458 506
diff --git a/microkde/kdecore/kprefs.h b/microkde/kdecore/kprefs.h
index 7014bb8..95d2724 100644
--- a/microkde/kdecore/kprefs.h
+++ b/microkde/kdecore/kprefs.h
@@ -11,32 +11,33 @@
11 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Library General Public License for more details. 13 Library General Public License for more details.
14 14
15 You should have received a copy of the GNU Library General Public License 15 You should have received a copy of the GNU Library General Public License
16 along with this library; see the file COPYING.LIB. If not, write to 16 along with this library; see the file COPYING.LIB. If not, write to
17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18 Boston, MA 02111-1307, USA. 18 Boston, MA 02111-1307, USA.
19*/ 19*/
20#ifndef _KPREFS_H 20#ifndef _KPREFS_H
21#define _KPREFS_H 21#define _KPREFS_H
22// $Id$ 22// $Id$
23 23
24#include <qptrlist.h> 24#include <qptrlist.h>
25#include <qcolor.h> 25#include <qcolor.h>
26#include <qfont.h> 26#include <qfont.h>
27#include <qsize.h>
27#include <qstringlist.h> 28#include <qstringlist.h>
28 29
29class KConfig; 30class KConfig;
30 31
31/** 32/**
32 @short Class for storing a preferences setting 33 @short Class for storing a preferences setting
33 @author Cornelius Schumacher 34 @author Cornelius Schumacher
34 @see KPref 35 @see KPref
35 36
36 This class represents one preferences setting as used by @ref KPrefs. 37 This class represents one preferences setting as used by @ref KPrefs.
37 Subclasses of KPrefsItem implement storage functions for a certain type of 38 Subclasses of KPrefsItem implement storage functions for a certain type of
38 setting. Normally you don't have to use this class directly. Use the special 39 setting. Normally you don't have to use this class directly. Use the special
39 addItem() functions of KPrefs instead. If you subclass this class you will 40 addItem() functions of KPrefs instead. If you subclass this class you will
40 have to register instances with the function KPrefs::addItem(). 41 have to register instances with the function KPrefs::addItem().
41*/ 42*/
42class KPrefsItem { 43class KPrefsItem {
@@ -194,32 +195,46 @@ class KPrefs {
194 this item. 195 this item.
195 */ 196 */
196 void addItemInt(const QString &key,int *reference, 197 void addItemInt(const QString &key,int *reference,
197 int defaultValue=0); 198 int defaultValue=0);
198 /** 199 /**
199 Register an item of type QColor. 200 Register an item of type QColor.
200 201
201 @param key Key used in config file. 202 @param key Key used in config file.
202 @param reference Pointer to the variable, which is set by readConfig() 203 @param reference Pointer to the variable, which is set by readConfig()
203 and setDefaults() calls and read by writeConfig() calls. 204 and setDefaults() calls and read by writeConfig() calls.
204 @param defaultValue Default value, which is used by setDefaults() and 205 @param defaultValue Default value, which is used by setDefaults() and
205 when the config file does not yet contain the key of 206 when the config file does not yet contain the key of
206 this item. 207 this item.
207 */ 208 */
208 void addItemColor(const QString &key,QColor *reference, 209 void addItemColor(const QString &key,QColor *reference,
209 const QColor &defaultValue=QColor(128,128,128)); 210 const QColor &defaultValue=QColor(128,128,128));
211
212 /**
213 Register an item of type QSize.
214
215 @param key Key used in config file.
216 @param reference Pointer to the variable, which is set by readConfig()
217 and setDefaults() calls and read by writeConfig() calls.
218 @param defaultValue Default value, which is used by setDefaults() and
219 when the config file does not yet contain the key of
220 this item.
221 */
222 void addItemSize(const QString &key,QSize *reference,
223 const QSize &defaultValue=QSize());
224
210 /** 225 /**
211 Register an item of type QFont. 226 Register an item of type QFont.
212 227
213 @param key Key used in config file. 228 @param key Key used in config file.
214 @param reference Pointer to the variable, which is set by readConfig() 229 @param reference Pointer to the variable, which is set by readConfig()
215 and setDefaults() calls and read by writeConfig() calls. 230 and setDefaults() calls and read by writeConfig() calls.
216 @param defaultValue Default value, which is used by setDefaults() and 231 @param defaultValue Default value, which is used by setDefaults() and
217 when the config file does not yet contain the key of 232 when the config file does not yet contain the key of
218 this item. 233 this item.
219 */ 234 */
220 void addItemFont(const QString &key,QFont *reference, 235 void addItemFont(const QString &key,QFont *reference,
221 const QFont &defaultValue=QFont("helvetica",12)); 236 const QFont &defaultValue=QFont("helvetica",12));
222 /** 237 /**
223 Register an item of type QString. 238 Register an item of type QString.
224 239
225 @param key Key used in config file. 240 @param key Key used in config file.
diff --git a/microkde/kutils/kcmultidialog.cpp b/microkde/kutils/kcmultidialog.cpp
index e7aa9d1..c4ccede 100644
--- a/microkde/kutils/kcmultidialog.cpp
+++ b/microkde/kutils/kcmultidialog.cpp
@@ -54,33 +54,33 @@ KCMultiDialog::KCMultiDialog(const QString& baseGroup, QWidget *parent, const ch
54#else 54#else
55 resize(640,480); 55 resize(640,480);
56 setMaximumSize( KMIN(KGlobal::getDesktopWidth()-5, 640), KMIN(KGlobal::getDesktopHeight()-20, 480)); 56 setMaximumSize( KMIN(KGlobal::getDesktopWidth()-5, 640), KMIN(KGlobal::getDesktopHeight()-20, 480));
57 //showMaximized(); 57 //showMaximized();
58#endif 58#endif
59 59
60} 60}
61 61
62KCMultiDialog::~KCMultiDialog() 62KCMultiDialog::~KCMultiDialog()
63{ 63{
64//US moduleDict.setAutoDelete(true); 64//US moduleDict.setAutoDelete(true);
65} 65}
66 66
67void KCMultiDialog::slotDefault() 67void KCMultiDialog::slotDefault()
68{ 68{
69 69
70 int curPageIndex = mMainWidget->activePageIndex(); 70 int curPageIndex = activePageIndex();
71 71
72 QPtrListIterator<KCModule> it(modules); 72 QPtrListIterator<KCModule> it(modules);
73 for (; it.current(); ++it) 73 for (; it.current(); ++it)
74 { 74 {
75 if (pageIndex((QWidget *)(*it)->parent()) == curPageIndex) 75 if (pageIndex((QWidget *)(*it)->parent()) == curPageIndex)
76 { 76 {
77 (*it)->defaults(); 77 (*it)->defaults();
78 clientChanged(true); 78 clientChanged(true);
79 return; 79 return;
80 } 80 }
81 } 81 }
82 82
83} 83}
84void KCMultiDialog::accept() 84void KCMultiDialog::accept()
85{ 85{
86 slotOk(); 86 slotOk();
@@ -194,16 +194,34 @@ void KCMultiDialog::slotAboutToShow(QWidget *page)
194 194
195 module->reparent(page,0,QPoint(0,0),true); 195 module->reparent(page,0,QPoint(0,0),true);
196 connect(module, SIGNAL(changed(bool)), this, SLOT(clientChanged(bool))); 196 connect(module, SIGNAL(changed(bool)), this, SLOT(clientChanged(bool)));
197 //setHelp( docpath, QString::null ); 197 //setHelp( docpath, QString::null );
198 _docPath = info.docPath(); 198 _docPath = info.docPath();
199 modules.append(module); 199 modules.append(module);
200 200
201 //KCGlobal::repairAccels( topLevelWidget() ); 201 //KCGlobal::repairAccels( topLevelWidget() );
202 202
203 delete loadInfo; 203 delete loadInfo;
204 204
205 QApplication::restoreOverrideCursor(); 205 QApplication::restoreOverrideCursor();
206*/ 206*/
207 207
208qDebug("KCMultiDialog::slotAboutToShow not implemented"); 208qDebug("KCMultiDialog::slotAboutToShow not implemented");
209} 209}
210
211
212bool KCMultiDialog::showPage( int index )
213{
214 return(mMainWidget->showPage(index) );
215}
216
217
218int KCMultiDialog::activePageIndex() const
219{
220 return( mMainWidget->activePageIndex() );
221}
222
223
224int KCMultiDialog::pageIndex( QWidget *widget ) const
225{
226 return( mMainWidget->pageIndex( widget) );
227}
diff --git a/microkde/kutils/kcmultidialog.h b/microkde/kutils/kcmultidialog.h
index 768faea..66412ac 100644
--- a/microkde/kutils/kcmultidialog.h
+++ b/microkde/kutils/kcmultidialog.h
@@ -60,37 +60,40 @@ public:
60 * Destructor 60 * Destructor
61 **/ 61 **/
62 virtual ~KCMultiDialog(); 62 virtual ~KCMultiDialog();
63 63
64 /** 64 /**
65 * Add a module. 65 * Add a module.
66 * 66 *
67 * @param module Specify the name of the module that is to be added 67 * @param module Specify the name of the module that is to be added
68 * to the list of modules the dialog will show. 68 * to the list of modules the dialog will show.
69 * 69 *
70 * @param withfallback Try harder to load the module. Might result 70 * @param withfallback Try harder to load the module. Might result
71 * in the module appearing outside the dialog. 71 * in the module appearing outside the dialog.
72 **/ 72 **/
73//US void addModule(const QString& module, bool withfallback=true); 73//US void addModule(const QString& module, bool withfallback=true);
74 74
75 75
76//US special method for microkde. We dop noty want to load everything dynamically. 76//US special method for microkde. We do not want to load everything dynamically.
77 void addModule(KCModule* module );//, const QString& modulename, const QString& iconname); 77 void addModule(KCModule* module );//, const QString& modulename, const QString& iconname);
78 QVBox* getNewVBoxPage(const QString & modulename) ; 78 QVBox* getNewVBoxPage(const QString & modulename) ;
79 79
80 80
81 bool showPage( int index );
82 int activePageIndex() const;
83 int pageIndex( QWidget *widget ) const;
81 84
82protected slots: 85protected slots:
83 /** 86 /**
84 * This slot is called when the user presses the "Default" Button 87 * This slot is called when the user presses the "Default" Button
85 * You can reimplement it if needed. 88 * You can reimplement it if needed.
86 * 89 *
87 * @note Make sure you call the original implementation! 90 * @note Make sure you call the original implementation!
88 **/ 91 **/
89 virtual void slotDefault(); 92 virtual void slotDefault();
90 93
91 /** 94 /**
92 * This slot is called when the user presses the "Apply" Button 95 * This slot is called when the user presses the "Apply" Button
93 * You can reimplement it if needed 96 * You can reimplement it if needed
94 * 97 *
95 * @note Make sure you call the original implementation! 98 * @note Make sure you call the original implementation!
96 **/ 99 **/