-rw-r--r-- | microkde/kutils/kcmultidialog.cpp | 13 | ||||
-rw-r--r-- | microkde/kutils/kcmultidialog.h | 20 |
2 files changed, 19 insertions, 14 deletions
diff --git a/microkde/kutils/kcmultidialog.cpp b/microkde/kutils/kcmultidialog.cpp index 13be2ce..c2378fb 100644 --- a/microkde/kutils/kcmultidialog.cpp +++ b/microkde/kutils/kcmultidialog.cpp @@ -29,22 +29,23 @@ #include <kdebug.h> #include <kiconloader.h> #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(const QString& baseGroup, QWidget *parent, const char *name, bool modal) +KCMultiDialog::KCMultiDialog(KPrefs* prefs, const QString& baseGroup, QWidget *parent, const char *name, bool modal) : KDialogBase(IconList, i18n("Configure"), Default |Cancel | Apply | Ok, Ok, - parent, name, modal, true), d(0L) + parent, name, modal, true), mPrefs(prefs), d(0L) { enableButton(Apply, false); //connect(this, SIGNAL(aboutToShowPage(QWidget *)), this, SLOT(slotAboutToShow(QWidget *))); connect( this, SIGNAL( defaultClicked() ), SLOT( slotDefault() ) ); _baseGroup = baseGroup; mMainWidget = new KJanusWidget( this, "JanusWidget", KJanusWidget::Tabbed ); @@ -69,45 +70,45 @@ void KCMultiDialog::slotDefault() int curPageIndex = mMainWidget->activePageIndex(); QPtrListIterator<KCModule> it(modules); for (; it.current(); ++it) { if (pageIndex((QWidget *)(*it)->parent()) == curPageIndex) { - (*it)->defaults(); + (*it)->defaults(mPrefs); clientChanged(true); return; } } } void KCMultiDialog::slotApply() { qDebug("KCMultiDialog::slotApply clicked"); QPtrListIterator<KCModule> it(modules); for (; it.current(); ++it) - (*it)->save(); + (*it)->save(mPrefs); clientChanged(false); emit applyClicked(); } void KCMultiDialog::slotOk() { qDebug("KCMultiDialog::slotOk clicked"); QPtrListIterator<KCModule> it(modules); for (; it.current(); ++it) - (*it)->save(); + (*it)->save(mPrefs); accept(); emit okClicked(); } void KCMultiDialog::slotHelp() { /*US @@ -155,16 +156,18 @@ QVBox * KCMultiDialog::getNewVBoxPage( const QString & modulename ) } //US special method for microkde. We dop noty want to load everything dynamically. 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); } void KCMultiDialog::slotAboutToShow(QWidget *page) { /*US LoadInfo *loadInfo = moduleDict[page]; diff --git a/microkde/kutils/kcmultidialog.h b/microkde/kutils/kcmultidialog.h index 63d5d42..a42555f 100644 --- a/microkde/kutils/kcmultidialog.h +++ b/microkde/kutils/kcmultidialog.h @@ -24,16 +24,17 @@ #include <qptrlist.h> #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. * * @author Matthias Elter <elter@kde.org>, Daniel Molkentin <molkentin@kde.org> @@ -48,17 +49,17 @@ public: * Constructs a new KCMultiDialog * * @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(const QString& baseGroup = QString::fromLatin1("settings"), + KCMultiDialog(KPrefs* prefs, const QString& baseGroup = QString::fromLatin1("settings"), QWidget *parent=0, const char *name=0, bool modal=false); /** * Destructor **/ virtual ~KCMultiDialog(); @@ -72,19 +73,19 @@ public: * in the module appearing outside the dialog. **/ //US void addModule(const QString& module, bool withfallback=true); //US special method for microkde. We dop noty want to load everything dynamically. void addModule(KCModule* module );//, const QString& modulename, const QString& iconname); QVBox* getNewVBoxPage(const QString & modulename) ; - - - + + + protected slots: /** * This slot is called when the user presses the "Default" Button * You can reimplement it if needed. * * @note Make sure you call the original implementation! **/ virtual void slotDefault(); @@ -123,25 +124,26 @@ private: /*US struct LoadInfo { LoadInfo(const QString &_path, bool _withfallback) : path(_path), withfallback(_withfallback) { } QString path; bool withfallback; }; -*/ +*/ QPtrList<KCModule> modules; -/* +/* QPtrDict<LoadInfo> moduleDict; QString _docPath; -*/ +*/ QString _baseGroup; -//US +//US KJanusWidget* mMainWidget; - + KPrefs* mPrefs; + // For future use class KCMultiDialogPrivate; KCMultiDialogPrivate *d; }; #endif //KCMULTIDIALOG_H |