QGIS/python/core/qgsprojectproperty.sip

294 lines
7.6 KiB
Plaintext
Raw Normal View History

/************************************************************************
* This file has been generated automatically from *
* *
* src/core/qgsprojectproperty.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
************************************************************************/
class QgsProjectProperty
{
%Docstring
2017-12-15 10:36:55 -04:00
An Abstract Base Class for QGIS project property hierarchys.
2017-12-15 10:36:55 -04:00
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
2017-12-15 10:36:55 -04:00
QgsProject are used to modify project properties rather than using these low-level classes.
.. versionadded:: 3.0
%End
%TypeHeaderCode
#include "qgsprojectproperty.h"
%End
public:
QgsProjectProperty();
virtual ~QgsProjectProperty();
virtual void dump( int tabs = 0 ) const = 0;
%Docstring
2017-12-15 10:36:55 -04:00
Dumps out the keys and values
2017-12-15 10:36:55 -04:00
:param tabs: is number of tabs to print; used for pretty-printing hierarchy
%End
virtual bool isKey() const = 0;
%Docstring
2017-12-15 10:36:55 -04:00
Returns true if the property is a QgsProjectPropertyKey.
2017-12-05 20:04:14 -04:00
.. seealso:: :py:func:`isValue()`
2017-12-15 10:36:55 -04:00
2017-12-05 20:04:14 -04:00
.. seealso:: :py:func:`isLeaf()`
%End
virtual bool isValue() const = 0;
%Docstring
2017-12-15 10:36:55 -04:00
Returns true if the property is a QgsProjectPropertyValue.
2017-12-05 20:04:14 -04:00
.. seealso:: :py:func:`isKey()`
2017-12-15 10:36:55 -04:00
2017-12-05 20:04:14 -04:00
.. seealso:: :py:func:`isLeaf()`
%End
virtual bool isLeaf() const = 0;
%Docstring
2017-12-15 10:36:55 -04:00
Returns true if property is a leaf node.
2017-12-15 10:36:55 -04:00
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.
2017-12-15 10:36:55 -04:00
This is used for entryList() and subkeyList() implementation.
%End
virtual bool readXml( const QDomNode &keyNode ) = 0;
%Docstring
2017-12-15 10:36:55 -04:00
Restores the property hierarchy from a specified DOM node.
Used for restoring properties from project file
%End
virtual bool writeXml( const QString &nodeName,
QDomElement &element,
QDomDocument &document ) = 0;
%Docstring
2017-12-15 10:36:55 -04:00
Writes the property hierarchy to a specified DOM element.
Used for saving properties to project file.
2017-12-15 10:36:55 -04:00
:param nodeName: the tag name associated with this element
:param element: the parent (or encompassing) property element
:param document: the overall project file Dom document
%End
virtual QVariant value() const = 0;
%Docstring
2017-12-15 10:36:55 -04:00
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.
%End
};
class QgsProjectPropertyValue : QgsProjectProperty
{
%Docstring
2017-12-15 10:36:55 -04:00
Project property value node, contains a QgsProjectPropertyKey's value.
.. versionadded:: 3.0
%End
%TypeHeaderCode
#include "qgsprojectproperty.h"
%End
public:
QgsProjectPropertyValue();
%Docstring
Constructor for QgsProjectPropertyValue.
%End
QgsProjectPropertyValue( const QVariant &value );
%Docstring
2017-12-15 10:36:55 -04:00
Constructor for QgsProjectPropertyValue, initialized to a specified value.
%End
virtual bool isKey() const;
virtual bool isValue() const;
virtual QVariant value() const;
virtual bool isLeaf() const;
virtual void dump( int tabs = 0 ) const;
virtual bool readXml( const QDomNode &keyNode );
virtual bool writeXml( const QString &nodeName,
QDomElement &element,
QDomDocument &document );
};
class QgsProjectPropertyKey : QgsProjectProperty
{
%Docstring
2017-12-15 10:36:55 -04:00
Project property key node.
2017-12-15 10:36:55 -04:00
Can, itself, contain QgsProjectPropertyKey and QgsProjectPropertyValues.
2017-12-15 10:36:55 -04:00
The internal QHash, mProperties, maps key names to their respective
QgsProjectPropertyValue or next QgsProjectPropertyKey in the key name sequence. The key with
the current name should contain its QgsProjectPropertyValue.
2017-12-15 10:36:55 -04:00
E.g., given the key sequence "/foo/bar", "foo" will have a corresponding
QgsProjectPropertyKey with a name "foo". It will contain an element in its
mProperties that maps to "bar", which is another QgsProjectPropertyKey. The "bar"
QgsProjectPropertyKey will, in turn, have an element that maps to itself, i.e. "bar",
that will contain a QgsProjectPropertyValue.
.. versionadded:: 3.0
%End
%TypeHeaderCode
#include "qgsprojectproperty.h"
%End
public:
QgsProjectPropertyKey( const QString &name = QString() );
%Docstring
2017-12-15 10:36:55 -04:00
Create a new QgsProjectPropertyKey with the specified identifier.
%End
~QgsProjectPropertyKey();
2016-10-21 13:31:42 +02:00
QString name() const;
%Docstring
2017-12-15 10:36:55 -04:00
The name of the property is used as identifier.
2017-12-05 20:04:14 -04:00
.. seealso:: :py:func:`setName()`
%End
2014-01-26 18:35:21 +01:00
void setName( const QString &name );
%Docstring
2017-12-15 10:36:55 -04:00
The name of the property is used as identifier.
.. versionadded:: 3.0
2017-12-15 10:36:55 -04:00
2017-12-05 20:04:14 -04:00
.. seealso:: :py:func:`name()`
%End
virtual QVariant value() const;
%Docstring
2017-12-15 10:36:55 -04:00
If this key has a value, it will be stored by its name in its
properties
%End
QgsProjectPropertyKey *addKey( const QString &keyName );
%Docstring
2017-12-15 10:36:55 -04:00
Adds the specified property key as a sub-key.
%End
void removeKey( const QString &keyName );
%Docstring
2017-12-15 10:36:55 -04:00
Removes the specified key.
%End
QgsProjectPropertyValue *setValue( const QString &name, const QVariant &value );
%Docstring
2017-12-15 10:36:55 -04:00
Sets the value associated with this key.
2017-12-15 21:36:08 -04:00
2017-12-15 10:36:55 -04:00
:param name: is the key name
:param value: is the value to set
:return: pointer to property value
%End
QgsProjectPropertyValue *setValue( const QVariant &value );
%Docstring
2017-12-15 10:36:55 -04:00
Set the value associated with this key
.. note::
that the single value node associated with each key is always
2017-12-15 10:36:55 -04:00
stored keyed by the current key name
%End
virtual void dump( int tabs = 0 ) const;
virtual bool readXml( const QDomNode &keyNode );
virtual bool writeXml( const QString &nodeName, QDomElement &element, QDomDocument &document );
int count() const;
%Docstring
2017-12-15 10:36:55 -04:00
Returns the number of sub-keys contained by this property.
%End
bool isEmpty() const;
%Docstring
2017-12-15 10:36:55 -04:00
Returns true if this property contains no sub-keys.
%End
virtual bool isKey() const;
virtual bool isValue() const;
virtual bool isLeaf() const;
void entryList( QStringList &entries ) const;
%Docstring
2017-12-15 10:36:55 -04:00
Returns any sub-keys contained by this property that do not contain other keys.
2017-12-05 20:04:14 -04:00
.. seealso:: :py:func:`subkeyList()`
%End
void subkeyList( QStringList &entries ) const;
%Docstring
2017-12-15 10:36:55 -04:00
Return any sub-keys contained by this property which themselves contain other keys.
2017-12-05 20:04:14 -04:00
.. seealso:: :py:func:`entryList()`
%End
virtual void clear();
%Docstring
2017-12-15 10:36:55 -04:00
Resets the property to a default, empty state.
%End
virtual void clearKeys();
%Docstring
2017-12-15 10:36:55 -04:00
Deletes any sub-nodes from the property.
%End
QgsProjectProperty *find( const QString &propertyName ) const;
%Docstring
2017-12-15 10:36:55 -04:00
Attempts to find a property with a matching sub-key name.
%End
};
/************************************************************************
* This file has been generated automatically from *
* *
* src/core/qgsprojectproperty.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
************************************************************************/