kconfigdialogmanager.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
#ifndef KCONFIGDIALOGMANAGER_H
00022
#define KCONFIGDIALOGMANAGER_H
00023
00024
#include <qobject.h>
00025
#include <qptrlist.h>
00026
#include "kdelibs_export.h"
00027
00028
class KConfigSkeleton;
00029
class KConfigSkeletonItem;
00030
class QWidget;
00031
class QSqlPropertyMap;
00032
00078 class KDECORE_EXPORT KConfigDialogManager :
public QObject {
00079
00080 Q_OBJECT
00081
00082 signals:
00088
void settingsChanged();
00089
00097
void settingsChanged(
QWidget *widget );
00098
00106
void widgetModified();
00107
00108
00109
public:
00110
00117 KConfigDialogManager(
QWidget *parent,
KConfigSkeleton *conf,
const char *name=0);
00118
00122 ~KConfigDialogManager();
00123
00128
void addWidget(
QWidget *widget);
00129
00134
bool hasChanged();
00135
00140
bool isDefault();
00141
00142
public slots:
00149
void updateSettings();
00150
00158
void updateWidgets();
00159
00166
void updateWidgetsDefault();
00167
00168
protected:
00169
00176
void init(
bool trackChanges);
00177
00188
bool parseChildren(
const QWidget *widget,
bool trackChanges);
00189
00193
void setProperty(
QWidget *w,
const QVariant &v);
00194
00198
QVariant property(
QWidget *w);
00199
00203
void setupWidget(
QWidget *widget,
KConfigSkeletonItem *item);
00204
00205
protected:
00209 KConfigSkeleton *m_conf;
00210
00214 QWidget *m_dialog;
00215
00219 QSqlPropertyMap *propertyMap;
00220
00224 QMap<QString, QCString> changedMap;
00225
00226
private:
00227
class Private;
00231 Private *d;
00232
00233 };
00234
00235
#endif // KCONFIGDIALOGMANAGER_H
00236
This file is part of the documentation for kdecore Library Version 3.4.0.