1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222
|
/************************************************************************
* This file has been generated automatically from *
* *
* src/core/symbology/qgsrendererregistry.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.py again *
************************************************************************/
class QgsRendererWidget /External/;
class QgsRendererAbstractMetadata
{
%Docstring(signature="appended")
Stores metadata about one renderer class.
.. note::
It's necessary to implement :py:func:`~createRenderer` function.
In C++ you can use :py:class:`QgsRendererMetadata` convenience class.
%End
%TypeHeaderCode
#include "qgsrendererregistry.h"
%End
public:
enum LayerType /BaseType=IntEnum/
{
PointLayer,
LineLayer,
PolygonLayer,
All,
};
typedef QFlags<QgsRendererAbstractMetadata::LayerType> LayerTypes;
QgsRendererAbstractMetadata( const QString &name, const QString &visibleName, const QIcon &icon = QIcon() );
%Docstring
Constructor for QgsRendererAbstractMetadata, with the specified
``name``.
The ``visibleName`` argument gives a translated, user friendly string
identifying the renderer type.
The ``icon`` argument can be used to specify an icon representing the
renderer.
%End
virtual ~QgsRendererAbstractMetadata();
QString name() const;
%Docstring
Returns the unique name of the renderer. This value is not translated.
.. seealso:: :py:func:`visibleName`
%End
QString visibleName() const;
%Docstring
Returns a friendly display name of the renderer. This value is
translated.
.. seealso:: :py:func:`name`
%End
QIcon icon() const;
%Docstring
Returns an icon representing the renderer.
.. seealso:: :py:func:`setIcon`
%End
void setIcon( const QIcon &icon );
%Docstring
Sets an ``icon`` representing the renderer.
.. seealso:: :py:func:`icon`
%End
virtual QgsRendererAbstractMetadata::LayerTypes compatibleLayerTypes() const;
%Docstring
Returns flags indicating the types of layer the renderer is compatible
with.
%End
virtual QgsFeatureRenderer *createRenderer( QDomElement &elem, const QgsReadWriteContext &context ) = 0 /Factory/;
%Docstring
Returns new instance of the renderer given the DOM element. Returns
``None`` on error. Pure virtual function: must be implemented in derived
classes.
%End
virtual QgsRendererWidget *createRendererWidget( QgsVectorLayer *layer, QgsStyle *style, QgsFeatureRenderer *oldRenderer ) /Factory/;
%Docstring
Returns new instance of settings widget for the renderer. Returns
``None`` on error.
The ``oldRenderer`` argument may refer to previously used renderer (or
it is ``None``). If not ``None``, it may be used to initialize GUI of
the widget from the previous settings. The old renderer does not have to
be of the same type as returned by
:py:func:`~QgsRendererAbstractMetadata.createRenderer`.
%End
virtual QgsFeatureRenderer *createRendererFromSld( QDomElement &elem, Qgis::GeometryType geomType ) /Factory/;
%Docstring
Returns a new instance of the renderer, converted from an SLD XML
element.
%End
protected:
};
QFlags<QgsRendererAbstractMetadata::LayerType> operator|(QgsRendererAbstractMetadata::LayerType f1, QFlags<QgsRendererAbstractMetadata::LayerType> f2);
class QgsRendererMetadata : QgsRendererAbstractMetadata
{
%Docstring(signature="appended")
Convenience metadata class that uses static functions to create renderer
and its widget.
%End
%TypeHeaderCode
#include "qgsrendererregistry.h"
%End
public:
virtual QgsFeatureRenderer *createRenderer( QDomElement &elem, const QgsReadWriteContext &context ) /Factory/;
virtual QgsRendererWidget *createRendererWidget( QgsVectorLayer *layer, QgsStyle *style, QgsFeatureRenderer *renderer ) /Factory/;
virtual QgsFeatureRenderer *createRendererFromSld( QDomElement &elem, Qgis::GeometryType geomType ) /Factory/;
virtual QgsRendererAbstractMetadata::LayerTypes compatibleLayerTypes() const;
protected:
private:
QgsRendererMetadata();
};
class QgsRendererRegistry
{
%Docstring(signature="appended")
Registry of renderers.
:py:class:`QgsRendererRegistry` is not usually directly created, but
rather accessed through :py:func:`QgsApplication.rendererRegistry()`.
%End
%TypeHeaderCode
#include "qgsrendererregistry.h"
%End
public:
QgsRendererRegistry();
~QgsRendererRegistry();
bool addRenderer( QgsRendererAbstractMetadata *metadata /Transfer/ );
%Docstring
Adds a renderer to the registry. Takes ownership of the metadata object.
:param metadata: renderer metadata
:return: ``True`` if renderer was added successfully, or ``False`` if
renderer could not be added (e.g., a renderer with a duplicate
name already exists)
%End
bool removeRenderer( const QString &rendererName );
%Docstring
Removes a renderer from registry.
:param rendererName: name of renderer to remove from registry
:return: ``True`` if renderer was successfully removed, or ``False`` if
matching renderer could not be found
%End
QgsRendererAbstractMetadata *rendererMetadata( const QString &rendererName );
%Docstring
Returns the metadata for a specified renderer. Returns ``None`` if a
matching renderer was not found in the registry.
%End
QStringList renderersList( QgsRendererAbstractMetadata::LayerTypes layerTypes = QgsRendererAbstractMetadata::All ) const;
%Docstring
Returns a list of available renderers.
:param layerTypes: flags to filter the renderers by compatible layer
types
%End
QStringList renderersList( const QgsVectorLayer *layer ) const;
%Docstring
Returns a list of available renderers which are compatible with a
specified layer.
:param layer: vector layer
%End
private:
QgsRendererRegistry( const QgsRendererRegistry &rh );
};
/************************************************************************
* This file has been generated automatically from *
* *
* src/core/symbology/qgsrendererregistry.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.py again *
************************************************************************/
|