diff options
| author | Jenkins CI <null@kde.org> | 2013-12-18 00:45:18 +0000 | 
|---|---|---|
| committer | Jenkins CI <null@kde.org> | 2013-12-18 00:45:18 +0000 | 
| commit | 867e7a50e6396338ab4fe9aa22ad141e4cd344d2 (patch) | |
| tree | 1d6f8d6c912fa04dc268b5580bcfe696fa538743 /src/core/kconfig_p.h | |
| parent | c38b88497a833e482e6892b72c8f52adec6de857 (diff) | |
| download | kconfig-867e7a50e6396338ab4fe9aa22ad141e4cd344d2.tar.gz kconfig-867e7a50e6396338ab4fe9aa22ad141e4cd344d2.tar.bz2 | |
Move kconfig code to the root directory.
Diffstat (limited to 'src/core/kconfig_p.h')
| -rw-r--r-- | src/core/kconfig_p.h | 110 | 
1 files changed, 110 insertions, 0 deletions
| diff --git a/src/core/kconfig_p.h b/src/core/kconfig_p.h new file mode 100644 index 00000000..e6fb1ca0 --- /dev/null +++ b/src/core/kconfig_p.h @@ -0,0 +1,110 @@ +/* +   This file is part of the KDE libraries +   Copyright (c) 2006, 2007 Thomas Braxton <kde.braxton@gmail.com> +   Copyright (c) 2001 Waldo Bastian <bastian@kde.org> +   Copyright (c) 1999 Preston Brown <pbrown@kde.org> +   Copyright (c) 1997 Matthias Kalle Dalheimer <kalle@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 KCONFIG_P_H +#define KCONFIG_P_H + +#include "kconfigdata.h" +#include "kconfigbackend.h" +#include "kconfiggroup.h" + +#include <QtCore/QStringList> +#include <QtCore/QStack> +#include <QtCore/QFile> +#include <QtCore/QDir> + +class KConfigPrivate +{ +    friend class KConfig; +public: +    KConfig::OpenFlags openFlags; +    QStandardPaths::StandardLocation resourceType; + +    void changeFileName(const QString& fileName); + +    // functions for KConfigGroup +    bool canWriteEntry(const QByteArray& group, const char* key, bool isDefault=false) const; +    QString lookupData(const QByteArray& group, const char* key, KEntryMap::SearchFlags flags, +                       bool* expand) const; +    QByteArray lookupData(const QByteArray& group, const char* key, KEntryMap::SearchFlags flags) const; + +    void putData(const QByteArray& group, const char* key, const QByteArray& value, +                 KConfigBase::WriteConfigFlags flags, bool expand=false); +    void revertEntry(const QByteArray& group, const char* key); +    QStringList groupList(const QByteArray& group) const; +    // copies the entries from @p source to @p otherGroup changing all occurrences +    // of @p source with @p destination +    void copyGroup(const QByteArray& source, const QByteArray& destination, +                   KConfigGroup *otherGroup, KConfigBase::WriteConfigFlags flags) const; +    QStringList keyListImpl(const QByteArray& theGroup) const; +    QSet<QByteArray> allSubGroups(const QByteArray& parentGroup) const; +    bool hasNonDeletedEntries(const QByteArray& group) const; + +    static QString expandString(const QString& value); + +protected: +    QExplicitlySharedDataPointer<KConfigBackend> mBackend; + +    KConfigPrivate(KConfig::OpenFlags flags, +                   QStandardPaths::StandardLocation type); + +    virtual ~KConfigPrivate() +    { +    } + +    bool bDynamicBackend:1; // do we own the backend? +private: +    bool bDirty:1; +    bool bLocaleInitialized:1; +    bool bReadDefaults:1; +    bool bFileImmutable:1; +    bool bForceGlobal:1; +    bool bSuppressGlobal:1; + +   QString sGlobalFileName; +   static bool mappingsRegistered; + + +    KEntryMap entryMap; +    QString backendType; +    QStack<QString> extraFiles; + +    QString locale; +    QString fileName; +    QString etc_kderc; +    KConfigBase::AccessMode configState; + +    bool wantGlobals() const { return openFlags&KConfig::IncludeGlobals && !bSuppressGlobal; } +    bool wantDefaults() const { return openFlags&KConfig::CascadeConfig; } +    bool isSimple() const { return openFlags == KConfig::SimpleConfig; } +    bool isReadOnly() const { return configState == KConfig::ReadOnly; } + +    bool setLocale(const QString& aLocale); +    QStringList getGlobalFiles() const; +    void parseGlobalFiles(); +    void parseConfigFiles(); +    void initCustomized(KConfig*); +    bool lockLocal(); +}; + +#endif // KCONFIG_P_H | 
