libkdepim
designerfields.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef KPIM_DESIGNERFIELDS_H
00023 #define KPIM_DESIGNERFIELDS_H
00024
00025 #include <klocale.h>
00026
00027 #include <qmap.h>
00028 #include <qpair.h>
00029 #include <qstringlist.h>
00030
00031 #include <kdepimmacros.h>
00032
00033 namespace KPIM {
00034
00035 class KDE_EXPORT DesignerFields : public QWidget
00036 {
00037 Q_OBJECT
00038 public:
00039 DesignerFields( const QString &uiFile, QWidget *parent,
00040 const char *name = 0 );
00041
00042 class Storage
00043 {
00044 public:
00045 virtual ~Storage() {}
00046
00047 virtual QStringList keys() = 0;
00048 virtual QString read( const QString &key ) = 0;
00049 virtual void write( const QString &key, const QString &value ) = 0;
00050 };
00051
00052 void load( Storage * );
00053 void save( Storage * );
00054
00055 void setReadOnly( bool readOnly );
00056
00057 QString identifier() const;
00058 QString title() const;
00059
00060 signals:
00061 void modified();
00062
00063 private:
00064 void initGUI( const QString& );
00065
00066 QMap<QString, QWidget *> mWidgets;
00067 QValueList<QWidget *> mDisabledWidgets;
00068 QString mTitle;
00069 QString mIdentifier;
00070 };
00071
00072 }
00073
00074 #endif
|