Class: QgsProjectProperty

class qgis.core.QgsProjectProperty

Bases: sip.wrapper

An Abstract Base Class for QGIS project property hierarchys.

Each sub-class is either a QgsProjectPropertyKey or QgsProjectPropertyValue. QgsProjectPropertyKey can contain either QgsProjectPropertyKey or QgsProjectPropertyValues, thus describing an hierarchy. QgsProjectPropertyValues are always graph leaves.

Note

This class is used internally by QgsProject. It’s generally recommended that the methods in QgsProject are used to modify project properties rather than using these low-level classes.

New in version 3.0: Methods

dump Dumps out the keys and values
isKey Returns true if the property is a QgsProjectPropertyKey.
isLeaf Returns true if property is a leaf node.
isValue Returns true if the property is a QgsProjectPropertyValue.
readXml Restores the property hierarchy from a specified DOM node.
value Returns the node’s value.
writeXml Writes the property hierarchy to a specified DOM element.

Signals

Attributes

dump(self, tabs: int = 0)

Dumps out the keys and values

Parameters:tabs – is number of tabs to print; used for pretty-printing hierarchy
isKey(self) → bool

Returns true if the property is a QgsProjectPropertyKey.

See also

isValue()

See also

isLeaf()

isLeaf(self) → bool

Returns true if property is a leaf node.

A leaf node is a key node that has either no value or only a single value. A non-leaf node would be a key node with key sub-nodes.

This is used for entryList() and subkeyList() implementation.

isValue(self) → bool

Returns true if the property is a QgsProjectPropertyValue.

See also

isKey()

See also

isLeaf()

readXml(self, keyNode: QDomNode) → bool

Restores the property hierarchy from a specified DOM node.

Used for restoring properties from project file

value(self) → Any

Returns the node’s value.

For QgsProjectPropertyValue nodes, this is straightforward – just return the embedded QVariant, _value. For QgsProjectPropertyKey, this means returning the QgsProjectPropertyValue _value that is keyed by its name, if it exists; i.e., QgsProjectPropertyKey “foo” will return the property value mapped to its name, “foo”, in its QHash of QProperties.

writeXml(self, nodeName: str, element: QDomElement, document: QDomDocument) → bool

Writes the property hierarchy to a specified DOM element.

Used for saving properties to project file.

Parameters:
  • nodeName – the tag name associated with this element
  • element – the parent (or encompassing) property element
  • document – the overall project file Dom document