QGIS API Documentation
2.6.0-Brighton
|
The QgsLayerTreeMapCanvasBridge class takes care of updates of layer set for QgsMapCanvas from a layer tree. More...
#include <qgslayertreemapcanvasbridge.h>
Public Slots | |
void | setHasCustomLayerOrder (bool override) |
void | setCustomLayerOrder (const QStringList &order) |
void | setCanvasLayers () |
force update of canvas layers from the layer tree. Normally this should not be needed to be called. | |
void | readProject (const QDomDocument &doc) |
void | writeProject (QDomDocument &doc) |
Signals | |
void | hasCustomLayerOrderChanged (bool) |
void | customLayerOrderChanged (const QStringList &order) |
Public Member Functions | |
QgsLayerTreeMapCanvasBridge (QgsLayerTreeGroup *root, QgsMapCanvas *canvas, QObject *parent=0) | |
Constructor: does not take ownership of the layer tree nor canvas. | |
void | clear () |
QgsLayerTreeGroup * | rootGroup () const |
QgsMapCanvas * | mapCanvas () const |
bool | hasCustomLayerOrder () const |
QStringList | customLayerOrder () const |
QStringList | defaultLayerOrder () const |
void | setAutoSetupOnFirstLayer (bool enabled) |
if enabled, will automatically set full canvas extent and destination CRS + map units when first layer(s) are added | |
bool | autoSetupOnFirstLayer () const |
void | setAutoEnableCrsTransform (bool enabled) |
if enabled, will automatically turn on on-the-fly reprojection of layers if a layer with different source CRS is added | |
bool | autoEnableCrsTransform () const |
Protected Slots | |
void | nodeAddedChildren (QgsLayerTreeNode *node, int indexFrom, int indexTo) |
void | nodeRemovedChildren () |
void | nodeVisibilityChanged () |
void | nodeCustomPropertyChanged (QgsLayerTreeNode *node, QString key) |
Protected Member Functions | |
void | defaultLayerOrder (QgsLayerTreeNode *node, QStringList &order) const |
void | setCanvasLayers (QgsLayerTreeNode *node, QList< QgsMapCanvasLayer > &layers) |
void | deferredSetCanvasLayers () |
Protected Attributes | |
QgsLayerTreeGroup * | mRoot |
QgsMapCanvas * | mCanvas |
bool | mPendingCanvasUpdate |
bool | mHasCustomLayerOrder |
QStringList | mCustomLayerOrder |
bool | mAutoSetupOnFirstLayer |
bool | mAutoEnableCrsTransform |
bool | mHasFirstLayer |
bool | mLastLayerCount |
QgsCoordinateReferenceSystem | mFirstCRS |
The QgsLayerTreeMapCanvasBridge class takes care of updates of layer set for QgsMapCanvas from a layer tree.
The class listens to the updates in the layer tree and updates the list of layers for rendering whenever some layers are added, removed, or their visibility changes.
The update of layers is not done immediately - it is postponed, so a series of updates to the layer tree will trigger just one update of canvas layers.
Also allows the client to override the default order of layers. This is useful in advanced cases where the grouping in layer tree should be independent from the actual order in the canvas.
QgsLayerTreeMapCanvasBridge::QgsLayerTreeMapCanvasBridge | ( | QgsLayerTreeGroup * | root, |
QgsMapCanvas * | canvas, | ||
QObject * | parent = 0 |
||
) |
Constructor: does not take ownership of the layer tree nor canvas.
|
inline |
|
inline |
void QgsLayerTreeMapCanvasBridge::clear | ( | ) |
|
inline |
|
signal |
QStringList QgsLayerTreeMapCanvasBridge::defaultLayerOrder | ( | ) | const |
|
protected |
|
protected |
|
inline |
|
signal |
|
inline |
|
protectedslot |
|
protectedslot |
|
protectedslot |
|
protectedslot |
|
slot |
|
inline |
|
inline |
if enabled, will automatically turn on on-the-fly reprojection of layers if a layer with different source CRS is added
|
inline |
if enabled, will automatically set full canvas extent and destination CRS + map units when first layer(s) are added
|
slot |
force update of canvas layers from the layer tree. Normally this should not be needed to be called.
|
protected |
|
slot |
|
slot |
|
slot |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |