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.3.