QGIS API Documentation 3.30.0-'s-Hertogenbosch (f186b8efe0)
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
QgsSettingsEntryBase Class Reference

Represent settings entry and provides methods for reading and writing settings values. More...

#include <qgssettingsentry.h>

Inheritance diagram for QgsSettingsEntryBase:
Inheritance graph
[legend]

Public Member Functions

 QgsSettingsEntryBase (const QString &key, const QString &section, const QVariant &defaultValue=QVariant(), const QString &description=QString(), Qgis::SettingsOptions options=Qgis::SettingsOptions())
 Constructor for QgsSettingsEntryBase. More...
 
 QgsSettingsEntryBase (const QString &name, QgsSettingsTreeNode *parent, const QVariant &defaultValue=QVariant(), const QString &description=QString(), Qgis::SettingsOptions options=Qgis::SettingsOptions()) SIP_THROW(QgsSettingsException)
 Constructor for QgsSettingsEntryBase. More...
 
virtual ~QgsSettingsEntryBase ()
 Destructor for QgsSettingsEntryBase. More...
 
bool copyValueFromKey (const QString &key, bool removeSettingAtKey=false) const
 Copies the value from a given key if it exists. More...
 
bool copyValueFromKey (const QString &key, const QStringList &dynamicKeyPartList, bool removeSettingAtKey=false) const
 Copies the value from a given key if it exists. More...
 
void copyValueToKey (const QString &key, const QStringList &dynamicKeyPartList=QStringList()) const
 Copies the settings to the given key. More...
 
QVariant defaultValueAsVariant () const
 Returns settings default value. More...
 
QString definitionKey () const
 Returns settings entry defining key. More...
 
QString description () const
 Returns the settings entry description. More...
 
bool exists (const QString &dynamicKeyPart=QString()) const
 Returns true if the settings is contained in the underlying QSettings. More...
 
bool exists (const QStringList &dynamicKeyPartList) const
 Returns true if the settings is contained in the underlying QSettings. More...
 
QVariant formerValueAsVariant (const QString &dynamicKeyPart) const
 Returns the former value of the settings if it has been enabled in the options. More...
 
QVariant formerValueAsVariant (const QStringList &dynamicKeyPartList) const
 Returns the former value of the settings if it has been enabled in the options Returns the current value (or default) if there is no former value. More...
 
bool hasDynamicKey () const
 Returns true if a part of the settings key is built dynamically. More...
 
QString key (const QString &dynamicKeyPart=QString()) const
 Returns settings entry key. More...
 
QString key (const QStringList &dynamicKeyPartList) const
 Returns settings entry key. More...
 
bool keyIsValid (const QString &key) const
 Returns true if the provided key match the settings entry. More...
 
QString name () const
 Returns the name of the settings. More...
 
Qgis::SettingsOptions options () const
 Returns the settings options. More...
 
Qgis::SettingsOrigin origin (const QStringList &dynamicKeyPartList) const
 Returns the origin of the setting if it exists. More...
 
QgsSettingsTreeNodeparent () const
 Returns the parent tree element. More...
 
void remove (const QString &dynamicKeyPart=QString()) const
 Removes the settings from the underlying QSettings. More...
 
void remove (const QStringList &dynamicKeyPartList) const
 Removes the settings from the underlying QSettings. More...
 
Q_DECL_DEPRECATED int section () const
 Returns settings section. More...
 
virtual Qgis::SettingsType settingsType () const
 Returns the settings entry type. More...
 
virtual Q_DECL_DEPRECATED bool setVariantValue (const QVariant &value, const QString &dynamicKeyPart=QString()) const
 Set settings value. More...
 
virtual Q_DECL_DEPRECATED bool setVariantValue (const QVariant &value, const QStringList &dynamicKeyPartList) const
 Set settings value. More...
 
Q_DECL_DEPRECATED QVariant valueAsVariant (const QString &dynamicKeyPart, bool useDefaultValueOverride, const QVariant &defaultValueOverride) const
 Returns settings value with an optional default value override. More...
 
QVariant valueAsVariant (const QString &dynamicKeyPart=QString()) const
 Returns settings value with. More...
 
QVariant valueAsVariant (const QStringList &dynamicKeyPartList) const
 Returns settings value with. More...
 
Q_DECL_DEPRECATED QVariant valueAsVariant (const QStringList &dynamicKeyPartList, bool useDefaultValueOverride, const QVariant &defaultValueOverride) const
 Returns settings value with an optional default value override. More...
 
QVariant valueAsVariantWithDefaultOverride (const QVariant &defaultValueOverride, const QString &dynamicKeyPart=QString()) const
 Returns settings value with a defaultValueOverride. More...
 
QVariant valueAsVariantWithDefaultOverride (const QVariant &defaultValueOverride, const QStringList &dynamicKeyPartList) const
 Returns settings value. More...
 

Static Public Member Functions

static QStringList dynamicKeyPartToList (const QString &dynamicKeyPart)
 Transforms a dynamic key part string to list. More...
 

Protected Member Functions

bool setVariantValuePrivate (const QVariant &value, const QStringList &dynamicKeyPartList=QStringList()) const
 Sets the settings value with a variant value. More...
 

Detailed Description

Represent settings entry and provides methods for reading and writing settings values.

Different subclasses are provided for different settings types with metainformations to validate set values and provide more accurate settings description for the gui.

Since
QGIS 3.20

Definition at line 41 of file qgssettingsentry.h.

Constructor & Destructor Documentation

◆ QgsSettingsEntryBase() [1/2]

QgsSettingsEntryBase::QgsSettingsEntryBase ( const QString &  key,
const QString &  section,
const QVariant &  defaultValue = QVariant(),
const QString &  description = QString(),
Qgis::SettingsOptions  options = Qgis::SettingsOptions() 
)
inline

Constructor for QgsSettingsEntryBase.

Parameters
keyspecifies the key of the settings.
sectionspecifies the section.
defaultValuespecifies the default value for the settings entry.
descriptionspecifies a description for the settings entry.
optionsspecifies the options for the settings entry.

Definition at line 86 of file qgssettingsentry.h.

◆ QgsSettingsEntryBase() [2/2]

QgsSettingsEntryBase::QgsSettingsEntryBase ( const QString &  name,
QgsSettingsTreeNode parent,
const QVariant &  defaultValue = QVariant(),
const QString &  description = QString(),
Qgis::SettingsOptions  options = Qgis::SettingsOptions() 
)

Constructor for QgsSettingsEntryBase.

Parameters
namespecifies the name of the setting.
parentspecifies the parent in the tree of settings.
defaultValuespecifies the default value for the settings entry.
descriptionspecifies a description for the settings entry.
optionsspecifies the options for the settings entry.
Exceptions
QgsSettingsExceptionif the number of given parent named items doesn't match the complete key definition
Since
QGIS 3.30

Definition at line 25 of file qgssettingsentry.cpp.

◆ ~QgsSettingsEntryBase()

QgsSettingsEntryBase::~QgsSettingsEntryBase ( )
virtual

Destructor for QgsSettingsEntryBase.

Definition at line 40 of file qgssettingsentry.cpp.

Member Function Documentation

◆ copyValueFromKey() [1/2]

bool QgsSettingsEntryBase::copyValueFromKey ( const QString &  key,
bool  removeSettingAtKey = false 
) const
inline

Copies the value from a given key if it exists.

Parameters
keythe key to copy the setting value from.
removeSettingAtKeyif true, the setting at the old key will be removed.
Returns
true if the key exists and the setting value could be copied.
Since
QGIS 3.30

Definition at line 300 of file qgssettingsentry.h.

◆ copyValueFromKey() [2/2]

bool QgsSettingsEntryBase::copyValueFromKey ( const QString &  key,
const QStringList &  dynamicKeyPartList,
bool  removeSettingAtKey = false 
) const

Copies the value from a given key if it exists.

Parameters
keythe key to copy the setting value from.
dynamicKeyPartListis the optional dynamic key part to determine the key. It must be the same for origin and destination keys.
removeSettingAtKeyif true, the setting at the old key will be removed.
Returns
true if the key exists and the setting value could be copied.
Since
QGIS 3.30

Definition at line 234 of file qgssettingsentry.cpp.

◆ copyValueToKey()

void QgsSettingsEntryBase::copyValueToKey ( const QString &  key,
const QStringList &  dynamicKeyPartList = QStringList() 
) const

Copies the settings to the given key.

Parameters
keythe key to copy the setting value to.
dynamicKeyPartListis the optional dynamic key part to determine the key. It must be the same for origin and destination keys.
Since
QGIS 3.30

Definition at line 254 of file qgssettingsentry.cpp.

◆ defaultValueAsVariant()

QVariant QgsSettingsEntryBase::defaultValueAsVariant ( ) const

Returns settings default value.

Definition at line 211 of file qgssettingsentry.cpp.

◆ definitionKey()

QString QgsSettingsEntryBase::definitionKey ( ) const

Returns settings entry defining key.

For dynamic settings it return the key with the placeholder for dynamic part included. For non-dynamic settings returns the same as key().

Definition at line 99 of file qgssettingsentry.cpp.

◆ description()

QString QgsSettingsEntryBase::description ( ) const

Returns the settings entry description.

Definition at line 216 of file qgssettingsentry.cpp.

◆ dynamicKeyPartToList()

QStringList QgsSettingsEntryBase::dynamicKeyPartToList ( const QString &  dynamicKeyPart)
static

Transforms a dynamic key part string to list.

Since
QGIS 3.26

Definition at line 167 of file qgssettingsentry.cpp.

◆ exists() [1/2]

bool QgsSettingsEntryBase::exists ( const QString &  dynamicKeyPart = QString()) const

Returns true if the settings is contained in the underlying QSettings.

Parameters
dynamicKeyPartspecifies the dynamic part of the settings key.

Definition at line 110 of file qgssettingsentry.cpp.

◆ exists() [2/2]

bool QgsSettingsEntryBase::exists ( const QStringList &  dynamicKeyPartList) const

Returns true if the settings is contained in the underlying QSettings.

Parameters
dynamicKeyPartListspecifies the list of dynamic parts of the settings key.

Definition at line 115 of file qgssettingsentry.cpp.

◆ formerValueAsVariant() [1/2]

QVariant QgsSettingsEntryBase::formerValueAsVariant ( const QString &  dynamicKeyPart) const

Returns the former value of the settings if it has been enabled in the options.

Returns the current value (or default) if there is no former value.

Since
QGIS 3.26

Definition at line 221 of file qgssettingsentry.cpp.

◆ formerValueAsVariant() [2/2]

QVariant QgsSettingsEntryBase::formerValueAsVariant ( const QStringList &  dynamicKeyPartList) const

Returns the former value of the settings if it has been enabled in the options Returns the current value (or default) if there is no former value.

Since
QGIS 3.26

Definition at line 226 of file qgssettingsentry.cpp.

◆ hasDynamicKey()

bool QgsSettingsEntryBase::hasDynamicKey ( ) const

Returns true if a part of the settings key is built dynamically.

Definition at line 104 of file qgssettingsentry.cpp.

◆ key() [1/2]

QString QgsSettingsEntryBase::key ( const QString &  dynamicKeyPart = QString()) const

Returns settings entry key.

Parameters
dynamicKeyPartspecifies the dynamic part of the settings key.

Definition at line 47 of file qgssettingsentry.cpp.

◆ key() [2/2]

QString QgsSettingsEntryBase::key ( const QStringList &  dynamicKeyPartList) const

Returns settings entry key.

Parameters
dynamicKeyPartListspecifies the list of dynamic parts of the settings key.

Definition at line 52 of file qgssettingsentry.cpp.

◆ keyIsValid()

bool QgsSettingsEntryBase::keyIsValid ( const QString &  key) const

Returns true if the provided key match the settings entry.

This is useful for settings with dynamic keys. For example this permits one to check that the settings key "NewsFeed/httpsfeedqgisorg/27/content" is valid for the settings entry defined with the key "NewsFeed/%1/%2/content"

Parameters
keyto check

Definition at line 84 of file qgssettingsentry.cpp.

◆ name()

QString QgsSettingsEntryBase::name ( ) const
inline

Returns the name of the settings.

Since
QGIS 3.30

Definition at line 125 of file qgssettingsentry.h.

◆ options()

Qgis::SettingsOptions QgsSettingsEntryBase::options ( ) const
inline

Returns the settings options.

Since
QGIS 3.26

Definition at line 168 of file qgssettingsentry.h.

◆ origin()

Qgis::SettingsOrigin QgsSettingsEntryBase::origin ( const QStringList &  dynamicKeyPartList) const

Returns the origin of the setting if it exists.

Note
it will return Qgis::SettingsOrigin::Any if the key doesn't exist
Since
QGIS 3.30

Definition at line 120 of file qgssettingsentry.cpp.

◆ parent()

QgsSettingsTreeNode * QgsSettingsEntryBase::parent ( ) const
inline

Returns the parent tree element.

Since
QGIS 3.30

Definition at line 324 of file qgssettingsentry.h.

◆ remove() [1/2]

void QgsSettingsEntryBase::remove ( const QString &  dynamicKeyPart = QString()) const

Removes the settings from the underlying QSettings.

Parameters
dynamicKeyPartspecifies the dynamic part of the settings key.

Definition at line 125 of file qgssettingsentry.cpp.

◆ remove() [2/2]

void QgsSettingsEntryBase::remove ( const QStringList &  dynamicKeyPartList) const

Removes the settings from the underlying QSettings.

Parameters
dynamicKeyPartListspecifies the list of dynamic parts of the settings key.

Definition at line 130 of file qgssettingsentry.cpp.

◆ section()

int QgsSettingsEntryBase::section ( ) const

Returns settings section.

The settings section of the parent group is returned if available.

Deprecated:
since QGIS 3.26 the key is entirely self-defined

Definition at line 135 of file qgssettingsentry.cpp.

◆ settingsType()

virtual Qgis::SettingsType QgsSettingsEntryBase::settingsType ( ) const
inlinevirtual

Returns the settings entry type.

Reimplemented in QgsSettingsEntryEnumFlag< T >, QgsSettingsEntryEnumFlag< Qgis::GpsConnectionType >, QgsSettingsEntryEnumFlag< Qt::TimeSpec >, QgsSettingsEntryEnumFlag< Qgis::GpsInformationComponent >, QgsSettingsEntryEnumFlag< Qgis::DpiMode >, QgsSettingsEntryEnumFlag< Qgis::TilePixelRatio >, QgsSettingsEntryEnumFlag< Qgis::SnappingMode >, QgsSettingsEntryEnumFlag< Qgis::SnappingType >, QgsSettingsEntryEnumFlag< QgsTolerance::UnitType >, QgsSettingsEntryEnumFlag< Qgis::JoinStyle >, QgsSettingsEntryEnumFlag< Qgis::EndCapStyle >, QgsSettingsEntryEnumFlag< QgsVectorSimplifyMethod::SimplifyAlgorithm >, QgsSettingsEntryEnumFlag< QgsVectorSimplifyMethod::SimplifyHints >, QgsSettingsEntryVariant, QgsSettingsEntryString, QgsSettingsEntryStringList, QgsSettingsEntryBool, QgsSettingsEntryInteger, QgsSettingsEntryInteger64, QgsSettingsEntryDouble, QgsSettingsEntryColor, QgsSettingsEntryVariantMap, QgsSettingsEntryByReference< T >, QgsSettingsEntryByReference< QColor >, QgsSettingsEntryByReference< QString >, QgsSettingsEntryByReference< QStringList >, QgsSettingsEntryByReference< QVariant >, QgsSettingsEntryByReference< QVariantMap >, QgsSettingsEntryByValue< T >, QgsSettingsEntryByValue< bool >, QgsSettingsEntryByValue< double >, QgsSettingsEntryByValue< int >, QgsSettingsEntryByValue< qlonglong >, QgsSettingsEntryByValue< Qgis::GpsConnectionType >, QgsSettingsEntryByValue< Qt::TimeSpec >, QgsSettingsEntryByValue< Qgis::GpsInformationComponent >, QgsSettingsEntryByValue< Qgis::DpiMode >, QgsSettingsEntryByValue< Qgis::TilePixelRatio >, QgsSettingsEntryByValue< Qgis::SnappingMode >, QgsSettingsEntryByValue< Qgis::SnappingType >, QgsSettingsEntryByValue< QgsTolerance::UnitType >, QgsSettingsEntryByValue< Qgis::JoinStyle >, QgsSettingsEntryByValue< Qgis::EndCapStyle >, QgsSettingsEntryByValue< QgsVectorSimplifyMethod::SimplifyAlgorithm >, and QgsSettingsEntryByValue< QgsVectorSimplifyMethod::SimplifyHints >.

Definition at line 271 of file qgssettingsentry.h.

◆ setVariantValue() [1/2]

bool QgsSettingsEntryBase::setVariantValue ( const QVariant &  value,
const QString &  dynamicKeyPart = QString() 
) const
virtual

Set settings value.

Parameters
valuespecifies the value to set.
dynamicKeyPartspecifies the dynamic part of the settings key.
Deprecated:
since QGIS 3.26 use setVariantValuePrivate or an implementation setValue instead

Definition at line 140 of file qgssettingsentry.cpp.

◆ setVariantValue() [2/2]

bool QgsSettingsEntryBase::setVariantValue ( const QVariant &  value,
const QStringList &  dynamicKeyPartList 
) const
virtual

Set settings value.

Parameters
valuespecifies the value to set.
dynamicKeyPartListspecifies the list of dynamic parts of the settings key.
Deprecated:
since QGIS 3.26 use setVariantValuePrivate or an implementation setValue instead

Definition at line 145 of file qgssettingsentry.cpp.

◆ setVariantValuePrivate()

bool QgsSettingsEntryBase::setVariantValuePrivate ( const QVariant &  value,
const QStringList &  dynamicKeyPartList = QStringList() 
) const
protected

Sets the settings value with a variant value.

This should be called from any implementation as it takes care of actually calling QSettings

Since
QGIS 3.26

Definition at line 150 of file qgssettingsentry.cpp.

◆ valueAsVariant() [1/4]

QVariant QgsSettingsEntryBase::valueAsVariant ( const QString &  dynamicKeyPart,
bool  useDefaultValueOverride,
const QVariant &  defaultValueOverride 
) const

Returns settings value with an optional default value override.

Deprecated:
since QGIS 3.26 use valueAsVariantWithDefaultOverride instead

Definition at line 185 of file qgssettingsentry.cpp.

◆ valueAsVariant() [2/4]

QVariant QgsSettingsEntryBase::valueAsVariant ( const QString &  dynamicKeyPart = QString()) const

Returns settings value with.

Parameters
dynamicKeyPartspecifying the dynamic part of the settings key.

Definition at line 175 of file qgssettingsentry.cpp.

◆ valueAsVariant() [3/4]

QVariant QgsSettingsEntryBase::valueAsVariant ( const QStringList &  dynamicKeyPartList) const

Returns settings value with.

Parameters
dynamicKeyPartListspecifying the dynamic part of the settings key.

Definition at line 180 of file qgssettingsentry.cpp.

◆ valueAsVariant() [4/4]

QVariant QgsSettingsEntryBase::valueAsVariant ( const QStringList &  dynamicKeyPartList,
bool  useDefaultValueOverride,
const QVariant &  defaultValueOverride 
) const

Returns settings value with an optional default value override.

Deprecated:
since QGIS 3.26 use valueAsVariantWithDefaultOverride instead

Definition at line 192 of file qgssettingsentry.cpp.

◆ valueAsVariantWithDefaultOverride() [1/2]

QVariant QgsSettingsEntryBase::valueAsVariantWithDefaultOverride ( const QVariant &  defaultValueOverride,
const QString &  dynamicKeyPart = QString() 
) const

Returns settings value with a defaultValueOverride.

Since
QGIS 3.26

Definition at line 200 of file qgssettingsentry.cpp.

◆ valueAsVariantWithDefaultOverride() [2/2]

QVariant QgsSettingsEntryBase::valueAsVariantWithDefaultOverride ( const QVariant &  defaultValueOverride,
const QStringList &  dynamicKeyPartList 
) const

Returns settings value.

Parameters
dynamicKeyPartListspecifies the list of dynamic parts of the settings key.
defaultValueOverrideif valid is used instead of the normal default value.
Since
QGIS 3.26

Definition at line 205 of file qgssettingsentry.cpp.


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