KConfigLoader

Search for usage in LXR

#include <KConfigLoader>

Inheritance diagram for KConfigLoader:

Public Member Functions

 KConfigLoader (const KConfigGroup &config, QIODevice *xml, QObject *parent=nullptr)
 
 KConfigLoader (const QString &configFile, QIODevice *xml, QObject *parent=nullptr)
 
 KConfigLoader (KSharedConfigPtr config, QIODevice *xml, QObject *parent=nullptr)
 
KConfigSkeletonItemfindItem (const QString &group, const QString &key) const
 
KConfigSkeletonItemfindItemByName (const QString &name) const
 
QStringList groupList () const
 
bool hasGroup (const QString &group) const
 
QVariant property (const QString &name) const
 
- Public Member Functions inherited from KConfigSkeleton
 KConfigSkeleton (const QString &configname=QString(), QObject *parent=nullptr)
 
 KConfigSkeleton (KSharedConfig::Ptr config, QObject *parent=nullptr)
 
ItemColoraddItemColor (const QString &name, QColor &reference, const QColor &defaultValue=QColor(128, 128, 128), const QString &key=QString())
 
ItemFontaddItemFont (const QString &name, QFont &reference, const QFont &defaultValue=QFont(), const QString &key=QString())
 
- Public Member Functions inherited from KCoreConfigSkeleton
 KCoreConfigSkeleton (const QString &configname=QString(), QObject *parent=nullptr)
 
 KCoreConfigSkeleton (KSharedConfig::Ptr config, QObject *parent=nullptr)
 
 ~KCoreConfigSkeleton () override
 
void addItem (KConfigSkeletonItem *item, const QString &name=QString())
 
ItemBooladdItemBool (const QString &name, bool &reference, bool defaultValue=false, const QString &key=QString())
 
ItemDateTimeaddItemDateTime (const QString &name, QDateTime &reference, const QDateTime &defaultValue=QDateTime(), const QString &key=QString())
 
ItemDoubleaddItemDouble (const QString &name, double &reference, double defaultValue=0.0, const QString &key=QString())
 
ItemIntaddItemInt (const QString &name, qint32 &reference, qint32 defaultValue=0, const QString &key=QString())
 
ItemIntListaddItemIntList (const QString &name, QList< int > &reference, const QList< int > &defaultValue=QList< int >(), const QString &key=QString())
 
ItemLongLongaddItemLongLong (const QString &name, qint64 &reference, qint64 defaultValue=0, const QString &key=QString())
 
ItemPasswordaddItemPassword (const QString &name, QString &reference, const QString &defaultValue=QLatin1String(""), const QString &key=QString())
 
ItemPathaddItemPath (const QString &name, QString &reference, const QString &defaultValue=QLatin1String(""), const QString &key=QString())
 
ItemPointaddItemPoint (const QString &name, QPoint &reference, const QPoint &defaultValue=QPoint(), const QString &key=QString())
 
ItemPointFaddItemPointF (const QString &name, QPointF &reference, const QPointF &defaultValue=QPointF(), const QString &key=QString())
 
ItemPropertyaddItemProperty (const QString &name, QVariant &reference, const QVariant &defaultValue=QVariant(), const QString &key=QString())
 
ItemRectaddItemRect (const QString &name, QRect &reference, const QRect &defaultValue=QRect(), const QString &key=QString())
 
ItemRectFaddItemRectF (const QString &name, QRectF &reference, const QRectF &defaultValue=QRectF(), const QString &key=QString())
 
ItemSizeaddItemSize (const QString &name, QSize &reference, const QSize &defaultValue=QSize(), const QString &key=QString())
 
ItemSizeFaddItemSizeF (const QString &name, QSizeF &reference, const QSizeF &defaultValue=QSizeF(), const QString &key=QString())
 
ItemStringaddItemString (const QString &name, QString &reference, const QString &defaultValue=QLatin1String(""), const QString &key=QString())
 
ItemStringListaddItemStringList (const QString &name, QStringList &reference, const QStringList &defaultValue=QStringList(), const QString &key=QString())
 
ItemUIntaddItemUInt (const QString &name, quint32 &reference, quint32 defaultValue=0, const QString &key=QString())
 
ItemULongLongaddItemULongLong (const QString &name, quint64 &reference, quint64 defaultValue=0, const QString &key=QString())
 
void clearItems ()
 
KConfigconfig ()
 
const KConfigconfig () const
 
QString currentGroup () const
 
KConfigSkeletonItemfindItem (const QString &name) const
 
bool isDefaults () const
 
Q_INVOKABLE bool isImmutable (const QString &name) const
 
bool isSaveNeeded () const
 
KConfigSkeletonItem::List items () const
 
void load ()
 
void read ()
 
void removeItem (const QString &name)
 
void setCurrentGroup (const QString &group)
 
virtual void setDefaults ()
 
void setSharedConfig (KSharedConfig::Ptr pConfig)
 
KSharedConfig::Ptr sharedConfig () const
 
virtual bool useDefaults (bool b)
 
- Public Member Functions inherited from QObject
 QObject (QObject *parent)
 
QBindable< QStringbindableObjectName ()
 
bool blockSignals (bool block)
 
const QObjectListchildren () const const
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const
 
void deleteLater ()
 
void destroyed (QObject *obj)
 
bool disconnect (const char *signal, const QObject *receiver, const char *method) const const
 
bool disconnect (const QObject *receiver, const char *method) const const
 
void dumpObjectInfo () const const
 
void dumpObjectTree () const const
 
QList< QByteArraydynamicPropertyNames () const const
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
findChild (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (Qt::FindChildOptions options) const const
 
bool inherits (const char *className) const const
 
void installEventFilter (QObject *filterObj)
 
bool isQuickItemType () const const
 
bool isWidgetType () const const
 
bool isWindowType () const const
 
void killTimer (int id)
 
virtual const QMetaObjectmetaObject () const const
 
void moveToThread (QThread *targetThread)
 
QString objectName () const const
 
void objectNameChanged (const QString &objectName)
 
QObjectparent () const const
 
QVariant property (const char *name) const const
 
 Q_CLASSINFO (Name, Value)
 
 Q_EMIT Q_EMIT
 
 Q_ENUM (...)
 
 Q_ENUM_NS (...)
 
 Q_ENUMS (...)
 
 Q_FLAG (...)
 
 Q_FLAG_NS (...)
 
 Q_FLAGS (...)
 
 Q_GADGET Q_GADGET
 
 Q_GADGET_EXPORT (EXPORT_MACRO)
 
 Q_INTERFACES (...)
 
 Q_INVOKABLE Q_INVOKABLE
 
 Q_MOC_INCLUDE Q_MOC_INCLUDE
 
 Q_NAMESPACE Q_NAMESPACE
 
 Q_NAMESPACE_EXPORT (EXPORT_MACRO)
 
 Q_OBJECT Q_OBJECT
 
 Q_PROPERTY (...)
 
 Q_REVISION Q_REVISION
 
 Q_SET_OBJECT_NAME (Object)
 
 Q_SIGNAL Q_SIGNAL
 
 Q_SIGNALS Q_SIGNALS
 
 Q_SLOT Q_SLOT
 
 Q_SLOTS Q_SLOTS
 
qobject_cast (const QObject *object)
 
qobject_cast (QObject *object)
 
 QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
 
void removeEventFilter (QObject *obj)
 
void setObjectName (const QString &name)
 
void setObjectName (QAnyStringView name)
 
void setParent (QObject *parent)
 
bool setProperty (const char *name, const QVariant &value)
 
bool setProperty (const char *name, QVariant &&value)
 
bool signalsBlocked () const const
 
int startTimer (int interval, Qt::TimerType timerType)
 
int startTimer (std::chrono::milliseconds interval, Qt::TimerType timerType)
 
QThreadthread () const const
 

Protected Member Functions

bool usrSave () override
 
- Protected Member Functions inherited from KCoreConfigSkeleton
virtual void usrRead ()
 
virtual void usrSetDefaults ()
 
virtual bool usrUseDefaults (bool b)
 
- Protected Member Functions inherited from QObject
virtual void childEvent (QChildEvent *event)
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void customEvent (QEvent *event)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
bool isSignalConnected (const QMetaMethod &signal) const const
 
int receivers (const char *signal) const const
 
QObjectsender () const const
 
int senderSignalIndex () const const
 
virtual void timerEvent (QTimerEvent *event)
 

Additional Inherited Members

- Public Types inherited from QObject
typedef  QObjectList
 
- Properties inherited from QObject
 objectName
 
- Signals inherited from KCoreConfigSkeleton
void configChanged ()
 
- Public Slots inherited from KCoreConfigSkeleton
bool save ()
 
- Static Public Member Functions inherited from QObject
QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, Functor functor)
 
bool disconnect (const QMetaObject::Connection &connection)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
bool disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method)
 
QString tr (const char *sourceText, const char *disambiguation, int n)
 

Detailed Description

A KConfigSkeleton that populates itself based on KConfigXT XML.

This class allows one to ship an XML file and reconstitute it into a KConfigSkeleton object at runtime. Common usage might look like this:

QFile file(xmlFilePath);
KConfigLoader appletConfig(configFilePath, &file);
A KConfigSkeleton that populates itself based on KConfigXT XML.

Alternatively, any QIODevice may be used in place of QFile in the example above.

KConfigLoader is useful if it is not possible to use compiled code and by that the kconfig compiler cannot be used. Common examples are scripted plugins which want to provide a configuration interface. With the help of KConfigLoader a dynamically loaded ui file can be populated with the stored values and also stored back to the config file.

An example for populating a QDialog with a dynamically populated UI with the help of a KConfigDialogManager:

QDialog *dialog = new QDialog();
QFile xmlFile("path/to/kconfigxt.xml");
KConfigLoader *configLoader = new KConfigLoader(cg, &xmlFile, this);
// load the ui file
QUiLoader *loader = new QUiLoader(this);
QFile uiFile("path/to/userinterface.ui");
uiFile.open(QFile::ReadOnly);
QWidget *customConfigForm = loader->load(&uiFile, dialog);
uiFile.close();
KConfigDialogManager *manager = new KConfigDialogManager(customConfigForm, configLoader);
if (dialog->exec() == QDialog::Accepted) {
manager->updateSettings();
}
A class for one specific group in a KConfig object.
KConfigLoader(const QString &configFile, QIODevice *xml, QObject *parent=nullptr)
Creates a KConfigSkeleton populated using the definition found in the XML data passed in.
static KSharedConfig::Ptr openConfig(const QString &fileName=QString(), OpenFlags mode=FullConfig, QStandardPaths::StandardLocation type=QStandardPaths::GenericConfigLocation)
Creates a KSharedConfig object to manipulate a configuration file.
virtual int exec()
bool close()

Currently the following data types are supported:

  • bools
  • colors
  • datetimes
  • enumerations
  • fonts
  • ints
  • passwords
  • paths
  • strings
  • stringlists
  • uints
  • urls
  • doubles
  • int lists
  • longlongs
  • path lists
  • points
  • pointfs
  • rects
  • rectfs
  • sizes
  • sizefs
  • ulonglongs
  • url lists

Definition at line 91 of file kconfigloader.h.

Constructor & Destructor Documentation

◆ KConfigLoader() [1/3]

KConfigLoader::KConfigLoader ( const QString & configFile,
QIODevice * xml,
QObject * parent = nullptr )

Creates a KConfigSkeleton populated using the definition found in the XML data passed in.

Parameters
configFilepath to the configuration file to use
xmlthe xml data; must be valid KConfigXT data
parentoptional QObject parent

Definition at line 355 of file kconfigloader.cpp.

◆ KConfigLoader() [2/3]

KConfigLoader::KConfigLoader ( KSharedConfigPtr config,
QIODevice * xml,
QObject * parent = nullptr )

Creates a KConfigSkeleton populated using the definition found in the XML data passed in.

Parameters
configthe configuration object to use
xmlthe xml data; must be valid KConfigXT data
parentoptional QObject parent

Definition at line 362 of file kconfigloader.cpp.

◆ KConfigLoader() [3/3]

KConfigLoader::KConfigLoader ( const KConfigGroup & config,
QIODevice * xml,
QObject * parent = nullptr )

Creates a KConfigSkeleton populated using the definition found in the XML data passed in.

Parameters
configthe group to use as the root for configuration items
xmlthe xml data; must be valid KConfigXT data
parentoptional QObject parent

Definition at line 372 of file kconfigloader.cpp.

◆ ~KConfigLoader()

KConfigLoader::~KConfigLoader ( )
override

Definition at line 385 of file kconfigloader.cpp.

Member Function Documentation

◆ findItem()

KConfigSkeletonItem * KConfigLoader::findItem ( const QString & group,
const QString & key ) const

Finds the item for the given group and key.

Parameters
groupthe group in the config file to look in
keythe configuration key to find
Returns
the associated KConfigSkeletonItem, or nullptr if none

Definition at line 390 of file kconfigloader.cpp.

◆ findItemByName()

KConfigSkeletonItem * KConfigLoader::findItemByName ( const QString & name) const

Finds an item by its name.

Definition at line 395 of file kconfigloader.cpp.

◆ groupList()

QStringList KConfigLoader::groupList ( ) const
Returns
the list of groups defined by the XML

Definition at line 416 of file kconfigloader.cpp.

◆ hasGroup()

bool KConfigLoader::hasGroup ( const QString & group) const

Check to see if a group exists.

Parameters
groupthe name of the group to check for
Returns
true if the group exists, or false if it does not

Definition at line 411 of file kconfigloader.cpp.

◆ property()

QVariant KConfigLoader::property ( const QString & name) const

Returns the property (variantized value) of the named item.

Definition at line 400 of file kconfigloader.cpp.

◆ usrSave()

bool KConfigLoader::usrSave ( )
overrideprotectedvirtual

Perform the actual writing of the configuration file.

Override in derived classes to write special config values. Called from save()

Reimplemented from KCoreConfigSkeleton.

Definition at line 421 of file kconfigloader.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 Fri Dec 6 2024 12:11:49 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.