kdecore Library API Documentation

KConfig Class Reference

Access KDE Configuration entries. KDE Configuration Management class. More...

#include <kconfig.h>

Inheritance diagram for KConfig:

KConfigBase QObject KDesktopFile KSimpleConfig List of all members.

Public Member Functions

 KConfig (const QString &fileName=QString::null, bool bReadOnly=false, bool bUseKDEGlobals=true, const char *resType="config")
 KConfig (KConfigBackEnd *backEnd, bool bReadOnly=false)
virtual ~KConfig ()
virtual void rollback (bool bDeep=true)
virtual QStringList groupList () const
virtual QMap< QString, QStringentryMap (const QString &pGroup) const
virtual void reparseConfiguration ()
void setFileWriteMode (int mode)
void setForceGlobal (bool force)
bool forceGlobal () const
void checkUpdate (const QString &id, const QString &updateFile)
KConfigcopyTo (const QString &file, KConfig *config=0) const

Protected Member Functions

virtual bool internalHasGroup (const QCString &group) const
virtual KEntryMap internalEntryMap (const QString &pGroup) const
virtual KEntryMap internalEntryMap () const
virtual void putData (const KEntryKey &_key, const KEntry &_data, bool _checkGroup=true)
virtual KEntry lookupData (const KEntryKey &_key) const
virtual void virtual_hook (int id, void *data)

Protected Attributes

KEntryMap aEntryMap

Detailed Description

Access KDE Configuration entries. KDE Configuration Management class.

This class implements KDE's default configuration system.

Author:
Kalle Dalheimer <kalle@kde.org>, Preston Brown <pbrown@kde.org>
Version:
Id
kconfig.h,v 1.63 2004/01/07 00:35:30 mueller Exp
See also:
KGlobal::config(), KConfigBase, KSimpleConfig

Definition at line 46 of file kconfig.h.


Constructor & Destructor Documentation

KConfig::KConfig const QString fileName = QString::null,
bool  bReadOnly = false,
bool  bUseKDEGlobals = true,
const char *  resType = "config"
 

Constructs a KConfig object.

Parameters:
fileName A file to parse in addition to the system-wide file(s). If it is not provided, only global KDE configuration data will be read (depending on the value of bUseKDEGlobals).
bReadOnly Set the config object's read-only status. Note that the object will automatically become read-only if either the user does not have write permission to fileName or if no file was specified.
bUseKDEGlobals Toggle reading the global KDE configuration file.
resType the place to look in (config, data, etc) See KStandardDirs.

Definition at line 43 of file kconfig.cpp.

References KStandardDirs::addCustomized(), KGlobal::dirs(), KConfig(), and reparseConfiguration().

Referenced by KConfig().

KConfig::~KConfig  )  [virtual]
 

Destructs the KConfig object.

Writes back any dirty configuration entries, and destroys dynamically created objects.

Definition at line 86 of file kconfig.cpp.

References KConfigBase::sync().


Member Function Documentation

void KConfig::rollback bool  bDeep = true  )  [virtual]
 

Clears all entries out of the dirtyEntryMap, so the values will not be written to disk on a later call to sync().

Parameters:
bDeep If true, the dirty map is actually emptied. otherwise, the config object's global dirty flag is set to false, but the dirty entries remain in the dirty entry map.
See also:
KConfigBase::rollback

Reimplemented from KConfigBase.

Definition at line 93 of file kconfig.cpp.

References aEntryMap, QMap::begin(), QMap::end(), and rollback().

Referenced by rollback().

QStringList KConfig::groupList  )  const [virtual]
 

Returns a list of groups that are known.

Returns:
a list of of groups

Implements KConfigBase.

Definition at line 106 of file kconfig.cpp.

References aEntryMap, QMap::begin(), QMap::end(), and QMap::isEmpty().

Referenced by copyTo().

QMap< QString, QString > KConfig::entryMap const QString pGroup  )  const [virtual]
 

Returns a map (tree) of entries for all entries in a particular group.

Only the actual entry string is returned, none of the other internal data should be included.

Parameters:
pGroup A group to get keys from.
Returns:
A map of entries in the group specified, indexed by key. The returned map may be empty if the group is not found.

Implements KConfigBase.

Definition at line 140 of file kconfig.cpp.

References aEntryMap, QMap::end(), entryMap(), QMap::find(), QMap::insert(), and QString::utf8().

Referenced by KStandardDirs::addCustomized(), copyTo(), and entryMap().

void KConfig::reparseConfiguration  )  [virtual]
 

Clears all internal data structures and then reread configuration information from disk.

Implements KConfigBase.

Definition at line 160 of file kconfig.cpp.

References aEntryMap, QMap::clear(), QMap::insert(), KConfigBase::isReadOnly(), KConfigBase::parseConfigFiles(), and KConfigBackEnd::sync().

Referenced by checkUpdate(), KInstance::dirs(), KConfig(), KDesktopFile::KDesktopFile(), and KSimpleConfig::KSimpleConfig().

void KConfig::setFileWriteMode int  mode  ) 
 

Set the file mode for newly created files.

Parameters:
mode the mode for new files as described in chmod(2)
See also:
man:chmod(2) for a description of mode

Definition at line 274 of file kconfig.cpp.

References KConfigBackEnd::setFileWriteMode(), and setFileWriteMode().

Referenced by setFileWriteMode().

void KConfig::setForceGlobal bool  force  )  [inline]
 

Forces all following write-operations being performed on kdeglobals, independent of the bGlobal flag in writeEntry().

Parameters:
force true to force writing in kdeglobals
See also:
forceGlobal

Definition at line 132 of file kconfig.h.

References setForceGlobal().

Referenced by setForceGlobal().

bool KConfig::forceGlobal  )  const [inline]
 

Returns true if all entries are being written into kdeglobals.

Returns:
true if all entries are being written into kdeglobals
See also:
setForceGlobal

Definition at line 139 of file kconfig.h.

void KConfig::checkUpdate const QString id,
const QString updateFile
 

Checks whether the config file contains the update id as contained in updateFile.

If not, it runs kconf_update to update the config file.

If you install config update files with critical fixes you may wish to use this method to verify that a critical update has indeed been performed to catch the case where a user restores an old config file from backup that has not been updated yet.

Parameters:
id the update to check
updateFile the file containing the update
Since:
3.1

Definition at line 279 of file kconfig.cpp.

References checkUpdate(), KConfigBase::group(), and reparseConfiguration().

Referenced by checkUpdate().

KConfig * KConfig::copyTo const QString file,
KConfig config = 0
const
 

Copies all entries from this config object to a new config object that will save itself to file.

Actual saving to file happens when the returned object is destructed or when sync() is called upon it.

Parameters:
file the new config object will save itself to.
config optional config object to reuse
Since:
3.2

Definition at line 295 of file kconfig.cpp.

References KConfigBase::backEnd, QMap::begin(), bFileImmutable, KConfigBackEnd::changeFileName(), copyTo(), QMap::end(), entryMap(), groupList(), KConfigBackEnd::mConfigState, KConfigBase::setGroup(), KConfigBase::setReadOnly(), and KConfigBase::writeEntry().

Referenced by copyTo().

bool KConfig::internalHasGroup const QCString group  )  const [protected, virtual]
 

Returns true if the specified group is known.

Parameters:
group The group to search for.
Returns:
true if the group exists.

Implements KConfigBase.

Definition at line 253 of file kconfig.cpp.

References aEntryMap, QMap::end(), QMap::find(), internalHasGroup(), and QMap::isEmpty().

Referenced by internalHasGroup().

KEntryMap KConfig::internalEntryMap const QString pGroup  )  const [protected, virtual]
 

Returns a map (tree) of the entries in the specified group.

This may or may not return all entries that belong to the config object. The only guarantee that you are given is that any entries that are dirty (i.e. modified and not yet written back to the disk) will be contained in the map. Some derivative classes may choose to return everything.

Do not use this function, the implementation / return type are subject to change.

Parameters:
pGroup The group to provide a KEntryMap for.
Returns:
The map of the entries in the group.

Implements KConfigBase.

Definition at line 177 of file kconfig.cpp.

References aEntryMap, QMap::end(), QMap::find(), QMap::insert(), and QString::utf8().

virtual KEntryMap KConfig::internalEntryMap  )  const [inline, protected, virtual]
 

Returns a map (tree) of the entries in the tree.

Do not use this function, the implementation / return type are subject to change.

Returns:
A map of the entries in the tree.

Implements KConfigBase.

Definition at line 201 of file kconfig.h.

References aEntryMap.

void KConfig::putData const KEntryKey _key,
const KEntry _data,
bool  _checkGroup = true
[protected, virtual]
 

Inserts a (key, value) pair into the internal storage mechanism of the configuration object.

Parameters:
_key The key to insert. It contains information both on the group of the key and the key itself. If the key already exists, the old value will be replaced.
_data the KEntry that is to be stored.
_checkGroup When false, assume that the group already exists.

Implements KConfigBase.

Definition at line 201 of file kconfig.cpp.

References aEntryMap, KEntryKey::bDefault, KEntry::bGlobal, KEntry::bImmutable, KEntryKey::mGroup, and putData().

Referenced by putData().

KEntry KConfig::lookupData const KEntryKey _key  )  const [protected, virtual]
 

Looks up an entry in the config object's internal structure.

Parameters:
_key The key to look up It contains information both on the group of the key and the entry's key itself.
Returns:
the KEntry value (data) found for the key. KEntry.aValue will be the null string if nothing was located.

Implements KConfigBase.

Definition at line 237 of file kconfig.cpp.

References aEntryMap, KEntry::bDeleted, QMap::end(), QMap::find(), and lookupData().

Referenced by lookupData().


Member Data Documentation

KEntryMap KConfig::aEntryMap [protected]
 

Contains all key,value entries, as well as some "special" keys which indicate the start of a group of entries.

These special keys will have the .key portion of their KEntryKey set to QString::null.

Definition at line 232 of file kconfig.h.

Referenced by entryMap(), groupList(), internalEntryMap(), internalHasGroup(), lookupData(), putData(), reparseConfiguration(), and rollback().


The documentation for this class was generated from the following files:
KDE Logo
This file is part of the documentation for kdecore Library Version 3.2.3.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed Mar 16 17:21:45 2005 by doxygen 1.3.7 written by Dimitri van Heesch, © 1997-2003