QGIS API Documentation  2.8.2-Wien
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | Protected Attributes | List of all members
QgsPluginLayer Class Reference

Base class for plugin layers. More...

#include <qgspluginlayer.h>

Inheritance diagram for QgsPluginLayer:
Inheritance graph
[legend]

Public Member Functions

 QgsPluginLayer (QString layerType, QString layerName=QString())
virtual QgsMapLayerRenderercreateMapRenderer (QgsRenderContext &rendererContext) override
 Return new instance of QgsMapLayerRenderer that will be used for rendering of given context.
virtual QgsLegendSymbologyList legendSymbologyItems (const QSize &iconSize)
 return a list of symbology items for the legend (defult implementation returns nothing)
QString pluginLayerType ()
 return plugin layer type (the same as used in QgsPluginLayerRegistry)
void setExtent (const QgsRectangle &extent) override
 Set the extent.
- Public Member Functions inherited from QgsMapLayer
 QgsMapLayer (QgsMapLayer::LayerType type=VectorLayer, QString lyrname=QString::null, QString source=QString::null)
 Constructor.
virtual ~QgsMapLayer ()
 Destructor.
const QString & abstract () const
const QString & attribution () const
const QString & attributionUrl () const
QPainter::CompositionMode blendMode () const
 Read blend mode for layer.
Q_DECL_DEPRECATED QImage * cacheImage ()
const
QgsCoordinateReferenceSystem
crs () const
 Returns layer's spatial reference system.
QVariant customProperty (const QString &value, const QVariant &defaultValue=QVariant()) const
 Read a custom property from layer.
const QString & dataUrl () const
const QString & dataUrlFormat () const
virtual bool draw (QgsRenderContext &rendererContext)
 This is the method that does the actual work of drawing the layer onto a paint device.
virtual void drawLabels (QgsRenderContext &rendererContext)
 Draw labels.
virtual QgsError error () const
 Get current status error.
virtual void exportNamedStyle (QDomDocument &doc, QString &errorMsg)
 Export the properties of this layer as named style in a QDomDocument.
virtual void exportSldStyle (QDomDocument &doc, QString &errorMsg)
 Export the properties of this layer as SLD style in a QDomDocument.
virtual QgsRectangle extent ()
 Return the extent of the layer.
bool hasScaleBasedVisibility () const
 Returns whether scale based visibility is enabled for the layer.
QString id () const
 Get this layer's unique ID, this ID is used to access this layer from map layer registry.
virtual bool importNamedStyle (QDomDocument &doc, QString &errorMsg)
 Import the properties of this layer from a QDomDocument.
virtual bool isEditable () const
 True if the layer can be edited.
bool isValid ()
const QString & keywordList () const
virtual Q_DECL_DEPRECATED QString lastError ()
virtual Q_DECL_DEPRECATED QString lastErrorTitle ()
QgsMapLayerLegendlegend () const
 Can be null.
const QString & legendUrl () const
const QString & legendUrlFormat () const
virtual QString loadDefaultStyle (bool &theResultFlag)
 Retrieve the default style for this layer if one exists (either as a .qml file on disk or as a record in the users style table in their personal qgis.db)
virtual QString loadNamedStyle (const QString &theURI, bool &theResultFlag)
 Retrieve a named style for this layer if one exists (either as a .qml file on disk or as a record in the users style table in their personal qgis.db)
virtual bool loadNamedStyleFromDb (const QString &db, const QString &theURI, QString &qml)
virtual QString loadSldStyle (const QString &theURI, bool &theResultFlag)
float maximumScale () const
 Returns the maximum scale denominator at which the layer is visible.
const QString & metadataUrl () const
const QString & metadataUrlFormat () const
const QString & metadataUrlType () const
float minimumScale () const
 Returns the minimum scale denominator at which the layer is visible.
const QString & name () const
 Get the display name of the layer.
virtual Q_DECL_DEPRECATED void onCacheImageDelete ()
const QString & originalName () const
 Get the original name of the layer.
QString publicSource () const
bool readLayerXML (const QDomElement &layerElement)
 sets state from Dom document
virtual bool readSld (const QDomNode &node, QString &errorMessage)
virtual bool readSymbology (const QDomNode &node, QString &errorMessage)=0
 Read the symbology for the current layer from the Dom node supplied.
virtual void reload ()
 Synchronises with changes in the datasource.
void removeCustomProperty (const QString &key)
 Remove a custom property from layer.
virtual QString saveDefaultStyle (bool &theResultFlag)
 Save the properties of this layer as the default style (either as a .qml file on disk or as a record in the users style table in their personal qgis.db)
virtual QString saveNamedStyle (const QString &theURI, bool &theResultFlag)
 Save the properties of this layer as a named style (either as a .qml file on disk or as a record in the users style table in their personal qgis.db)
virtual QString saveSldStyle (const QString &theURI, bool &theResultFlag)
void setAbstract (const QString &abstract)
void setAttribution (const QString &attrib)
void setAttributionUrl (const QString &attribUrl)
void setBlendMode (const QPainter::CompositionMode &blendMode)
 Write blend mode for layer.
Q_DECL_DEPRECATED void setCacheImage (QImage *)
void setCrs (const QgsCoordinateReferenceSystem &srs, bool emitSignal=true)
 Sets layer's spatial reference system.
void setCustomProperty (const QString &key, const QVariant &value)
 Set a custom property for layer.
void setDataUrl (const QString &dataUrl)
void setDataUrlFormat (const QString &dataUrlFormat)
void setKeywordList (const QString &keywords)
void setLayerName (const QString &name)
 Set the display name of the layer.
virtual void setLayerOrder (const QStringList &layers)
 Reorders the previously selected sublayers of this layer from bottom to top (Useful for providers that manage their own layers, such as WMS)
void setLegend (QgsMapLayerLegend *legend)
 Assign a legend controller to the map layer.
void setLegendUrl (const QString &legendUrl)
void setLegendUrlFormat (const QString &legendUrlFormat)
void setMetadataUrl (const QString &metaUrl)
void setMetadataUrlFormat (const QString &metaUrlFormat)
void setMetadataUrlType (const QString &metaUrlType)
virtual void setSubLayerVisibility (QString name, bool vis)
 Set the visibility of the given sublayer name.
void setTitle (const QString &title)
const QString & source () const
 Returns the source for the layer.
QgsMapLayerStyleManagerstyleManager () const
 Get access to the layer's style manager.
virtual QString styleURI ()
 Retrieve the style URI for this layer (either as a .qml file on disk or as a record in the users style table in their personal qgis.db)
virtual QStringList subLayers () const
 Returns the sublayers of this layer (Useful for providers that manage their own layers, such as WMS)
const QString & title () const
QgsMapLayer::LayerType type () const
 Get the type of the layer.
QUndoStack * undoStack ()
 Return pointer to layer's undo stack.
bool writeLayerXML (QDomElement &layerElement, QDomDocument &document, QString relativeBasePath=QString::null)
 stores state in Dom node
virtual bool writeSymbology (QDomNode &node, QDomDocument &doc, QString &errorMessage) const =0
 Write the symbology for the layer into the docment provided.

Protected Attributes

QString mPluginLayerType
- Protected Attributes inherited from QgsMapLayer
QString mAbstract
 Description of the layer.
QString mAttribution
 Attribution of the layer.
QString mAttributionUrl
QString mDataSource
 data source description string, varies by layer type
QString mDataUrl
 DataUrl of the layer.
QString mDataUrlFormat
QgsError mError
 Error.
QgsRectangle mExtent
 Extent of the layer.
QString mKeywordList
QString mLayerName
 Name of the layer - used for display.
QString mLayerOrigName
 Original name of the layer.
QString mLegendUrl
 WMS legend.
QString mLegendUrlFormat
QString mMetadataUrl
 MetadataUrl of the layer.
QString mMetadataUrlFormat
QString mMetadataUrlType
QString mTitle
bool mValid
 Indicates if the layer is valid and can be drawn.

Additional Inherited Members

- Public Types inherited from QgsMapLayer
enum  LayerType { VectorLayer, RasterLayer, PluginLayer }
 Layers enum defining the types of layers that can be added to a map. More...
- Public Slots inherited from QgsMapLayer
Q_DECL_DEPRECATED void clearCacheImage ()
 Clear cached image.
virtual void invalidTransformInput ()
 Event handler for when a coordinate transform fails due to bad vertex error.
virtual QString metadata ()
 Obtain Metadata for this layer.
void setMaximumScale (const float theMaxScale)
 Sets the maximum scale denominator at which the layer will be visible.
void setMinimumScale (const float theMinScale)
 Sets the minimum scale denominator at which the layer will be visible.
void setScaleBasedVisibility (const bool enabled)
 Sets whether scale based visibility is enabled for the layer.
virtual QDateTime timestamp () const
 Time stamp of data source in the moment when data/metadata were loaded by provider.
Q_DECL_DEPRECATED void toggleScaleBasedVisibility (bool theVisibilityFlag)
 Accessor for the scale based visilibility flag.
void triggerRepaint ()
 Will advice the map canvas (and any other interested party) that this layer requires to be repainted.
- Signals inherited from QgsMapLayer
void blendModeChanged (const QPainter::CompositionMode &blendMode)
 Signal emitted when the blend mode is changed, through QgsMapLayer::setBlendMode()
void dataChanged ()
 data of layer changed
void drawingProgress (int theProgress, int theTotalSteps)
void layerCrsChanged ()
 Emit a signal that layer's CRS has been reset.
void layerNameChanged ()
 Emit a signal that the layer name has been changed.
void legendChanged ()
 Signal emitted when legend of the layer has changed.
void recalculateExtents ()
 This is used to send a request that any mapcanvas using this layer update its extents.
void rendererChanged ()
 Signal emitted when renderer is changed.
void repaintRequested ()
 By emitting this signal the layer tells that either appearance or content have been changed and any view showing the rendered layer should refresh itself.
void screenUpdateRequested ()
void statusChanged (QString theStatus)
 Emit a signal with status (e.g.
- Static Public Member Functions inherited from QgsMapLayer
static QDomDocument asLayerDefinition (QList< QgsMapLayer * > layers, QString relativeBasePath=QString::null)
 Returns the given layer as a layer definition document Layer definitions store the data source as well as styling and custom properties.
static QString capitaliseLayerName (const QString &name)
 A convenience function to (un)capitalise the layer name.
static QList< QgsMapLayer * > fromLayerDefinition (QDomDocument &document)
 Creates a new layer from a layer defininition document.
static QList< QgsMapLayer * > fromLayerDefinitionFile (const QString &qlrfile)
- Protected Member Functions inherited from QgsMapLayer
void appendError (const QgsErrorMessage &theMessage)
 Add error message.
void readCustomProperties (const QDomNode &layerNode, const QString &keyStartsWith="")
 Read custom properties from project file.
void readStyleManager (const QDomNode &layerNode)
 Read style manager's configuration (if any).
virtual bool readXml (const QDomNode &layer_node)
 called by readLayerXML(), used by children to read state specific to them from project files.
void setError (const QgsError &theError)
 Set error message.
void setValid (bool valid)
 set whether layer is valid or not - should be used in constructor.
void writeCustomProperties (QDomNode &layerNode, QDomDocument &doc) const
 Write custom properties to project file.
void writeStyleManager (QDomNode &layerNode, QDomDocument &doc) const
 Write style manager's configuration (if exists).
virtual bool writeXml (QDomNode &layer_node, QDomDocument &document)
 called by writeLayerXML(), used by children to write state specific to them to project files.

Detailed Description

Base class for plugin layers.

These can be implemented by plugins and registered in QgsPluginLayerRegistry.

In order to be readable from project files, they should set these attributes in layer DOM node: "type" = "plugin" "name" = "your_layer_type"

Definition at line 30 of file qgspluginlayer.h.

Constructor & Destructor Documentation

QgsPluginLayer::QgsPluginLayer ( QString  layerType,
QString  layerName = QString() 
)

Definition at line 20 of file qgspluginlayer.cpp.

Member Function Documentation

QgsMapLayerRenderer * QgsPluginLayer::createMapRenderer ( QgsRenderContext rendererContext)
overridevirtual

Return new instance of QgsMapLayerRenderer that will be used for rendering of given context.

The default implementation returns map layer renderer which just calls draw(). This may work, but it is unsafe for multi-threaded rendering because of the run conditions that may happen (e.g. something is changed in the layer while it is being rendered).

Note
added in 2.4

Reimplemented from QgsMapLayer.

Definition at line 65 of file qgspluginlayer.cpp.

QgsLegendSymbologyList QgsPluginLayer::legendSymbologyItems ( const QSize &  iconSize)
virtual

return a list of symbology items for the legend (defult implementation returns nothing)

Note
Added in v2.1

Definition at line 36 of file qgspluginlayer.cpp.

QString QgsPluginLayer::pluginLayerType ( )

return plugin layer type (the same as used in QgsPluginLayerRegistry)

Definition at line 26 of file qgspluginlayer.cpp.

void QgsPluginLayer::setExtent ( const QgsRectangle rect)
overridevirtual

Set the extent.

Reimplemented from QgsMapLayer.

Definition at line 31 of file qgspluginlayer.cpp.

Member Data Documentation

QString QgsPluginLayer::mPluginLayerType
protected

Definition at line 59 of file qgspluginlayer.h.


The documentation for this class was generated from the following files: