QGIS/python/core/auto_generated/qgsprojectproperty.sip.in

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
2018-01-12 20:51:17 -04:00
QgsProject are used to modify project properties rather than using these low-level classes.
2017-12-15 10:36:55 -04:00
.. 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.
.. seealso:: :py:func:`isValue`
2017-12-15 10:36:55 -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.
.. seealso:: :py:func:`isKey`
2017-12-15 10:36:55 -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
2017-12-19 11:43:52 -04:00
mProperties that maps to "bar", which is another :py:class:`QgsProjectPropertyKey`. The "bar"
2017-12-15 10:36:55 -04:00
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.
.. 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.
.. seealso:: :py:func:`name`
2018-05-28 11:31:08 -04:00
.. versionadded:: 3.0
%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
2018-01-12 20:51:17 -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.
.. seealso:: :py:func:`subkeyList`
%End
void subkeyList( QStringList &entries ) const;
%Docstring
Returns any sub-keys contained by this property which themselves contain other keys.
2017-12-15 10:36:55 -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 *
************************************************************************/