KSharedConfig

Search for usage in LXR

#include <KSharedConfig>

Inheritance diagram for KSharedConfig:

Public Types

typedef QExplicitlySharedDataPointer< KSharedConfigPtr
 
- Public Types inherited from KConfig
enum  OpenFlag {
  IncludeGlobals = 0x01 , CascadeConfig = 0x02 , SimpleConfig = 0x00 , NoCascade = IncludeGlobals ,
  NoGlobals = CascadeConfig , FullConfig = IncludeGlobals | CascadeConfig
}
 
typedef QFlags< OpenFlagOpenFlags
 
- Public Types inherited from KConfigBase
enum  AccessMode { NoAccess , ReadOnly , ReadWrite }
 
enum  WriteConfigFlag {
  Persistent = 0x01 , Global = 0x02 , Localized = 0x04 , Notify = 0x08 | Persistent ,
  Normal = Persistent
}
 
typedef QFlags< WriteConfigFlagWriteConfigFlags
 

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 Public Member Functions inherited from KConfig
static QString mainConfigName ()
 
static void setMainConfigName (const QString &str)
 

Additional Inherited Members

- Public Member Functions inherited from KConfig
 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)
 
KConfigcopyTo (const QString &file, KConfig *config=nullptr) const
 
QMap< QString, QStringentryMap (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
 
- Public Member Functions inherited from KConfigBase
virtual ~KConfigBase ()
 
void deleteGroup (const QString &group, WriteConfigFlags flags=Normal)
 
KConfigGroup group (const QString &group)
 
const KConfigGroup group (const QString &group) const
 
bool hasGroup (const QString &group) const
 
bool isGroupImmutable (const QString &group) const
 
- Public Member Functions inherited from QSharedData
 QSharedData (const QSharedData &)
 
- Protected Member Functions inherited from KConfig
KCONFIGCORE_NO_EXPORT KConfig (KConfigPrivate &d)
 
void deleteGroupImpl (const QString &groupName, WriteConfigFlags flags=Normal) override
 
bool hasGroupImpl (const QString &groupName) const override
 
bool isGroupImmutableImpl (const QString &groupName) const override
 
void virtual_hook (int id, void *data) override
 
- Protected Member Functions inherited from KConfigBase
- Protected Attributes inherited from KConfig
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 Typedef Documentation

◆ Ptr

Constructor & Destructor Documentation

◆ ~KSharedConfig()

KSharedConfig::~KSharedConfig ( )
override

Definition at line 185 of file ksharedconfig.cpp.

Member Function Documentation

◆ openConfig()

KSharedConfigPtr KSharedConfig::openConfig ( const QString & fileName = QString(),
OpenFlags mode = FullConfig,
QStandardPaths::StandardLocation type = QStandardPaths::GenericConfigLocation )
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
fileNamethe configuration file to open. If empty, it will be determined automatically (from –config on the command line, otherwise from the application name + "rc")
modehow global settings should affect the configuration options exposed by this KConfig object
typeThe standard directory to look for the configuration file in (see QStandardPaths)
See also
KConfig

Definition at line 124 of file ksharedconfig.cpp.

◆ openStateConfig()

KSharedConfig::Ptr KSharedConfig::openStateConfig ( const QString & fileName = QString())
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
fileNamethe 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 166 of file ksharedconfig.cpp.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 4 2024 16:31:54 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.