Build, if that was not necessary blame cartman who told me "sure" :-D
[kdepim.git] / libkdepim / designerfields.h
blobdf7416554c8f2919f0281768bcf1f7d70fb93110
1 /*
2 This file is part of libkdepim.
4 Copyright (c) 2004 Tobias Koenig <tokoe@kde.org>
5 Copyright (c) 2004 Cornelius Schumacher <schumacher@kde.org>
7 This library is free software; you can redistribute it and/or
8 modify it under the terms of the GNU Library General Public
9 License as published by the Free Software Foundation; either
10 version 2 of the License, or (at your option) any later version.
12 This library is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 Library General Public License for more details.
17 You should have received a copy of the GNU Library General Public License
18 along with this library; see the file COPYING.LIB. If not, write to
19 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20 Boston, MA 02111-1307, USA.
22 #ifndef KPIM_DESIGNERFIELDS_H
23 #define KPIM_DESIGNERFIELDS_H
25 #include <klocale.h>
27 #include <qmap.h>
28 #include <qpair.h>
29 #include <qstringlist.h>
31 namespace KPIM {
33 class DesignerFields : public QWidget
35 Q_OBJECT
36 public:
37 DesignerFields( const QString &uiFile, QWidget *parent,
38 const char *name = 0 );
40 class Storage
42 public:
43 virtual ~Storage() {}
45 virtual QStringList keys() = 0;
46 virtual QString read( const QString &key ) = 0;
47 virtual void write( const QString &key, const QString &value ) = 0;
50 void load( Storage * );
51 void save( Storage * );
53 void setReadOnly( bool readOnly );
55 QString identifier() const;
56 QString title() const;
58 signals:
59 void modified();
61 private:
62 void initGUI( const QString& );
64 QMap<QString, QWidget *> mWidgets;
65 QValueList<QWidget *> mDisabledWidgets;
66 QString mTitle;
67 QString mIdentifier;
72 #endif