diff options
Diffstat (limited to 'kdecore/kconfigbase.h')
-rw-r--r-- | kdecore/kconfigbase.h | 2180 |
1 files changed, 0 insertions, 2180 deletions
diff --git a/kdecore/kconfigbase.h b/kdecore/kconfigbase.h deleted file mode 100644 index 4f3dd545b..000000000 --- a/kdecore/kconfigbase.h +++ /dev/null @@ -1,2180 +0,0 @@ -/* - This file is part of the KDE libraries - Copyright (c) 1999 Preston Brown <pbrown@kde.org> - Copyright (c) 1997 Matthias Kalle Dalheimer <kalle@kde.org> - Copyright (c) 2001 Waldo Bastian <bastian@kde.org> - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; see the file COPYING.LIB. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. -*/ - -#ifndef _KCONFIGBASE_H -#define _KCONFIGBASE_H - -#include <tqobject.h> -#include <tqcolor.h> -#include <tqfont.h> -#include <tqdatetime.h> -#include <tqstrlist.h> -#include <tqstringlist.h> -#include <tqvariant.h> -#include <tqmap.h> - -#include "kconfigdata.h" -#include "kdelibs_export.h" - -class KConfigBackEnd; -class KConfigBasePrivate; -class KConfigGroup; - -/** - * @short KDE Configuration Management abstract base class - * - * This class forms the base for all %KDE configuration. It is an - * abstract base class, meaning that you cannot directly instantiate - * objects of this class. Either use KConfig (for usual %KDE - * configuration) or KSimpleConfig (for special needs as in ksamba), or - * even KSharedConfig (stores values in shared memory). - * - * All configuration entries are key, value pairs. Each entry also - * belongs to a specific group of related entries. All configuration - * entries that do not explicitly specify which group they are in are - * in a special group called the default group. - * - * If there is a $ character in an entry, KConfigBase tries to expand - * environment variable and uses its value instead of its name. You - * can avoid this feature by having two consecutive $ characters in - * your config file which get expanded to one. - * - * \note the '=' char is not allowed in keys and the ']' char is not allowed in - * a group name. - * - * @author Kalle Dalheimer <kalle@kde.org>, Preston Brown <pbrown@kde.org> - * @see KGlobal#config() - * @see KConfig - * @see KSimpleConfig - * @see KSharedConfig - */ -class KDECORE_EXPORT KConfigBase : public TQObject -{ - Q_OBJECT - TQ_OBJECT - - friend class KConfigBackEnd; - friend class KConfigINIBackEnd; - friend class KConfigGroup; - -public: - /** - * Construct a KConfigBase object. - */ - KConfigBase(); - - /** - * Destructs the KConfigBase object. - */ - virtual ~KConfigBase(); - - /** - * Specifies the group in which keys will be read and written. - * - * Subsequent - * calls to readEntry() and writeEntry() will be applied only in the - * activated group. - * - * Switch back to the default group by passing a null string. - * @param group The name of the new group. - */ - void setGroup( const TQString& group ); - - /** - * Sets the group to the "Desktop Entry" group used for - * desktop configuration files for applications, mime types, etc. - */ - void setDesktopGroup(); - - /** - * Returns the name of the group in which we are - * searching for keys and from which we are retrieving entries. - * - * @return The current group. - */ - TQString group() const; - - /** - * Returns true if the specified group is known about. - * - * @param group The group to search for. - * @return true if the group exists. - */ - bool hasGroup(const TQString &group) const; - - /** - * Returns a list of groups that are known about. - * - * @return The list of groups. - **/ - virtual TQStringList groupList() const = 0; - - /** - * Returns a the current locale. - * - * @return A string representing the current locale. - */ - TQString locale() const; - - /** - * Reads the value of an entry specified by @p pKey in the current group. - * If you want to read a path, please use readPathEntry(). - * - * @param pKey The key to search for. - * @param aDefault A default value returned if the key was not found. - * @return The value for this key. Can be TQString::null if aDefault is null. - */ - TQString readEntry(const TQString& pKey, - const TQString& aDefault = TQString::null ) const; - - /** - * Reads the value of an entry specified by @p pKey in the current group. - * - * @param pKey The key to search for. - * @param aDefault A default value returned if the key was not found. - * @return The value for this key. Can be TQString::null if aDefault is null. - */ - TQString readEntry(const char *pKey, - const TQString& aDefault = TQString::null ) const; - - /** - * Reads the value of an entry specified by @p pKey in the current group. - * The value is treated as if it is of the given type. - * - * Note that only the following TQVariant types are allowed : String, - * StringList, List, Font, Point, Rect, Size, Color, Int, UInt, Bool, - * Double, DateTime and Date. - * @deprecated - * - * @param pKey The key to search for. - * @return An invalid TQVariant if the key was not found or if the - * read value cannot be converted to the given TQVariant::Type. - */ - TQVariant readPropertyEntry( const TQString& pKey, TQVariant::Type ) const; - - /** - * Reads the value of an entry specified by @p pKey in the current group. - * The value is treated as if it is of the given type. - * - * Note that only the following TQVariant types are allowed : String, - * StringList, List, Font, Point, Rect, Size, Color, Int, UInt, Bool, - * Double, DateTime and Date. - * - * @deprecated - * - * @param pKey The key to search for. - * @return An invalid TQVariant if the key was not found or if the - * read value cannot be converted to the given TQVariant::Type. - */ - TQVariant readPropertyEntry( const char *pKey, TQVariant::Type ) const; - - /** - * Reads the value of an entry specified by @p pKey in the current group. - * The value is treated as if it is of the type of the given default value. - * - * Note that only the following TQVariant types are allowed : String, - * StringList, List, Font, Point, Rect, Size, Color, Int, UInt, Bool, - * Double, DateTime and Date. - * - * @param pKey The key to search for. - * @param aDefault A default value returned if the key was not found or - * if the read value cannot be converted to the TQVariant::Type. - * @return The value for the key or the default value if the key was not - * found. - */ - TQVariant readPropertyEntry( const TQString& pKey, - const TQVariant &aDefault) const; - - /** - * Reads the value of an entry specified by @p pKey in the current group. - * The value is treated as if it is of the type of the given default value. - * - * Note that only the following TQVariant types are allowed : String, - * StringList, List, Font, Point, Rect, Size, Color, Int, UInt, Bool, - * Double, DateTime and Date. - * - * @param pKey The key to search for. - * @param aDefault A default value returned if the key was not found or - * if the read value cannot be converted to the TQVariant::Type. - * @return The value for the key or the default value if the key was not - * found. - */ - TQVariant readPropertyEntry( const char *pKey, - const TQVariant &aDefault) const; - - /** - * Reads a list of strings. - * - * @deprecated - * - * @param pKey The key to search for - * @param list In this object, the read list will be returned. - * @param sep The list separator (default ",") - * @return The number of entries in the list. - */ - int readListEntry( const TQString& pKey, TQStrList &list, char sep = ',' ) const; - - /** - * Reads a list of strings. - * - * @deprecated - * - * @param pKey The key to search for - * @param list In this object, the read list will be returned. - * @param sep The list separator (default ",") - * @return The number of entries in the list. - */ - int readListEntry( const char *pKey, TQStrList &list, char sep = ',' ) const; - - /** - * Reads a list of strings. - * - * @param pKey The key to search for. - * @param sep The list separator (default is ","). - * @return The list. Empty if the entry does not exist. - */ - TQStringList readListEntry( const TQString& pKey, char sep = ',' ) const; - - /** - * Reads a list of strings. - * - * @param pKey The key to search for. - * @param sep The list separator (default is ","). - * @return The list. Empty if the entry does not exist. - */ - TQStringList readListEntry( const char *pKey, char sep = ',' ) const; - - /** - * Reads a list of strings, but returns a default if the key - * did not exist. - * @param pKey The key to search for. - * @param aDefault The default value to use if the key does not exist. - * @param sep The list separator (default is ","). - * @return The list. Contains @p aDefault if the Key does not exist. - * @since 3.3 - */ - TQStringList readListEntry( const char* pKey, const TQStringList& aDefault, - char sep = ',' ) const; - - /** - * Reads a list of Integers. - * - * @param pKey The key to search for. - * @return The list. Empty if the entry does not exist. - */ - TQValueList<int> readIntListEntry( const TQString& pKey ) const; - - /** - * Reads a list of Integers. - * - * @param pKey The key to search for. - * @return The list. Empty if the entry does not exist. - */ - TQValueList<int> readIntListEntry( const char *pKey ) const; - - /** - * Reads a path. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it as a path. This means, dollar expansion is activated - * for this value, so that e.g. $HOME gets expanded. - * - * @param pKey The key to search for. - * @param aDefault A default value returned if the key was not found. - * @return The value for this key. Can be TQString::null if aDefault is null. - */ - TQString readPathEntry( const TQString& pKey, const TQString & aDefault = TQString::null ) const; - - /** - * Reads a path. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it as a path. This means, dollar expansion is activated - * for this value, so that e.g. $HOME gets expanded. - * - * @param pKey The key to search for. - * @param aDefault A default value returned if the key was not found. - * @return The value for this key. Can be TQString::null if aDefault is null. - */ - TQString readPathEntry( const char *pKey, const TQString & aDefault = TQString::null ) const; - - /** - * Reads a list of string paths. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it as a list of paths. This means, dollar expansion is activated - * for this value, so that e.g. $HOME gets expanded. - * - * @param pKey The key to search for. - * @param sep The list separator (default is ","). - * @return The list. Empty if the entry does not exist. - * @since 3.1.3 - */ - TQStringList readPathListEntry( const TQString& pKey, char sep = ',' ) const; - - /** - * Reads a list of string paths. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it as a list of paths. This means, dollar expansion is activated - * for this value, so that e.g. $HOME gets expanded. - * - * @param pKey The key to search for. - * @param sep The list separator (default is ","). - * @return The list. Empty if the entry does not exist. - * @since 3.1.3 - */ - TQStringList readPathListEntry( const char *pKey, char sep = ',' ) const; - - - /** - * Reads a numerical value. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it numerically. - * - * @param pKey The key to search for. - * @param nDefault A default value returned if the key was not found or if - * the read value cannot be interpreted. - * @return The value for this key. - */ - int readNumEntry( const TQString& pKey, int nDefault = 0 ) const; - - /** - * Reads a numerical value. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it numerically. - * - * @param pKey The key to search for. - * @param nDefault A default value returned if the key was not found or if - * the read value cannot be interpreted. - * @return The value for this key. - */ - int readNumEntry( const char *pKey, int nDefault = 0 ) const; - - /** - * Reads an unsigned numerical value. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it numerically. - * - * @param pKey The key to search for. - * @param nDefault A default value returned if the key was not found or if - * the read value cannot be interpreted. - * @return The value for this key. - */ - unsigned int readUnsignedNumEntry( const TQString& pKey, unsigned int nDefault = 0 ) const; - - /** - * Reads an unsigned numerical value. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it numerically. - * - * @param pKey The key to search for. - * @param nDefault A default value returned if the key was not found or if - * the read value cannot be interpreted. - * @return The value for this key. - */ - unsigned int readUnsignedNumEntry( const char *pKey, unsigned int nDefault = 0 ) const; - - - /** - * Reads a numerical value. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it numerically. - * - * @param pKey The key to search for. - * @param nDefault A default value returned if the key was not found or if - * the read value cannot be interpreted. - * @return The value for this key. - */ - long readLongNumEntry( const TQString& pKey, long nDefault = 0 ) const; - - /** - * Reads a numerical value. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it numerically. - * - * @param pKey The key to search for. - * @param nDefault A default value returned if the key was not found or if - * the read value cannot be interpreted. - * @return The value for this key. - */ - long readLongNumEntry( const char *pKey, long nDefault = 0 ) const; - - /** - * Read an unsigned numerical value. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it numerically. - * - * @param pKey The key to search for. - * @param nDefault A default value returned if the key was not found or if - * the read value cannot be interpreted. - * @return The value for this key. - */ - unsigned long readUnsignedLongNumEntry( const TQString& pKey, unsigned long nDefault = 0 ) const; - - /** - * Read an unsigned numerical value. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it numerically. - * - * @param pKey The key to search for. - * @param nDefault A default value returned if the key was not found or if - * the read value cannot be interpreted. - * @return The value for this key. - */ - unsigned long readUnsignedLongNumEntry( const char *pKey, unsigned long nDefault = 0 ) const; - - /** - * Reads a 64-bit numerical value. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it numerically. - * - * @param pKey The key to search for. - * @param nDefault A default value returned if the key was not found or if - * the read value cannot be interpreted. - * @return The value for this key. - */ - TQ_INT64 readNum64Entry( const TQString& pKey, TQ_INT64 nDefault = 0 ) const; - - /** - * Reads a 64-bit numerical value. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it numerically. - * - * @param pKey The key to search for. - * @param nDefault A default value returned if the key was not found or if - * the read value cannot be interpreted. - * @return The value for this key. - */ - TQ_INT64 readNum64Entry( const char *pKey, TQ_INT64 nDefault = 0 ) const; - - /** - * Read an 64-bit unsigned numerical value. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it numerically. - * - * @param pKey The key to search for. - * @param nDefault A default value returned if the key was not found or if - * the read value cannot be interpreted. - * @return The value for this key. - */ - TQ_UINT64 readUnsignedNum64Entry( const TQString& pKey, TQ_UINT64 nDefault = 0 ) const; - - /** - * Read an 64-bit unsigned numerical value. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it numerically. - * - * @param pKey The key to search for. - * @param nDefault A default value returned if the key was not found or if - * the read value cannot be interpreted. - * @return The value for this key. - */ - TQ_UINT64 readUnsignedNum64Entry( const char *pKey, TQ_UINT64 nDefault = 0 ) const; - - /** - * Reads a floating point value. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it numerically. - * - * @param pKey The key to search for. - * @param nDefault A default value returned if the key was not found or if - * the read value cannot be interpreted. - * @return The value for this key. - */ - double readDoubleNumEntry( const TQString& pKey, double nDefault = 0.0 ) const; - - /** - * Reads a floating point value. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it numerically. - * - * @param pKey The key to search for. - * @param nDefault A default value returned if the key was not found or if - * the read value cannot be interpreted. - * @return The value for this key. - */ - double readDoubleNumEntry( const char *pKey, double nDefault = 0.0 ) const; - - /** - * Reads a TQFont value. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it as a font object. - * - * @param pKey The key to search for. - * @param pDefault A default value (null TQFont by default) returned if the - * key was not found or if the read value cannot be interpreted. - * @return The value for this key. - */ - TQFont readFontEntry( const TQString& pKey, const TQFont* pDefault = 0L ) const; - - /** - * Reads a TQFont value. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it as a font object. - * - * @param pKey The key to search for. - * @param pDefault A default value (null TQFont by default) returned if the - * key was not found or if the read value cannot be interpreted. - * @return The value for this key. - */ - TQFont readFontEntry( const char *pKey, const TQFont* pDefault = 0L ) const; - - /** - * Reads a boolean entry. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it as a boolean value. Currently "on", "yes", "1" and - * "true" are accepted as true, everything else if false. - * - * @param pKey The key to search for - * @param bDefault A default value returned if the key was not found. - * @return The value for this key. - */ - bool readBoolEntry( const TQString& pKey, bool bDefault = false ) const; - - /** - * Reads a boolean entry. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it as a boolean value. Currently "on", "yes", "1" and - * "true" are accepted as true, everything else if false. - * - * @param pKey The key to search for - * @param bDefault A default value returned if the key was not found. - * @return The value for this key. - */ - bool readBoolEntry( const char *pKey, bool bDefault = false ) const; - - /** - * Reads a TQRect entry. - * - * Read the value of an entry specified by pKey in the current group - * and interpret it as a TQRect object. - * - * @param pKey The key to search for - * @param pDefault A default value (null TQRect by default) returned if the - * key was not found or if the read value cannot be interpreted. - * @return The value for this key. - */ - TQRect readRectEntry( const TQString& pKey, const TQRect* pDefault = 0L ) const; - - /** - * Reads a TQRect entry. - * - * Read the value of an entry specified by pKey in the current group - * and interpret it as a TQRect object. - * - * @param pKey The key to search for - * @param pDefault A default value (null TQRect by default) returned if the - * key was not found or if the read value cannot be interpreted. - * @return The value for this key. - */ - TQRect readRectEntry( const char *pKey, const TQRect* pDefault = 0L ) const; - - /** - * Reads a TQPoint entry. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it as a TQPoint object. - * - * @param pKey The key to search for - * @param pDefault A default value (null TQPoint by default) returned if the - * key was not found or if the read value cannot be interpreted. - * @return The value for this key. - */ - TQPoint readPointEntry( const TQString& pKey, const TQPoint* pDefault = 0L ) const; - - /** - * Reads a TQPoint entry. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it as a TQPoint object. - * - * @param pKey The key to search for - * @param pDefault A default value (null TQPoint by default) returned if the - * key was not found or if the read value cannot be interpreted. - * @return The value for this key. - */ - TQPoint readPointEntry( const char *pKey, const TQPoint* pDefault = 0L ) const; - - /** - * Reads a TQSize entry. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it as a TQSize object. - * - * @param pKey The key to search for - * @param pDefault A default value (null TQSize by default) returned if the - * key was not found or if the read value cannot be interpreted. - * @return The value for this key. - */ - TQSize readSizeEntry( const TQString& pKey, const TQSize* pDefault = 0L ) const; - - /** - * Reads a TQSize entry. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it as a TQSize object. - * - * @param pKey The key to search for - * @param pDefault A default value (null TQSize by default) returned if the - * key was not found or if the read value cannot be interpreted. - * @return The value for this key. - */ - TQSize readSizeEntry( const char *pKey, const TQSize* pDefault = 0L ) const; - - - /** - * Reads a TQColor entry. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it as a color. - * - * @param pKey The key to search for. - * @param pDefault A default value (null TQColor by default) returned if the - * key was not found or if the value cannot be interpreted. - * @return The value for this key. - */ - TQColor readColorEntry( const TQString& pKey, const TQColor* pDefault = 0L ) const; - - /** - * Reads a TQColor entry. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it as a color. - * - * @param pKey The key to search for. - * @param pDefault A default value (null TQColor by default) returned if the - * key was not found or if the value cannot be interpreted. - * @return The value for this key. - */ - TQColor readColorEntry( const char *pKey, const TQColor* pDefault = 0L ) const; - - /** - * Reads a TQDateTime entry. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it as a date and time. - * - * @param pKey The key to search for. - * @param pDefault A default value ( tqcurrentDateTime() by default) - * returned if the key was not found or if the read value cannot be - * interpreted. - * @return The value for this key. - */ - TQDateTime readDateTimeEntry( const TQString& pKey, const TQDateTime* pDefault = 0L ) const; - - /** - * Reads a TQDateTime entry. - * - * Read the value of an entry specified by @p pKey in the current group - * and interpret it as a date and time. - * - * @param pKey The key to search for. - * @param pDefault A default value ( tqcurrentDateTime() by default) - * returned if the key was not found or if the read value cannot be - * interpreted. - * @return The value for this key. - */ - TQDateTime readDateTimeEntry( const char *pKey, const TQDateTime* pDefault = 0L ) const; - - /** - * Reads the value of an entry specified by @p pKey in the current group. - * The untranslated entry is returned, you normally do not need this. - * - * @param pKey The key to search for. - * @param aDefault A default value returned if the key was not found. - * @return The value for this key. - */ - TQString readEntryUntranslated( const TQString& pKey, - const TQString& aDefault = TQString::null ) const; - - /** - * Reads the value of an entry specified by @p pKey in the current group. - * The untranslated entry is returned, you normally do not need this. - * - * @param pKey The key to search for. - * @param aDefault A default value returned if the key was not found. - * @return The value for this key. - */ - TQString readEntryUntranslated( const char *pKey, - const TQString& aDefault = TQString::null ) const; - - /** - * Writes a key/value pair. - * - * This is stored in the most specific config file when destroying the - * config object or when calling sync(). - * - * If you want to write a path, please use writePathEntry(). - * - * @param pKey The key to write. - * @param pValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will - * not be written to disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const TQString& pKey, const TQString& pValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - /** - * Writes a key/value pair. - * - * This is stored in the most specific config file when destroying the - * config object or when calling sync(). - * - * @param pKey The key to write. - * @param pValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will - * not be written to disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const char *pKey, const TQString& pValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - /** - * writeEntry() Overridden to accept a property. - * - * Note: Unlike the other writeEntry() functions, the old value is - * _not_ returned here! - * - * @param pKey The key to write - * @param rValue The property to write - * @param bPersistent If @p bPersistent is false, the entry's dirty flag - * will not be set and thus the entry will not be - * written to disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - * - * @see writeEntry() - */ - void writeEntry( const TQString& pKey, const TQVariant& rValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - /** - * writeEntry() Overridden to accept a property. - * - * Note: Unlike the other writeEntry() functions, the old value is - * _not_ returned here! - * - * @param pKey The key to write - * @param rValue The property to write - * @param bPersistent If @p bPersistent is false, the entry's dirty flag - * will not be set and thus the entry will not be - * written to disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - * - * @see writeEntry() - */ - void writeEntry( const char *pKey, const TQVariant& rValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - /** - * writeEntry() overridden to accept a list of strings. - * - * Note: Unlike the other writeEntry() functions, the old value is - * _not_ returned here! - * - * @param pKey The key to write - * @param rValue The list to write - * @param sep The list separator (default is ","). - * @param bPersistent If @p bPersistent is false, the entry's dirty flag - * will not be set and thus the entry will not be - * written to disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - * - * @see writeEntry() - */ - void writeEntry( const TQString& pKey, const TQStrList &rValue, - char sep = ',', bool bPersistent = true, bool bGlobal = false, bool bNLS = false ); - /** - * writeEntry() overridden to accept a list of strings. - * - * Note: Unlike the other writeEntry() functions, the old value is - * _not_ returned here! - * - * @param pKey The key to write - * @param rValue The list to write - * @param sep The list separator (default is ","). - * @param bPersistent If @p bPersistent is false, the entry's dirty flag - * will not be set and thus the entry will not be - * written to disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - * - * @see writeEntry() - */ - void writeEntry( const char *pKey, const TQStrList &rValue, - char sep = ',', bool bPersistent = true, bool bGlobal = false, bool bNLS = false ); - - /** - * writeEntry() overridden to accept a list of strings. - * - * Note: Unlike the other writeEntry() functions, the old value is - * _not_ returned here! - * - * @param pKey The key to write - * @param rValue The list to write - * @param sep The list separator (default is ","). - * @param bPersistent If @p bPersistent is false, the entry's dirty flag - * will not be set and thus the entry will not be - * written to disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - * - * @see writeEntry() - */ - void writeEntry( const TQString& pKey, const TQStringList &rValue, - char sep = ',', bool bPersistent = true, bool bGlobal = false, bool bNLS = false ); - /** - * writeEntry() overridden to accept a list of strings. - * - * Note: Unlike the other writeEntry() functions, the old value is - * _not_ returned here! - * - * @param pKey The key to write - * @param rValue The list to write - * @param sep The list separator (default is ","). - * @param bPersistent If @p bPersistent is false, the entry's dirty flag - * will not be set and thus the entry will not be - * written to disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - * - * @see writeEntry() - */ - void writeEntry( const char *pKey, const TQStringList &rValue, - char sep = ',', bool bPersistent = true, bool bGlobal = false, bool bNLS = false ); - - - /** - * writeEntry() overridden to accept a list of Integers. - * - * Note: Unlike the other writeEntry() functions, the old value is - * _not_ returned here! - * - * @param pKey The key to write - * @param rValue The list to write - * @param bPersistent If @p bPersistent is false, the entry's dirty flag - * will not be set and thus the entry will not be - * written to disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - * - * @see writeEntry() - */ - void writeEntry( const TQString& pKey, const TQValueList<int>& rValue, - bool bPersistent = true, bool bGlobal = false, bool bNLS = false ); - /** - * writeEntry() overridden to accept a list of Integers. - * - * Note: Unlike the other writeEntry() functions, the old value is - * _not_ returned here! - * - * @param pKey The key to write - * @param rValue The list to write - * @param bPersistent If @p bPersistent is false, the entry's dirty flag - * will not be set and thus the entry will not be - * written to disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - * - * @see writeEntry() - */ - void writeEntry( const char *pKey, const TQValueList<int>& rValue, - bool bPersistent = true, bool bGlobal = false, bool bNLS = false ); - - /** - * Write a (key/value) pair. - * - * This is stored to the most specific config file when destroying the - * config object or when calling sync(). - * - * @param pKey The key to write. - * @param pValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will - * not be written to disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const TQString& pKey, const char *pValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ) - { writeEntry(pKey, TQString::tqfromLatin1(pValue), bPersistent, bGlobal, bNLS); } - /** - * Write a (key/value) pair. - * - * This is stored to the most specific config file when destroying the - * config object or when calling sync(). - * - * @param pKey The key to write. - * @param pValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will - * not be written to disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const char *pKey, const char *pValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ) - { writeEntry(pKey, TQString::tqfromLatin1(pValue), bPersistent, bGlobal, bNLS); } - - /** - * Write a (key/value) pair. - * Same as above, but writes a numerical value. - * - * @param pKey The key to write. - * @param nValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const TQString& pKey, int nValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - /** - * Write a (key/value) pair. - * Same as above, but writes a numerical value. - * - * @param pKey The key to write. - * @param nValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const char *pKey, int nValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - /** - * Writes a (key/value) pair. - * Same as above, but writes an unsigned numerical value. - * - * @param pKey The key to write. - * @param nValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const TQString& pKey, unsigned int nValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - /** - * Writes a (key/value) pair. - * Same as above, but writes an unsigned numerical value. - * - * @param pKey The key to write. - * @param nValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const char *pKey, unsigned int nValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - /** - * Writes a (key/value) pair. - * Same as above, but write a long numerical value. - * - * @param pKey The key to write. - * @param nValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const TQString& pKey, long nValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - /** - * Writes a (key/value) pair. - * Same as above, but write a long numerical value. - * - * @param pKey The key to write. - * @param nValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const char *pKey, long nValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - /** - * Writes a (key/value) pair. - * Same as above, but writes an unsigned long numerical value. - * - * @param pKey The key to write. - * @param nValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const TQString& pKey, unsigned long nValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - /** - * Writes a (key/value) pair. - * Same as above, but writes an unsigned long numerical value. - * - * @param pKey The key to write. - * @param nValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const char *pKey, unsigned long nValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - /** - * Writes a (key/value) pair. - * Same as above, but write a 64-bit numerical value. - * - * @param pKey The key to write. - * @param nValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const TQString& pKey, TQ_INT64 nValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - /** - * Writes a (key/value) pair. - * Same as above, but write a long numerical value. - * - * @param pKey The key to write. - * @param nValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const char *pKey, TQ_INT64 nValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - /** - * Writes a (key/value) pair. - * Same as above, but writes an unsigned 64-bit numerical value. - * - * @param pKey The key to write. - * @param nValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const TQString& pKey, TQ_UINT64 nValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - /** - * Writes a (key/value) pair. - * Same as above, but writes an unsigned 64-bit numerical value. - * - * @param pKey The key to write. - * @param nValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const char *pKey, TQ_UINT64 nValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - /** - * Writes a (key/value) pair. - * Same as above, but writes a floating-point value. - * @param pKey The key to write. - * @param nValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param format @p format determines the format to which the value - * is converted. Default is 'g'. - * @param precision @p precision sets the precision with which the - * value is converted. Default is 6 as in TQString. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const TQString& pKey, double nValue, - bool bPersistent = true, bool bGlobal = false, - char format = 'g', int precision = 6, - bool bNLS = false ); - /** - * Writes a (key/value) pair. - * Same as above, but writes a floating-point value. - * @param pKey The key to write. - * @param nValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param format @p format determines the format to which the value - * is converted. Default is 'g'. - * @param precision @p precision sets the precision with which the - * value is converted. Default is 6 as in TQString. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const char *pKey, double nValue, - bool bPersistent = true, bool bGlobal = false, - char format = 'g', int precision = 6, - bool bNLS = false ); - - /** - * Writes a (key/value) pair. - * Same as above, but writes a boolean value. - * - * @param pKey The key to write. - * @param bValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const TQString& pKey, bool bValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - /** - * Writes a (key/value) pair. - * Same as above, but writes a boolean value. - * - * @param pKey The key to write. - * @param bValue The value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const char *pKey, bool bValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - /** - * Writes a (key/value) pair. - * Same as above, but writes a font value. - * - * @param pKey The key to write. - * @param rFont The font value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const TQString& pKey, const TQFont& rFont, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - /** - * Writes a (key/value) pair. - * Same as above, but writes a font value. - * - * @param pKey The key to write. - * @param rFont The font value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const char *pKey, const TQFont& rFont, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - /** - * Writes a (key/value) pair. - * Same as above, but write a color entry. - * - * Note: Unlike the other writeEntry() functions, the old value is - * _not_ returned here! - * - * @param pKey The key to write. - * @param rColor The color value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const TQString& pKey, const TQColor& rColor, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - /** - * Writes a (key/value) pair. - * Same as above, but write a color entry. - * - * Note: Unlike the other writeEntry() functions, the old value is - * _not_ returned here! - * - * @param pKey The key to write. - * @param rColor The color value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const char *pKey, const TQColor& rColor, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - /** - * Writes a (key/value) pair. - * Same as above, but writes a date and time entry. - * - * Note: Unlike the other writeEntry() functions, the old value is - * @em not returned here! - * - * @param pKey The key to write. - * @param rDateTime The date and time value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const TQString& pKey, const TQDateTime& rDateTime, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - /** - * Writes a (key/value) pair. - * Same as above, but writes a date and time entry. - * - * Note: Unlike the other writeEntry() functions, the old value is - * @em not returned here! - * - * @param pKey The key to write. - * @param rDateTime The date and time value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const char *pKey, const TQDateTime& rDateTime, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - - /** - * Writes a (key/value) pair. - * Same as above, but writes a rectangle. - * - * Note: Unlike the other writeEntry() functions, the old value is - * _not_ returned here! - * - * @param pKey The key to write. - * @param rValue The rectangle value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const TQString& pKey, const TQRect& rValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - /** - * Writes a (key/value) pair. - * Same as above, but writes a rectangle. - * - * Note: Unlike the other writeEntry() functions, the old value is - * _not_ returned here! - * - * @param pKey The key to write. - * @param rValue The rectangle value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const char *pKey, const TQRect& rValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - /** - * Writes a (key/value) pair. - * Same as above, but writes a point. - * - * Note: Unlike the other writeEntry() functions, the old value is - * _not_ returned here! - * - * @param pKey The key to write. - * @param rValue The point value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const TQString& pKey, const TQPoint& rValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - /** - * Writes a (key/value) pair. - * Same as above, but writes a point. - * - * Note: Unlike the other writeEntry() functions, the old value is - * _not_ returned here! - * - * @param pKey The key to write. - * @param rValue The point value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const char *pKey, const TQPoint& rValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - /** - * Writes a (key/value) pair. - * Same as above, but writes a size. - * - * Note: Unlike the other writeEntry() functions, the old value is - * _not_ returned here! - * - * @param pKey The key to write. - * @param rValue The size value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const TQString& pKey, const TQSize& rValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - /** - * Writes a (key/value) pair. - * Same as above, but writes a size. - * - * Note: Unlike the other writeEntry() functions, the old value is - * _not_ returned here! - * - * @param pKey The key to write. - * @param rValue The size value to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writeEntry( const char *pKey, const TQSize& rValue, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - /** - * Writes a file path. - * - * It is checked whether the path is located under $HOME. If so the - * path is written out with the user's home-directory replaced with - * $HOME. The path should be read back with readPathEntry() - * - * @param pKey The key to write. - * @param path The path to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writePathEntry( const TQString& pKey, const TQString & path, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - /** - * Writes a file path. - * - * It is checked whether the path is located under $HOME. If so the - * path is written out with the user's home-directory replaced with - * $HOME. The path should be read back with readPathEntry() - * - * @param pKey The key to write. - * @param path The path to write. - * @param bPersistent If @p bPersistent is false, the entry's dirty - * flag will not be set and thus the entry will not be written to - * disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - */ - void writePathEntry( const char *pKey, const TQString & path, - bool bPersistent = true, bool bGlobal = false, - bool bNLS = false ); - - /** - * writePathEntry() overridden to accept a list of paths (strings). - * - * It is checked whether the paths are located under $HOME. If so each of - * the paths are written out with the user's home-directory replaced with - * $HOME. The paths should be read back with readPathListEntry() - * - * @param pKey The key to write - * @param rValue The list to write - * @param sep The list separator (default is ","). - * @param bPersistent If @p bPersistent is false, the entry's dirty flag - * will not be set and thus the entry will not be - * written to disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - * - * @see writePathEntry() - * @see readPathListEntry() - * @since 3.1.3 - */ - void writePathEntry( const TQString& pKey, const TQStringList &rValue, - char sep = ',', bool bPersistent = true, bool bGlobal = false, bool bNLS = false ); - /** - * writePathEntry() overridden to accept a list of paths (strings). - * - * It is checked whether the paths are located under $HOME. If so each of - * the paths are written out with the user's home-directory replaced with - * $HOME. The paths should be read back with readPathListEntry() - * - * @param pKey The key to write - * @param rValue The list to write - * @param sep The list separator (default is ","). - * @param bPersistent If @p bPersistent is false, the entry's dirty flag - * will not be set and thus the entry will not be - * written to disk at deletion time. - * @param bGlobal If @p bGlobal is true, the pair is not saved to the - * application specific config file, but to the - * global KDE config file. - * @param bNLS If @p bNLS is true, the locale tag is added to the key - * when writing it back. - * - * @see writePathEntry() - * @see readPathListEntry() - * @since 3.1.3 - */ - void writePathEntry( const char *pKey, const TQStringList &rValue, - char sep = ',', bool bPersistent = true, bool bGlobal = false, bool bNLS = false ); - - - /** - * Deletes the entry specified by @p pKey in the current group. - * - * @param pKey The key to delete. - * @param bGlobal If @p bGlobal is true, the pair is not removed from the - * application specific config file, but to the global KDE config file. - * @param bNLS If @p bNLS is true, the key with the locale tag is removed. - */ - void deleteEntry( const TQString& pKey, - bool bNLS = false, bool bGlobal = false); - /** - * Deletes the entry specified by @p pKey in the current group. - * - * @param pKey The key to delete. - * @param bGlobal If @p bGlobal is true, the pair is not removed from the - * application specific config file, but from the global KDE config file. - * @param bNLS If @p bNLS is true, the key with the locale tag is removed. - */ - void deleteEntry( const char *pKey, - bool bNLS = false, bool bGlobal = false); - - /** - * Deletes a configuration entry group - * - * If the group is not empty and bDeep is false, nothing gets - * deleted and false is returned. - * If this group is the current group and it is deleted, the - * current group is undefined and should be set with setGroup() - * before the next operation on the configuration object. - * - * @param group The name of the group - * @param bDeep Specify whether non-empty groups should be completely - * deleted (including their entries). - * @param bGlobal If @p bGlobal is true, the group is not removed from the - * application specific config file, but from the global KDE config file. - * @return If the group is not empty and bDeep is false, - * deleteGroup returns false. - */ - bool deleteGroup( const TQString& group, bool bDeep = true, bool bGlobal = false ); - - - /** - * Turns on or off "dollar expansion" (see KConfigBase introduction) - * when reading config entries. - * Dollar sign expansion is initially OFF. - * - * @param _bExpand Tf true, dollar expansion is turned on. - */ - void setDollarExpansion( bool _bExpand = true ) { bExpand = _bExpand; } - - /** - * Returns whether dollar expansion is on or off. It is initially OFF. - * - * @return true if dollar expansion is on. - */ - bool isDollarExpansion() const { return bExpand; } - - /** - * Mark the config object as "clean," i.e. don't write dirty entries - * at destruction time. If @p bDeep is false, only the global dirty - * flag of the KConfig object gets cleared. If you then call - * writeEntry() again, the global dirty flag is set again and all - * dirty entries will be written at a subsequent sync() call. - * - * Classes that derive from KConfigBase should override this - * method and implement storage-specific behavior, as well as - * calling the KConfigBase::rollback() explicitly in the initializer. - * - * @param bDeep If true, the dirty flags of all entries are cleared, - * as well as the global dirty flag. - */ - virtual void rollback( bool bDeep = true ); - - /** - * Flushes all changes that currently reside only in memory - * back to disk / permanent storage. Dirty configuration entries are - * written to the most specific file available. - * - * Asks the back end to flush out all pending writes, and then calls - * rollback(). No changes are made if the object has @p readOnly - * status. - * - * You should call this from your destructor in derivative classes. - * - * @see rollback(), #isReadOnly() - */ - virtual void sync(); - - /** - * Checks whether the config file has any dirty (modified) entries. - * @return true if the config file has any dirty (modified) entries. - */ - bool isDirty() const { return bDirty; } - - /** - * Sets the config object's read-only status. - * - * @param _ro If true, the config object will not write out any - * changes to disk even if it is destroyed or sync() is called. - * - */ - virtual void setReadOnly(bool _ro) { bReadOnly = _ro; } - - /** - * Returns the read-only status of the config object. - * - * @return The read-only status. - */ - bool isReadOnly() const { return bReadOnly; } - - /** - * Checks whether the key has an entry in the currently active group. - * Use this to determine whether a key is not specified for the current - * group (hasKey() returns false). Keys with null data are considered - * nonexistent. - * - * @param key The key to search for. - * @return If true, the key is available. - */ - bool hasKey( const TQString& key ) const; - - /** - * 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. - * - * @param group A group to get keys from. - * @return A map of entries in the group specified, indexed by key. - * The returned map may be empty if the group is not found. - * @see QMap - */ - virtual TQMap<TQString, TQString> entryMap(const TQString &group) const = 0; - - /** - * Reparses all configuration files. This is useful for programs - * that use stand alone graphical configuration tools. The base - * method implemented here only clears the group list and then - * appends the default group. - * - * Derivative classes should clear any internal data structures and - * then simply call parseConfigFiles() when implementing this - * method. - * - * @see parseConfigFiles() - */ - virtual void reparseConfiguration() = 0; - - /** - * Checks whether this configuration file can be modified. - * @return whether changes may be made to this configuration file. - */ - bool isImmutable() const; - - /** - * Checks whether it is possible to change the given group. - * @param group the group to check - * @return whether changes may be made to @p group in this configuration - * file. - */ - bool groupIsImmutable(const TQString &group) const; - - /** - * Checks whether it is possible to change the given entry. - * @param key the key to check - * @return whether the entry @p key may be changed in the current group - * in this configuration file. - */ - bool entryIsImmutable(const TQString &key) const; - - /** - * Possible return values for getConfigState(). - * - * @see getConfigState() - */ - enum ConfigState { NoAccess, ReadOnly, ReadWrite }; - - /** - * Returns the state of the app-config object. - * - * Possible return values - * are NoAccess (the application-specific config file could not be - * opened neither read-write nor read-only), ReadOnly (the - * application-specific config file is opened read-only, but not - * read-write) and ReadWrite (the application-specific config - * file is opened read-write). - * - * @see ConfigState() - * @return the state of the app-config object - */ - ConfigState getConfigState() const; - - /** - * Check whether the config files are writable. - * @param warnUser Warn the user if the configuration files are not writable. - * @return Indicates that all of the configuration files used are writable. - * @since 3.2 - */ - bool checkConfigFilesWritable(bool warnUser); - - /** - * When set, all readEntry and readXXXEntry calls return the system - * wide (default) values instead of the user's preference. - * This is off by default. - * @since 3.2 - */ - void setReadDefaults(bool b); - - /** - * @returns true if all readEntry and readXXXEntry calls return the system - * wide (default) values instead of the user's preference. - * @since 3.2 - */ - bool readDefaults() const; - - /** - * Reverts the entry with key @p key in the current group in the - * application specific config file to either the system wide (default) - * value or the value specified in the global KDE config file. - * - * To revert entries in the global KDE config file, the global KDE config - * file should be opened explicitly in a separate config object. - * - * @param key The key of the entry to revert. - * @since 3.2 - */ - void revertToDefault(const TQString &key); - - /** - * Returns whether a default is specified for an entry in either the - * system wide configuration file or the global KDE config file. - * - * If an application computes a default value at runtime for - * a certain entry, e.g. like: - * \code - * TQColor computedDefault = kapp->palette().color(TQPalette::Active, TQColorGroup::Text) - * TQColor color = config->readEntry(key, computedDefault); - * \encode - * - * Then it may wish to make the following check before - * writing back changes: - * \code - * if ( (value == computedDefault) && !config->hasDefault(key) ) - * config->revertToDefault(key) - * else - * config->writeEntry(key, value) - * \endcode - * - * This ensures that as long as the entry is not modified to differ from - * the computed default, the application will keep using the computed default - * and will follow changes the computed default makes over time. - * @param key The key of the entry to check. - * @since 3.2 - */ - bool hasDefault(const TQString &key) const; - -protected: - /** - * Reads the locale and put in the configuration data struct. - * Note that this should be done in the constructor, but this is not - * possible due to some mutual dependencies in KApplication::init() - */ - void setLocale(); - - /** - * Sets the global dirty flag of the config object - * - * @param _bDirty How to mark the object's dirty status - */ - virtual void setDirty(bool _bDirty = true) { bDirty = _bDirty; } - - /** - * Parses all configuration files for a configuration object. - * - * The actual parsing is done by the associated KConfigBackEnd. - */ - virtual void parseConfigFiles(); - - /** - * 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. - * - * @param pGroup The group to provide a KEntryMap for. - * @return The map of the entries in the group. - * @internal - */ - virtual KEntryMap internalEntryMap( const TQString& pGroup ) const = 0; - - /** - * Returns a map (tree) of the entries in the tree. - * - * Do not use this function, the implementation / return type are - * subject to change. - * - * @return A map of the entries in the tree. - * - * @internal - * - */ - virtual KEntryMap internalEntryMap() const = 0; - - /** - * Inserts a (key/value) pair into the internal storage mechanism of - * the configuration object. Classes that derive from KConfigBase - * will need to implement this method in a storage-specific manner. - * - * Do not use this function, the implementation / return type are - * subject to change. - * - * @param _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. - * @param _data the KEntry that is to be stored. - * @param _checkGroup When false, assume that the group already exists. - * @internal - */ - virtual void putData(const KEntryKey &_key, const KEntry &_data, bool _checkGroup = true) = 0; - - /** - * Looks up an entry in the config object's internal structure. - * Classes that derive from KConfigBase will need to implement this - * method in a storage-specific manner. - * - * Do not use this function, the implementation and return type are - * subject to change. - * - * @param _key The key to look up It contains information both on - * the group of the key and the entry's key itself. - * @return The KEntry value (data) found for the key. @p KEntry.aValue - * will be the null string if nothing was located. - * @internal - */ - virtual KEntry lookupData(const KEntryKey &_key) const = 0; - - virtual bool internalHasGroup(const TQCString &group) const = 0; - - /** - * A back end for loading/saving to disk in a particular format. - */ - KConfigBackEnd *backEnd; -public: - /** - * Overloaded public methods: - */ - void setGroup( const TQCString &pGroup ); - void setGroup( const char *pGroup ); - bool hasGroup(const TQCString &_pGroup) const; - bool hasGroup(const char *_pGroup) const; - bool hasKey( const char *pKey ) const; - -protected: - TQCString readEntryUtf8( const char *pKey) const; - bool hasTranslatedKey( const char *pKey ) const; - - /** - * The currently selected group. */ - TQCString mGroup; - - /** - * The locale to retrieve keys under if possible, i.e en_US or fr. */ - TQCString aLocaleString; - - /** - * Indicates whether there are any dirty entries in the config object - * that need to be written back to disk. */ - bool bDirty; - - bool bLocaleInitialized; - bool bReadOnly; // currently only used by KSimpleConfig - mutable bool bExpand; // whether dollar expansion is used - -protected: - virtual void virtual_hook( int id, void* data ); -private: - class KConfigBasePrivate; - KConfigBasePrivate *d; - - void writeEntry( const char *pKey, const TQString &rValue, - bool bPersistent, bool bGlobal, bool bNLS, bool bExpand ); - void writeEntry( const char *pKey, const TQStringList &rValue, - char sep, bool bPersistent, bool bGlobal, bool bNLS, bool bExpand ); - -}; - -class KConfigGroupSaverPrivate; - -/** - * Helper class to facilitate working with KConfig / KSimpleConfig - * groups. - * - * Careful programmers always set the group of a - * KConfig KSimpleConfig object to the group they want to read from - * and set it back to the old one of afterwards. This is usually - * written as: - * \code - * - * TQString oldgroup config->group(); - * config->setGroup( "TheGroupThatIWant" ); - * ... - * config->writeEntry( "Blah", "Blubb" ); - * - * config->setGroup( oldgroup ); - * \endcode - * - * In order to facilitate this task, you can use - * KConfigGroupSaver. Simply construct such an object ON THE STACK - * when you want to switch to a new group. Then, when the object goes - * out of scope, the group will automatically be restored. If you - * want to use several different groups within a function or method, - * you can still use KConfigGroupSaver: Simply enclose all work with - * one group (including the creation of the KConfigGroupSaver object) - * in one block. - * - * @deprecated This class is deprecated and will be removed in KDE 4. - * KConfigGroup provides similar functionality in a more object oriented - * way. - * - * @author Matthias Kalle Dalheimer <kalle@kde.org> - * @see KConfigBase, KConfig, KSimpleConfig, KConfigGroup - * @short Helper class for easier use of KConfig/KSimpleConfig groups - */ - -class KDECORE_EXPORT KConfigGroupSaver // KDE4 remove -{ -public: - /** - * Constructor. You pass a pointer to the KConfigBase-derived - * object you want to work with and a string indicating the _new_ - * group. - * - * @param config The KConfigBase-derived object this - * KConfigGroupSaver works on. - * @param group The new group that the config object should switch to. - */ - KConfigGroupSaver( KConfigBase* config, TQString group ) - /* KDE 4 : make the second parameter const TQString & */ - : _config(config), _oldgroup(config->group()) - { _config->setGroup( group ); } - - KConfigGroupSaver( KConfigBase* config, const char *group ) - : _config(config), _oldgroup(config->group()) - { _config->setGroup( group ); } - - KConfigGroupSaver( KConfigBase* config, const TQCString &group ) - : _config(config), _oldgroup(config->group()) - { _config->setGroup( group ); } - - ~KConfigGroupSaver() { _config->setGroup( _oldgroup ); } - - KConfigBase* config() { return _config; }; - -private: - KConfigBase* _config; - TQString _oldgroup; - - KConfigGroupSaver(const KConfigGroupSaver&); - KConfigGroupSaver& operator=(const KConfigGroupSaver&); - - KConfigGroupSaverPrivate *d; -}; - -class KConfigGroupPrivate; - -/** - * A KConfigBase derived class for one specific group in a KConfig object. - */ -class KDECORE_EXPORT KConfigGroup: public KConfigBase -{ -public: - /** - * Construct a config group corresponding to @p group in @p master. - * @p group is the group name encoded in UTF-8. - */ - KConfigGroup(KConfigBase *master, const TQCString &group); - /** - * This is an overloaded constructor provided for convenience. - * It behaves essentially like the above function. - * - * Construct a config group corresponding to @p group in @p master - */ - KConfigGroup(KConfigBase *master, const TQString &group); - /** - * This is an overloaded constructor provided for convenience. - * It behaves essentially like the above function. - * - * Construct a config group corresponding to @p group in @p master - * @p group is the group name encoded in UTF-8. - */ - KConfigGroup(KConfigBase *master, const char * group); - - /** - * Delete all entries in the entire group - * @param bGlobal If @p bGlobal is true, the entries are not removed - * from the application specific config file, but from the global - * KDE config file. - */ - void deleteGroup(bool bGlobal = false); - - /** - * Checks whether it is possible to change this group. - * @return whether changes may be made to this group in this configuration - * file. - * @since 3.4 - */ - bool groupIsImmutable() const; - - // The following functions are reimplemented: - virtual void setDirty(bool _bDirty); - virtual void putData(const KEntryKey &_key, const KEntry &_data, bool _checkGroup = true); - virtual KEntry lookupData(const KEntryKey &_key) const; - virtual void sync(); - -private: - // Hide the following members: - void setGroup() { } - void setDesktopGroup() { } - void group() { } - void hasGroup() { } - void setReadOnly(bool) { } - void isDirty() { } - - // The following members are not used. - virtual TQStringList groupList() const { return TQStringList(); } - virtual void rollback(bool) { } - virtual void reparseConfiguration() { } - virtual TQMap<TQString, TQString> entryMap(const TQString &) const - { return TQMap<TQString,TQString>(); } - virtual KEntryMap internalEntryMap( const TQString&) const - { return KEntryMap(); } - virtual KEntryMap internalEntryMap() const - { return KEntryMap(); } - virtual bool internalHasGroup(const TQCString &) const - { return false; } - - void getConfigState() { } - - KConfigBase *mMaster; -protected: - virtual void virtual_hook( int id, void* data ); -private: - KConfigGroupPrivate* d; -}; - -#endif |