Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QSettingsPrivate Class Referenceabstract

#include <qsettings_p.h>

+ Inheritance diagram for QSettingsPrivate:
+ Collaboration diagram for QSettingsPrivate:

Public Types

enum  ChildSpec { AllKeys , ChildKeys , ChildGroups }
 
- Public Types inherited from QObjectPrivate
typedef void(* StaticMetaCallFunction) (QObject *, QMetaObject::Call, int, void **)
 
using ConnectionDataPointer = QExplicitlySharedDataPointer<ConnectionData>
 

Public Member Functions

 QSettingsPrivate (QSettings::Format format)
 
 QSettingsPrivate (QSettings::Format format, QSettings::Scope scope, const QString &organization, const QString &application)
 
virtual ~QSettingsPrivate ()
 
virtual void remove (const QString &key)=0
 
virtual void set (const QString &key, const QVariant &value)=0
 
virtual std::optional< QVariantget (const QString &key) const =0
 
virtual QStringList children (const QString &prefix, ChildSpec spec) const =0
 
virtual void clear ()=0
 
virtual void sync ()=0
 
virtual void flush ()=0
 
virtual bool isWritable () const =0
 
virtual QString fileName () const =0
 
QVariant value (QAnyStringView key, const QVariant *defaultValue) const
 
QString actualKey (QAnyStringView key) const
 
void beginGroupOrArray (const QSettingsGroup &group)
 
void setStatus (QSettings::Status status) const
 
void requestUpdate ()
 
void update ()
 
- Public Member Functions inherited from QObjectPrivate
void ensureExtraData ()
 
 QObjectPrivate (int version=QObjectPrivateVersion)
 
virtual ~QObjectPrivate ()
 
void deleteChildren ()
 
void clearBindingStorage ()
 
void checkForIncompatibleLibraryVersion (int version) const
 
void setParent_helper (QObject *)
 
void moveToThread_helper ()
 
void setThreadData_helper (QThreadData *currentData, QThreadData *targetData, QBindingStatus *status)
 
QObjectList receiverList (const char *signal) const
 
void ensureConnectionData ()
 
void addConnection (int signal, Connection *c)
 
int signalIndex (const char *signalName, const QMetaObject **meta=nullptr) const
 
bool isSignalConnected (uint signalIdx, bool checkDeclarative=true) const
 
bool maybeSignalConnected (uint signalIndex) const
 
bool isDeclarativeSignalConnected (uint signalIdx) const
 
void connectNotify (const QMetaMethod &signal)
 
void disconnectNotify (const QMetaMethod &signal)
 
void reinitBindingStorageAfterThreadMove ()
 
virtual std::string flagsForDumping () const
 
virtual void writeToDebugStream (QDebug &) const
 
QtPrivate::QPropertyAdaptorSlotObjectgetPropertyAdaptorSlotObject (const QMetaProperty &property)
 
- Public Member Functions inherited from QObjectData
 QObjectData ()=default
 
virtual ~QObjectData ()=0
 
QMetaObjectdynamicMetaObject () const
 

Static Public Member Functions

static QString normalizedKey (QAnyStringView key)
 
static QSettingsPrivatecreate (QSettings::Format format, QSettings::Scope scope, const QString &organization, const QString &application)
 
static QSettingsPrivatecreate (const QString &fileName, QSettings::Format format)
 
static void processChild (QStringView key, ChildSpec spec, QStringList &result)
 
static QStringList variantListToStringList (const QVariantList &l)
 
static QVariant stringListToVariantList (const QStringList &l)
 
static QString variantToString (const QVariant &v)
 
static QVariant stringToVariant (const QString &s)
 
static void iniEscapedKey (const QString &key, QByteArray &result)
 
static bool iniUnescapedKey (QByteArrayView key, QString &result)
 
static void iniEscapedString (const QString &str, QByteArray &result)
 
static void iniEscapedStringList (const QStringList &strs, QByteArray &result)
 
static bool iniUnescapedStringList (QByteArrayView str, QString &stringResult, QStringList &stringListResult)
 
static QStringList splitArgs (const QString &s, qsizetype idx)
 
- Static Public Member Functions inherited from QObjectPrivate
static bool removeConnection (Connection *c)
 
static QObjectPrivateget (QObject *o)
 
static const QObjectPrivateget (const QObject *o)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiverPrivate, Func2 slot, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiverPrivate, Func2 slot)
 
static QMetaObject::Connection connectImpl (const QObject *sender, int signal_index, const QObject *receiver, void **slot, QtPrivate::QSlotObjectBase *slotObj, int type, const int *types, const QMetaObject *senderMetaObject)
 
static QMetaObject::Connection connect (const QObject *sender, int signal_index, QtPrivate::QSlotObjectBase *slotObj, Qt::ConnectionType type)
 
static QMetaObject::Connection connect (const QObject *sender, int signal_index, const QObject *receiver, QtPrivate::QSlotObjectBase *slotObj, Qt::ConnectionType type)
 
static bool disconnect (const QObject *sender, int signal_index, void **slot)
 
static bool disconnect (const QObject *sender, int signal_index, const QObject *receiver, void **slot)
 

Public Attributes

QSettings::Format format
 
QSettings::Scope scope
 
QString organizationName
 
QString applicationName
 
- Public Attributes inherited from QObjectPrivate
ExtraDataextraData
 
QAtomicPointer< QThreadDatathreadData
 
QAtomicPointer< ConnectionDataconnections
 
union { 
 
   QObject *   currentChildBeingDeleted 
 
   QAbstractDeclarativeData *   declarativeData 
 
};  
 
QAtomicPointer< QtSharedPointer::ExternalRefCountDatasharedRefcount
 
- Public Attributes inherited from QObjectData
QObjectq_ptr
 
QObjectparent
 
QObjectList children
 
uint isWidget: 1
 
uint blockSig: 1
 
uint wasDeleted: 1
 
uint isDeletingChildren: 1
 
uint sendChildEvents: 1
 
uint receiveChildEvents: 1
 
uint isWindow: 1
 
uint deleteLaterCalled: 1
 
uint isQuickItem: 1
 
uint willBeWidget: 1
 
uint wasWidget: 1
 
uint receiveParentEvents: 1
 
uint unused: 20
 
QAtomicInt postedEvents
 
QDynamicMetaObjectDatametaObject
 
QBindingStorage bindingStorage
 

Protected Attributes

QStack< QSettingsGroupgroupStack
 
QString groupPrefix
 
bool fallbacks
 
bool pendingChanges
 
bool atomicSyncOnly = true
 
QSettings::Status status
 

Detailed Description

Definition at line 147 of file qsettings_p.h.

Member Enumeration Documentation

◆ ChildSpec

Enumerator
AllKeys 
ChildKeys 
ChildGroups 

Definition at line 167 of file qsettings_p.h.

Constructor & Destructor Documentation

◆ QSettingsPrivate() [1/2]

QSettingsPrivate::QSettingsPrivate ( QSettings::Format format)

Definition at line 183 of file qsettings.cpp.

◆ QSettingsPrivate() [2/2]

QSettingsPrivate::QSettingsPrivate ( QSettings::Format format,
QSettings::Scope scope,
const QString & organization,
const QString & application )

Definition at line 189 of file qsettings.cpp.

◆ ~QSettingsPrivate()

QSettingsPrivate::~QSettingsPrivate ( )
virtual

Definition at line 196 of file qsettings.cpp.

Member Function Documentation

◆ actualKey()

QString QSettingsPrivate::actualKey ( QAnyStringView key) const

Definition at line 200 of file qsettings.cpp.

References groupPrefix, normalizedKey(), and Q_ASSERT_X.

Referenced by value().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ beginGroupOrArray()

void QSettingsPrivate::beginGroupOrArray ( const QSettingsGroup & group)

Definition at line 304 of file qsettings.cpp.

References groupPrefix, groupStack, and QStack< T >::push().

+ Here is the call graph for this function:

◆ children()

virtual QStringList QSettingsPrivate::children ( const QString & prefix,
ChildSpec spec ) const
pure virtual

◆ clear()

◆ create() [1/2]

QSettingsPrivate * QSettingsPrivate::create ( const QString & fileName,
QSettings::Format format )
static

Definition at line 282 of file qsettings.cpp.

References fileName().

+ Here is the call graph for this function:

◆ create() [2/2]

QSettingsPrivate * QSettingsPrivate::create ( QSettings::Format format,
QSettings::Scope scope,
const QString & organization,
const QString & application )
static

Definition at line 274 of file qsettings.cpp.

References scope.

◆ fileName()

virtual QString QSettingsPrivate::fileName ( ) const
pure virtual

Implemented in QWasmLocalStorageSettingsPrivate, QMacSettingsPrivate, QConfFileSettingsPrivate, and QWinSettingsPrivate.

Referenced by create().

+ Here is the caller graph for this function:

◆ flush()

virtual void QSettingsPrivate::flush ( )
pure virtual

Implemented in QWasmLocalStorageSettingsPrivate, QMacSettingsPrivate, QConfFileSettingsPrivate, and QWinSettingsPrivate.

Referenced by update().

+ Here is the caller graph for this function:

◆ get()

virtual std::optional< QVariant > QSettingsPrivate::get ( const QString & key) const
pure virtual

Implemented in QWasmLocalStorageSettingsPrivate, QMacSettingsPrivate, QConfFileSettingsPrivate, and QWinSettingsPrivate.

Referenced by value().

+ Here is the caller graph for this function:

◆ iniEscapedKey()

void QSettingsPrivate::iniEscapedKey ( const QString & key,
QByteArray & result )
static

Definition at line 509 of file qsettings.cpp.

References ch, i, QtMiscUtils::isAsciiLetterOrNumber(), j, QByteArray::prepend(), and QtMiscUtils::toHexUpper().

+ Here is the call graph for this function:

◆ iniEscapedString()

void QSettingsPrivate::iniEscapedString ( const QString & str,
QByteArray & result )
static

Definition at line 592 of file qsettings.cpp.

References ch, QtMiscUtils::isHexDigit(), QByteArray::number(), QString::size(), QString::startsWith(), str, and QStringConverter::Utf8.

Referenced by iniEscapedStringList().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ iniEscapedStringList()

void QSettingsPrivate::iniEscapedStringList ( const QStringList & strs,
QByteArray & result )
static

Definition at line 676 of file qsettings.cpp.

References i, and iniEscapedString().

+ Here is the call graph for this function:

◆ iniUnescapedKey()

bool QSettingsPrivate::iniUnescapedKey ( QByteArrayView key,
QString & result )
static

Definition at line 535 of file qsettings.cpp.

References QString::at(), ch, QString::fromUtf8(), i, numDigits(), ok, QString::size(), and QStringView::sliced().

Referenced by QConfFileSettingsPrivate::readIniFile(), and QConfFileSettingsPrivate::readIniSection().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ iniUnescapedStringList()

bool QSettingsPrivate::iniUnescapedStringList ( QByteArrayView str,
QString & stringResult,
QStringList & stringListResult )
static

Definition at line 697 of file qsettings.cpp.

References QString::at(), ch, QString::first(), QtMiscUtils::fromHex(), QtMiscUtils::fromOct(), i, iniChopTrailingSpaces(), QtMiscUtils::isHexDigit(), j, o, Q_FALLTHROUGH, QString::size(), QString::sliced(), str, and QStringConverter::Utf8.

Referenced by QConfFileSettingsPrivate::readIniSection().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isWritable()

virtual bool QSettingsPrivate::isWritable ( ) const
pure virtual

◆ normalizedKey()

QString QSettingsPrivate::normalizedKey ( QAnyStringView key)
static

Definition at line 232 of file qsettings.cpp.

References QSet< T >::begin(), it, out, Q_ASSERT, Qt::Uninitialized, and write().

Referenced by actualKey().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ processChild()

void QSettingsPrivate::processChild ( QStringView key,
ChildSpec spec,
QStringList & result )
static

Definition at line 288 of file qsettings.cpp.

References AllKeys, ChildGroups, and ChildKeys.

Referenced by QWasmLocalStorageSettingsPrivate::children(), QMacSettingsPrivate::children(), and QConfFileSettingsPrivate::children().

+ Here is the caller graph for this function:

◆ remove()

virtual void QSettingsPrivate::remove ( const QString & key)
pure virtual

◆ requestUpdate()

void QSettingsPrivate::requestUpdate ( )

Definition at line 329 of file qsettings.cpp.

References pendingChanges, QCoreApplication::postEvent(), update(), and QEvent::UpdateRequest.

+ Here is the call graph for this function:

◆ set()

virtual void QSettingsPrivate::set ( const QString & key,
const QVariant & value )
pure virtual

◆ setStatus()

◆ splitArgs()

QStringList QSettingsPrivate::splitArgs ( const QString & s,
qsizetype idx )
static

Definition at line 850 of file qsettings.cpp.

References item, and Q_ASSERT.

Referenced by stringToVariant().

+ Here is the caller graph for this function:

◆ stringListToVariantList()

QVariant QSettingsPrivate::stringListToVariantList ( const QStringList & l)
static

Definition at line 351 of file qsettings.cpp.

References QString::at(), i, QList< T >::reserve(), QString::size(), QString::startsWith(), str, and stringToVariant().

Referenced by QConfFileSettingsPrivate::readIniSection(), and QWinSettingsPrivate::readKey().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ stringToVariant()

QVariant QSettingsPrivate::stringToVariant ( const QString & s)
static

Definition at line 454 of file qsettings.cpp.

References args, Q_ASSERT, QIODeviceBase::ReadOnly, QList< T >::size(), QStringView::sliced(), splitArgs(), toInt(), and toString().

Referenced by QWasmLocalStorageSettingsPrivate::get(), qtValue(), QConfFileSettingsPrivate::readIniSection(), QWinSettingsPrivate::readKey(), and stringListToVariantList().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ sync()

◆ update()

void QSettingsPrivate::update ( )

Definition at line 323 of file qsettings.cpp.

References flush(), and pendingChanges.

Referenced by requestUpdate().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ value()

QVariant QSettingsPrivate::value ( QAnyStringView key,
const QVariant * defaultValue ) const

Definition at line 3360 of file qsettings.cpp.

References actualKey(), get(), and qWarning.

+ Here is the call graph for this function:

◆ variantListToStringList()

QStringList QSettingsPrivate::variantListToStringList ( const QVariantList & l)
static

Definition at line 342 of file qsettings.cpp.

References QList< T >::size(), and variantToString().

Referenced by QWinSettingsPrivate::set().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ variantToString()

QString QSettingsPrivate::variantToString ( const QVariant & v)
static

Definition at line 371 of file qsettings.cpp.

References QString::asprintf(), QString::prepend(), Q_ASSERT, QLatin1StringView::toString(), QMetaType::UnknownType, and QIODeviceBase::WriteOnly.

Referenced by macValue(), QWasmLocalStorageSettingsPrivate::set(), QWinSettingsPrivate::set(), and variantListToStringList().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ applicationName

QString QSettingsPrivate::applicationName

Definition at line 208 of file qsettings_p.h.

◆ atomicSyncOnly

bool QSettingsPrivate::atomicSyncOnly = true
protected

Definition at line 215 of file qsettings_p.h.

◆ fallbacks

◆ format

QSettings::Format QSettingsPrivate::format

Definition at line 205 of file qsettings_p.h.

◆ groupPrefix

QString QSettingsPrivate::groupPrefix
protected

Definition at line 212 of file qsettings_p.h.

Referenced by actualKey(), and beginGroupOrArray().

◆ groupStack

QStack<QSettingsGroup> QSettingsPrivate::groupStack
protected

Definition at line 211 of file qsettings_p.h.

Referenced by beginGroupOrArray().

◆ organizationName

QString QSettingsPrivate::organizationName

Definition at line 207 of file qsettings_p.h.

◆ pendingChanges

bool QSettingsPrivate::pendingChanges
protected

Definition at line 214 of file qsettings_p.h.

Referenced by requestUpdate(), and update().

◆ scope

◆ status

QSettings::Status QSettingsPrivate::status
mutableprotected

The documentation for this class was generated from the following files: