00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
#ifndef __KCMODULE_H__
00024
#define __KCMODULE_H__
00025
00026
#include <qwidget.h>
00027
00028
#include <kdelibs_export.h>
00029
00030
class QStringList;
00031
00032
class KAboutData;
00033
class KConfigDialogManager;
00034
class KConfigSkeleton;
00035
class KCModulePrivate;
00036
class KInstance;
00037
00069 class KDEUI_EXPORT KCModule :
public QWidget
00070 {
00071 Q_OBJECT
00072
00073
public:
00074
00081 enum Button {Help=1, Default=2, Apply=16,
00082 Reset=4,
00083 Cancel=8,
00084 Ok=32,
00085 SysDefault=64 };
00086
00087
00088
00089
00090
00091
00092 KCModule(
QWidget *parent=0,
const char *name=0,
const QStringList &args=
QStringList() );
00093
00094 KCModule(
KInstance *instance,
QWidget *parent=0,
const QStringList &args=
QStringList() );
00095
00096
00097
00098
00099 ~KCModule();
00100
00120
virtual void load();
00121
00122
00123
00143
virtual void save();
00144
00156
virtual void defaults();
00157
00166 virtual void sysdefaults() { defaults(); };
00167
00168
00178
virtual QString quickHelp() const;
00179
00187 virtual const
KAboutData *aboutData() const;
00188
00193
void setAboutData(
KAboutData* about );
00194
00203 int buttons()
const {
return _btn; };
00204
00217
QString rootOnlyMsg() const;
00218
00229
bool useRootOnlyMsg() const;
00230
00231
KInstance *instance() const;
00232
00237 const
QPtrList<
KConfigDialogManager>& configs() const;
00238
00239 protected:
00250
KConfigDialogManager* addConfig(
KConfigSkeleton *config,
QWidget* widget );
00251
00257
void setQuickHelp( const
QString& help );
00258
00259 signals:
00260
00268
void changed(
bool state);
00269
00278
void quickHelpChanged();
00279
00280 protected slots:
00281
00286
void changed();
00287
00293
void widgetChanged();
00294
00295 protected:
00296
00309 void setButtons(
int btn) { _btn = btn; };
00310
00320
void setRootOnlyMsg(
const QString& msg);
00321
00330
void setUseRootOnlyMsg(
bool on);
00331
00332
private:
00333
00334
int _btn;
00335
protected:
00336
virtual void virtual_hook(
int id,
void* data );
00337
private:
00338 KCModulePrivate *d;
00339
00343
void init();
00344
00345 };
00346
00347
#endif //__KCMODULE_H__
00348