-rw-r--r-- | microkde/kdeui/kcmodule.cpp | 10 | ||||
-rw-r--r-- | microkde/kdeui/kcmodule.h | 11 | ||||
-rw-r--r-- | microkde/kutils/kcmultidialog.cpp | 13 | ||||
-rw-r--r-- | microkde/kutils/kcmultidialog.h | 5 |
4 files changed, 22 insertions, 17 deletions
diff --git a/microkde/kdeui/kcmodule.cpp b/microkde/kdeui/kcmodule.cpp index 915cd0f..f646db3 100644 --- a/microkde/kdeui/kcmodule.cpp +++ b/microkde/kdeui/kcmodule.cpp @@ -30,20 +30,22 @@ class KCModulePrivate { public: //US KInstance *_instance; QString _rootOnlyMsg; bool _useRootOnlyMsg; bool _hasOwnInstance; + KPrefs* _prefs; }; -KCModule::KCModule(QWidget *parent, const char *name, const QStringList &) +KCModule::KCModule(KPrefs* prefs, QWidget *parent, const char *name, const QStringList &) : QWidget(parent, name), _btn(Help|Default|Apply) { kdDebug() << "KCModule " << name << endl; d = new KCModulePrivate; d->_useRootOnlyMsg = true; + d->_prefs = prefs; /*US d->_instance = new KInstance(name); if (name && strlen(name)) { d->_instance = new KInstance(name); KGlobal::locale()->insertCatalogue(name); } else @@ -91,12 +93,18 @@ void KCModule::setUseRootOnlyMsg(bool on) } bool KCModule::useRootOnlyMsg() const { return d->_useRootOnlyMsg; } + +KPrefs* KCModule::getPreferences() +{ + return d->_prefs; +} + /*US KInstance *KCModule::instance() const { return d->_instance; } */ diff --git a/microkde/kdeui/kcmodule.h b/microkde/kdeui/kcmodule.h index bc020bc..874958c 100644 --- a/microkde/kdeui/kcmodule.h +++ b/microkde/kdeui/kcmodule.h @@ -80,13 +80,13 @@ public: /* * Base class for all KControlModules. * Make sure you have a QStringList argument in your * implementation. */ - KCModule(QWidget *parent=0, const char *name=0, const QStringList &args=QStringList() ); + KCModule(KPrefs* prefs, QWidget *parent=0, const char *name=0, const QStringList &args=QStringList() ); //US KCModule(KInstance *instance, QWidget *parent=0, const QStringList &args=QStringList() ); /* * Destroys the module. */ @@ -103,44 +103,44 @@ public: * (most of the times from a config file) and update the user interface. * This happens when the user clicks the "Reset" button in the control * center, to undo all of his changes and restore the currently valid * settings. NOTE that this is not called after the modules is loaded, * so you probably want to call this method in the constructor. */ - virtual void load(KPrefs* prefs) {}; + virtual void load() {}; /** * Save the configuration data. * * The save method stores the config information as shown * in the user interface in the config files. * * If necessary, this method also updates the running system, * e.g. by restarting applications. * * save is called when the user clicks "Apply" or "Ok". */ - virtual void save(KPrefs* prefs) {}; + virtual void save() {}; /** * Sets the configuration to sensible default values. * * This method is called when the user clicks the "Default" * button. It should set the display to useful values. */ - virtual void defaults(KPrefs* prefs) {}; + virtual void defaults() {}; /** * Set the configuration to system default values. * * This method is called when the user clicks the "System-Default" * button. It should set the display to the system default values. * * NOTE: The default behaviour is to call defaults(). */ - virtual void sysdefaults(KPrefs* prefs) { defaults(prefs); }; + virtual void sysdefaults() { defaults(); }; /** * Return a quick-help text. * * This method is called when the module is docked. * The quick-help text should contain a short description of the module and @@ -190,12 +190,13 @@ public: * tells KControl if a RootOnly message should be shown * * @see KCModule::setUseRootOnlyMsg */ bool useRootOnlyMsg() const; + KPrefs* getPreferences(); //US KInstance *instance() const; signals: /** diff --git a/microkde/kutils/kcmultidialog.cpp b/microkde/kutils/kcmultidialog.cpp index c2378fb..6c82e4f 100644 --- a/microkde/kutils/kcmultidialog.cpp +++ b/microkde/kutils/kcmultidialog.cpp @@ -31,19 +31,18 @@ #include <kmessagebox.h> //US #include <klibloader.h> #include <krun.h> #include <kprocess.h> #include "kcmultidialog.h" -#include "kprefs.h" //US #include "kcmultidialog.moc" //US #include "kcmoduleloader.h" -KCMultiDialog::KCMultiDialog(KPrefs* prefs, const QString& baseGroup, QWidget *parent, const char *name, bool modal) +KCMultiDialog::KCMultiDialog(const QString& baseGroup, QWidget *parent, const char *name, bool modal) : KDialogBase(IconList, i18n("Configure"), Default |Cancel | Apply | Ok, Ok, - parent, name, modal, true), mPrefs(prefs), d(0L) + parent, name, modal, true), d(0L) { enableButton(Apply, false); //connect(this, SIGNAL(aboutToShowPage(QWidget *)), this, SLOT(slotAboutToShow(QWidget *))); connect( this, SIGNAL( defaultClicked() ), SLOT( slotDefault() ) ); @@ -72,13 +71,13 @@ void KCMultiDialog::slotDefault() QPtrListIterator<KCModule> it(modules); for (; it.current(); ++it) { if (pageIndex((QWidget *)(*it)->parent()) == curPageIndex) { - (*it)->defaults(mPrefs); + (*it)->defaults(); clientChanged(true); return; } } } @@ -86,13 +85,13 @@ void KCMultiDialog::slotDefault() void KCMultiDialog::slotApply() { qDebug("KCMultiDialog::slotApply clicked"); QPtrListIterator<KCModule> it(modules); for (; it.current(); ++it) - (*it)->save(mPrefs); + (*it)->save(); clientChanged(false); emit applyClicked(); } @@ -100,13 +99,13 @@ qDebug("KCMultiDialog::slotApply clicked"); void KCMultiDialog::slotOk() { qDebug("KCMultiDialog::slotOk clicked"); QPtrListIterator<KCModule> it(modules); for (; it.current(); ++it) - (*it)->save(mPrefs); + (*it)->save(); accept(); emit okClicked(); } void KCMultiDialog::slotHelp() @@ -159,13 +158,13 @@ QVBox * KCMultiDialog::getNewVBoxPage( const QString & modulename ) void KCMultiDialog::addModule(KCModule* module ) //, const QString& modulename, const QString& iconname) { modules.append(module); connect(module, SIGNAL(changed(bool)), this, SLOT(clientChanged(bool))); //US - module->load(mPrefs); + module->load(); } void KCMultiDialog::slotAboutToShow(QWidget *page) { diff --git a/microkde/kutils/kcmultidialog.h b/microkde/kutils/kcmultidialog.h index a42555f..1aa66b2 100644 --- a/microkde/kutils/kcmultidialog.h +++ b/microkde/kutils/kcmultidialog.h @@ -26,14 +26,12 @@ #include <qptrdict.h> #include <kdialogbase.h> #include <kjanuswidget.h> #include <kcmodule.h> -class KPrefs; - /** * A class that offers a @ref KDialogBase containing arbitrary KControl Modules * * @short A method that offers a @ref KDialogBase containing arbitrary * KControl Modules. * @@ -51,13 +49,13 @@ public: * @param parent The parent Widget * @param name The widget name * @param baseGroup The baseGroup, if you want to call a module out of * kcontrol, just keep "settings" * @param modal If you pass true here, the dialog will be modal **/ - KCMultiDialog(KPrefs* prefs, const QString& baseGroup = QString::fromLatin1("settings"), + KCMultiDialog(const QString& baseGroup = QString::fromLatin1("settings"), QWidget *parent=0, const char *name=0, bool modal=false); /** * Destructor **/ @@ -136,13 +134,12 @@ private: QString _docPath; */ QString _baseGroup; //US KJanusWidget* mMainWidget; - KPrefs* mPrefs; // For future use class KCMultiDialogPrivate; KCMultiDialogPrivate *d; }; |