QGIS API Documentation
2.8.2-Wien
|
The QgsLegendRendererItem class is abstract interface for legend items returned from QgsMapLayerLegend implementation. More...
#include <qgslayertreemodellegendnode.h>
Classes | |
struct | ItemContext |
struct | ItemMetrics |
Public Types | |
enum | LegendNodeRoles { RuleKeyRole = Qt::UserRole, SymbolV2LegacyRuleKeyRole, ParentRuleKeyRole } |
Signals | |
void | dataChanged () |
Emitted on internal data change so the layer tree model can forward the signal to views. |
Public Member Functions | |
~QgsLayerTreeModelLegendNode () | |
virtual QVariant | data (int role) const =0 |
Return data associated with the item. | |
virtual ItemMetrics | draw (const QgsLegendSettings &settings, ItemContext *ctx) |
Entry point called from QgsLegendRenderer to do the rendering. | |
virtual QSizeF | drawSymbol (const QgsLegendSettings &settings, ItemContext *ctx, double itemHeight) const |
Draws symbol on the left side of the item. | |
virtual QSizeF | drawSymbolText (const QgsLegendSettings &settings, ItemContext *ctx, const QSizeF &symbolSize) const |
Draws label on the right side of the item. | |
virtual Qt::ItemFlags | flags () const |
Return item flags associated with the item. | |
virtual void | invalidateMapBasedData () |
Notification from model that information from associated map view has changed. | |
virtual bool | isEmbeddedInParent () const |
virtual bool | isScaleOK (double scale) const |
QgsLayerTreeLayer * | layerNode () const |
Return pointer to the parent layer node. | |
QgsLayerTreeModel * | model () const |
Return pointer to model owning this legend node. | |
virtual bool | setData (const QVariant &value, int role) |
Set some data associated with the item. | |
virtual void | setEmbeddedInParent (bool embedded) |
virtual void | setUserLabel (const QString &userLabel) |
virtual QString | userLabel () const |
Protected Member Functions | |
QgsLayerTreeModelLegendNode (QgsLayerTreeLayer *nodeL, QObject *parent=0) | |
Construct the node with pointer to its parent layer node. |
Protected Attributes | |
bool | mEmbeddedInParent |
QgsLayerTreeLayer * | mLayerNode |
QString | mUserLabel |
The QgsLegendRendererItem class is abstract interface for legend items returned from QgsMapLayerLegend implementation.
The objects are used in QgsLayerTreeModel. Custom implementations may offer additional interactivity and customized look.
Definition at line 42 of file qgslayertreemodellegendnode.h.
RuleKeyRole |
rule key of the node (QString) |
SymbolV2LegacyRuleKeyRole |
for QgsSymbolV2LegendNode only - legacy rule key (void ptr, to be cast to QgsSymbolV2 ptr) |
ParentRuleKeyRole |
rule key of the parent legend node - for legends with tree hierarchy (QString). Added in 2.8 |
Definition at line 48 of file qgslayertreemodellegendnode.h.
QgsLayerTreeModelLegendNode::~QgsLayerTreeModelLegendNode | ( | ) |
Definition at line 38 of file qgslayertreemodellegendnode.cpp.
|
explicitprotected |
Construct the node with pointer to its parent layer node.
Definition at line 31 of file qgslayertreemodellegendnode.cpp.
|
pure virtual |
Return data associated with the item.
Must be implemented in derived class.
Implemented in QgsWMSLegendNode, QgsRasterSymbolLegendNode, QgsImageLegendNode, QgsSimpleLegendNode, and QgsSymbolV2LegendNode.
|
signal |
Emitted on internal data change so the layer tree model can forward the signal to views.
|
virtual |
Entry point called from QgsLegendRenderer to do the rendering.
Default implementation calls drawSymbol() and drawSymbolText() methods.
If ctx is null, this is just first stage when preparing layout - without actual rendering.
Definition at line 60 of file qgslayertreemodellegendnode.cpp.
|
virtual |
Draws symbol on the left side of the item.
settings | Legend layout configuration |
ctx | Context for rendering - may be null if only doing layout without actual rendering |
itemHeight | Minimal height of the legend item - used for correct positioning when rendering |
Reimplemented in QgsWMSLegendNode, QgsRasterSymbolLegendNode, QgsImageLegendNode, and QgsSymbolV2LegendNode.
Definition at line 77 of file qgslayertreemodellegendnode.cpp.
|
virtual |
Draws label on the right side of the item.
settings | Legend layout configuration |
ctx | Context for rendering - may be null if only doing layout without actual rendering |
symbolSize | Real size of the associated symbol - used for correct positioning when rendering |
Definition at line 90 of file qgslayertreemodellegendnode.cpp.
|
virtual |
Return item flags associated with the item.
Default implementation returns Qt::ItemIsEnabled.
Reimplemented in QgsSymbolV2LegendNode.
Definition at line 47 of file qgslayertreemodellegendnode.cpp.
|
inlinevirtual |
Notification from model that information from associated map view has changed.
Default implementation does nothing.
Reimplemented in QgsWMSLegendNode, and QgsSymbolV2LegendNode.
Definition at line 80 of file qgslayertreemodellegendnode.h.
|
inlinevirtual |
Definition at line 70 of file qgslayertreemodellegendnode.h.
|
inlinevirtual |
Reimplemented in QgsSymbolV2LegendNode.
Definition at line 76 of file qgslayertreemodellegendnode.h.
|
inline |
Return pointer to the parent layer node.
Definition at line 56 of file qgslayertreemodellegendnode.h.
QgsLayerTreeModel * QgsLayerTreeModelLegendNode::model | ( | ) | const |
Return pointer to model owning this legend node.
Definition at line 42 of file qgslayertreemodellegendnode.cpp.
|
virtual |
Set some data associated with the item.
Default implementation does nothing and returns false.
Reimplemented in QgsSymbolV2LegendNode.
Definition at line 52 of file qgslayertreemodellegendnode.cpp.
|
inlinevirtual |
Reimplemented in QgsSymbolV2LegendNode.
Definition at line 71 of file qgslayertreemodellegendnode.h.
|
inlinevirtual |
Reimplemented in QgsSymbolV2LegendNode.
Definition at line 74 of file qgslayertreemodellegendnode.h.
|
inlinevirtual |
Definition at line 73 of file qgslayertreemodellegendnode.h.
|
protected |
Definition at line 133 of file qgslayertreemodellegendnode.h.
|
protected |
Definition at line 132 of file qgslayertreemodellegendnode.h.
|
protected |
Definition at line 134 of file qgslayertreemodellegendnode.h.