Class: QgsSettingsTreeNode

class qgis.core.QgsSettingsTreeNode

Bases: sip.wrapper

QgsSettingsTreeNode is a tree node for the settings tree to help organizing and introspecting the tree. It is either a root node, a normal node or a named list (to store a group of settings under a dynamic named key). to automatically register a settings entry on its creation when a parent is provided.

See also

QgsSettingsTree

Added in version 3.30:

Methods

childNode

Returns the existing child node if it exists at the given key

childSetting

Returns the existing child settings if it exists at the given key

childrenNodes

Returns the children nodes

childrenSettings

Returns the children settings

completeKey

Returns the complete key of the node (including its parents)

createChildNode

Creates a normal tree node It will return the existing child node if it exists at the given key

createNamedListNode

Creates a named list tree node.

key

Returns the key of the node (without its parents)

namedNodesCount

Returns the number of named nodes in the complete key

parent

Returns the parent of the node or None if it does not exists

registerChildSetting

Registers a child setting

type

Returns the type of node

unregisterChildNode

Unregisters the child tree node

unregisterChildSetting

Unregisters the child setting

Attributes

staticMetaObject

childNode(self, key: str | None) QgsSettingsTreeNode | None

Returns the existing child node if it exists at the given key

Parameters:

key (Optional[str])

Return type:

Optional[QgsSettingsTreeNode]

childSetting(self, key: str | None) QgsSettingsEntryBase | None

Returns the existing child settings if it exists at the given key

Parameters:

key (Optional[str])

Return type:

Optional[QgsSettingsEntryBase]

childrenNodes(self) List[QgsSettingsTreeNode]

Returns the children nodes

Return type:

List[QgsSettingsTreeNode]

childrenSettings(self) List[QgsSettingsEntryBase]

Returns the children settings

Return type:

List[QgsSettingsEntryBase]

completeKey(self) str

Returns the complete key of the node (including its parents)

Return type:

str

createChildNode(self, key: str | None) QgsSettingsTreeNode | None

Creates a normal tree node It will return the existing child node if it exists at the given key

Raises:

QgsSettingsException – if a setting exists with the same key

Parameters:

key (Optional[str])

Return type:

Optional[QgsSettingsTreeNode]

createNamedListNode(self, key: str | None, options: Qgis.SettingsTreeNodeOptions | Qgis.SettingsTreeNodeOption = Qgis.SettingsTreeNodeOptions()) QgsSettingsTreeNamedListNode | None

Creates a named list tree node. This is useful to register groups of settings for several named items (for instance credentials for several named services)

Parameters:
Return type:

Optional[QgsSettingsTreeNamedListNode]

key(self) str

Returns the key of the node (without its parents)

Return type:

str

namedNodesCount(self) int

Returns the number of named nodes in the complete key

Return type:

int

parent(self) QgsSettingsTreeNode | None

Returns the parent of the node or None if it does not exists

Return type:

Optional[QgsSettingsTreeNode]

registerChildSetting(self, setting: QgsSettingsEntryBase | None, key: str | None)

Registers a child setting

Parameters:
  • setting (Optional[QgsSettingsEntryBase]) – the setting to register

  • key (Optional[str]) – the key of the setting (not the complete key from its parents)

Note

Ownership of the setting is transferred

Note

The registration is automatically done when calling the setting’s constructor with the parent argument signature

Raises:

QgsSettingsException – if a setting exists with the same key

staticMetaObject = <PyQt5.QtCore.QMetaObject object>
type(self) Qgis.SettingsTreeNodeType

Returns the type of node

Return type:

Qgis.SettingsTreeNodeType

unregisterChildNode(self, node: QgsSettingsTreeNode | None)

Unregisters the child tree node

Parameters:

node (Optional[QgsSettingsTreeNode])

unregisterChildSetting(self, setting: QgsSettingsEntryBase | None, deleteSettingValues: bool = False, parentsNamedItems: Iterable[str | None] = [])

Unregisters the child setting

Parameters:
  • setting (Optional[QgsSettingsEntryBase]) – the setting to unregister

  • deleteSettingValues (bool = False) – if True, the values of the settings will also be deleted

  • parentsNamedItems (Iterable[Optional[str]] = []) – the list of named items in the parent named list (if any)