KSharedConfig
#include <KSharedConfig>

Public Types | |
typedef QExplicitlySharedDataPointer< KSharedConfig > | Ptr |
![]() | |
enum | OpenFlag { IncludeGlobals = 0x01, CascadeConfig = 0x02, SimpleConfig = 0x00, NoCascade = IncludeGlobals, NoGlobals = CascadeConfig, FullConfig = IncludeGlobals | CascadeConfig } |
typedef QFlags< OpenFlag > | OpenFlags |
![]() | |
enum | AccessMode { NoAccess, ReadOnly, ReadWrite } |
enum | WriteConfigFlag { Persistent = 0x01, Global = 0x02, Localized = 0x04, Notify = 0x08 | Persistent, Normal = Persistent } |
typedef QFlags< WriteConfigFlag > | WriteConfigFlags |
Static Public Member Functions | |
static KSharedConfig::Ptr | openConfig (const QString &fileName=QString(), OpenFlags mode=FullConfig, QStandardPaths::StandardLocation type=QStandardPaths::GenericConfigLocation) |
static KSharedConfig::Ptr | openStateConfig (const QString &fileName=QString()) |
![]() | |
static QString | mainConfigName () |
static void | setMainConfigName (const QString &str) |
Additional Inherited Members | |
![]() | |
KConfig (const QString &file, const QString &backend, QStandardPaths::StandardLocation type=QStandardPaths::GenericConfigLocation) | |
KConfig (const QString &file=QString(), OpenFlags mode=FullConfig, QStandardPaths::StandardLocation type=QStandardPaths::GenericConfigLocation) | |
void | checkUpdate (const QString &id, const QString &updateFile) |
KConfig * | copyTo (const QString &file, KConfig *config=nullptr) const |
QMap< QString, QString > | entryMap (const QString &aGroup=QString()) const |
QStringList | groupList () const override |
bool | isDirty () const |
QStandardPaths::StandardLocation | locationType () const |
void | markAsClean () override |
QString | name () const |
OpenFlags | openFlags () const |
void | reparseConfiguration () |
bool | sync () override |
AccessMode | accessMode () const override |
bool | isConfigWritable (bool warnUser) |
void | addConfigSources (const QStringList &sources) |
QStringList | additionalConfigSources () const |
QString | locale () const |
bool | setLocale (const QString &aLocale) |
void | setReadDefaults (bool b) |
bool | readDefaults () const |
bool | isImmutable () const override |
void | setForceGlobal (bool force) |
bool | forceGlobal () const |
![]() | |
virtual | ~KConfigBase () |
void | deleteGroup (const char *group, WriteConfigFlags flags=Normal) |
void | deleteGroup (const QByteArray &group, WriteConfigFlags flags=Normal) |
void | deleteGroup (const QString &group, WriteConfigFlags flags=Normal) |
KConfigGroup | group (const char *group) |
const KConfigGroup | group (const char *group) const |
KConfigGroup | group (const QByteArray &group) |
const KConfigGroup | group (const QByteArray &group) const |
KConfigGroup | group (const QString &group) |
const KConfigGroup | group (const QString &group) const |
bool | hasGroup (const char *group) const |
bool | hasGroup (const QByteArray &group) const |
bool | hasGroup (const QString &group) const |
bool | isGroupImmutable (const char *group) const |
bool | isGroupImmutable (const QByteArray &group) const |
bool | isGroupImmutable (const QString &group) const |
![]() | |
QSharedData (const QSharedData &) | |
![]() | |
KCONFIGCORE_NO_EXPORT | KConfig (KConfigPrivate &d) |
void | deleteGroupImpl (const QByteArray &group, WriteConfigFlags flags=Normal) override |
bool | hasGroupImpl (const QByteArray &group) const override |
bool | isGroupImmutableImpl (const QByteArray &aGroup) const override |
void | virtual_hook (int id, void *data) override |
![]() | |
KConfigPrivate *const | d_ptr |
Detailed Description
KConfig variant using shared memory
KSharedConfig provides a shared (reference counted) variant of KConfig. This allows you to use/manipulate the same configuration files from different places in your code without worrying about accidentally overwriting changes.
The openConfig() method is threadsafe: every thread gets a separate repository of shared KConfig objects. This means, however, that you'll be responsible for synchronizing the instances of KConfig for the same filename between threads, using KConfig::reparseConfiguration() after a manual change notification, just like you have to do between processes.
Definition at line 31 of file ksharedconfig.h.
Member Function Documentation
◆ openConfig()
|
static |
Creates a KSharedConfig object to manipulate a configuration file.
If an absolute path is specified for fileName
, that file will be used as the store for the configuration settings. If a non-absolute path is provided, the file will be looked for in the standard directory specified by type
. If no path is provided, a default configuration file will be used based on the name of the main application component.
mode
determines whether the user or global settings will be allowed to influence the values returned by this object. See KConfig::OpenFlags for more details.
- Parameters
-
fileName the configuration file to open. If empty, it will be determined automatically (from –config on the command line, otherwise from the application name + "rc") mode how global settings should affect the configuration options exposed by this KConfig object type The standard directory to look for the configuration file in (see QStandardPaths)
- See also
- KConfig
Definition at line 69 of file ksharedconfig.cpp.
◆ openStateConfig()
|
static |
Creates a KSharedConfig object to manipulate a configuration file suitable for storing state information.
Use this for storing information that is changing frequently and should not be saved by configuration backup utilities.
If an absolute path is specified for fileName
, that file will be used as the store for the configuration settings. If a non-absolute path is provided, the file will be looked for in the standard data directory (QStandardPaths::AppDataLocation). If no path is provided, a default configuration file will be used based on the name of the main application component.
- Parameters
-
fileName the configuration file to open. If empty, it will be determined automatically from the application name + "staterc"
- Since
- 5.67
- See also
- KConfig
Definition at line 113 of file ksharedconfig.cpp.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2023 The KDE developers.
Generated on Tue Nov 28 2023 04:08:12 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.