kconfig.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef _KCONFIG_H
00025 #define _KCONFIG_H
00026
00027 class QTimer;
00028
00029 #include <qvaluelist.h>
00030
00031 #include "ksharedptr.h"
00032 #include "kconfigbase.h"
00033
00034 class KConfigPrivate;
00035
00046 class KConfig : public KConfigBase
00047 {
00048 Q_OBJECT
00049
00050 public:
00051
00065 KConfig( const QString& fileName = QString::null,
00066 bool bReadOnly = false, bool bUseKDEGlobals = true, const char *resType="config");
00067
00068 KConfig(KConfigBackEnd *backEnd, bool bReadOnly = false);
00069
00076 virtual ~KConfig();
00077
00090 virtual void rollback(bool bDeep = true);
00091
00092
00097 virtual QStringList groupList() const;
00098
00110 virtual QMap<QString, QString> entryMap(const QString &pGroup) const;
00111
00116 virtual void reparseConfiguration();
00117
00124 void setFileWriteMode(int mode);
00125
00132 void setForceGlobal( bool force ) { bForceGlobal = force; }
00133
00139 bool forceGlobal() const { return bForceGlobal; }
00140
00155 void checkUpdate(const QString &id, const QString &updateFile);
00156
00168 KConfig* copyTo(const QString &file, KConfig *config=0) const;
00169
00170 protected:
00171
00178 virtual bool internalHasGroup(const QCString &group) const;
00179
00190 virtual KEntryMap internalEntryMap(const QString &pGroup) const;
00191
00201 virtual KEntryMap internalEntryMap() const { return aEntryMap; }
00202
00213 virtual void putData(const KEntryKey &_key, const KEntry &_data, bool _checkGroup=true);
00214
00223 virtual KEntry lookupData(const KEntryKey &_key) const;
00224
00232 KEntryMap aEntryMap;
00233
00234 private:
00239 KConfig( const KConfig& );
00244 KConfig& operator= ( const KConfig& rConfig );
00245
00246 private:
00247 bool bGroupImmutable : 1;
00248 bool bFileImmutable : 1;
00249 bool bForceGlobal : 1;
00250 protected:
00251 virtual void virtual_hook( int id, void* data );
00252 private:
00253 KConfigPrivate *d;
00254 };
00255
00256 class KSharedConfig : public KConfig, public KShared
00257 {
00258 friend class QValueList<KSharedConfig*>;
00259 public:
00260 typedef KSharedPtr<KSharedConfig> Ptr;
00261
00262 public:
00268 static KSharedConfig::Ptr openConfig(const QString& fileName, bool immutable = false,
00269 bool bUseKDEGlobals = true);
00270
00271 private:
00272 KSharedConfig( const QString& fileName, bool immutable, bool useKDEGlobals );
00273 ~KSharedConfig();
00274
00275 static QValueList<KSharedConfig*> *s_list;
00276 };
00277
00278 #endif
This file is part of the documentation for kdecore Library Version 3.2.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Thu Mar 4 22:43:29 2004 by
doxygen 1.3.6-20040222 written by
Dimitri van Heesch, © 1997-2003