QGIS API Documentation  3.21.0-Master (5b68dc587e)
Public Member Functions | List of all members
QgsRasterSymbolLegendNode Class Reference

Implementation of legend node interface for displaying raster legend entries. More...

#include <qgslayertreemodellegendnode.h>

Inheritance diagram for QgsRasterSymbolLegendNode:
Inheritance graph
[legend]

Public Member Functions

 QgsRasterSymbolLegendNode (QgsLayerTreeLayer *nodeLayer, const QColor &color, const QString &label, QObject *parent=nullptr, bool isCheckable=false, const QString &ruleKey=QString())
 Constructor for QgsRasterSymbolLegendNode. More...
 
QVariant data (int role) const override
 Returns data associated with the item. Must be implemented in derived class. More...
 
QSizeF drawSymbol (const QgsLegendSettings &settings, ItemContext *ctx, double itemHeight) const override
 Draws symbol on the left side of the item. More...
 
QJsonObject exportSymbolToJson (const QgsLegendSettings &settings, const QgsRenderContext &context) const override
 Adds a symbol in base64 string within a JSON object with the key "icon". More...
 
Qt::ItemFlags flags () const override
 Returns item flags associated with the item. Default implementation returns Qt::ItemIsEnabled. More...
 
bool isCheckable () const
 Returns whether the item is user-checkable - whether renderer supports enabling/disabling it. More...
 
QString ruleKey () const
 Returns the unique identifier of node for identification of the item within renderer. More...
 
bool setData (const QVariant &value, int role) override
 Sets some data associated with the item. Default implementation does nothing and returns false. More...
 
- Public Member Functions inherited from QgsLayerTreeModelLegendNode
virtual bool columnBreak () const
 Returns whether a forced column break should occur before the node. More...
 
virtual ItemMetrics draw (const QgsLegendSettings &settings, ItemContext *ctx)
 Entry point called from QgsLegendRenderer to do the rendering. More...
 
virtual QSizeF drawSymbolText (const QgsLegendSettings &settings, ItemContext *ctx, QSizeF symbolSize) const
 Draws label on the right side of the item. More...
 
QJsonObject exportToJson (const QgsLegendSettings &settings, const QgsRenderContext &context)
 Entry point called from QgsLegendRenderer to do the rendering in a JSON object. More...
 
virtual void invalidateMapBasedData ()
 Notification from model that information from associated map view has changed. More...
 
virtual bool isEmbeddedInParent () const
 
virtual bool isScaleOK (double scale) const
 
QgsLayerTreeLayerlayerNode () const
 Returns pointer to the parent layer node. More...
 
QgsLayerTreeModelmodel () const
 Returns pointer to model owning this legend node. More...
 
virtual void setColumnBreak (bool breakBeforeNode)
 Sets whether a forced column break should occur before the node. More...
 
virtual void setEmbeddedInParent (bool embedded)
 
virtual void setUserLabel (const QString &userLabel)
 
virtual void setUserPatchSize (QSizeF size)
 Sets the user (overridden) size for the legend node. More...
 
virtual QString userLabel () const
 
virtual QSizeF userPatchSize () const
 Returns the user (overridden) size for the legend node. More...
 

Additional Inherited Members

- Public Types inherited from QgsLayerTreeModelLegendNode
enum  LegendNodeRoles { RuleKeyRole = Qt::UserRole , ParentRuleKeyRole , NodeTypeRole }
 Legend node data roles. More...
 
enum  NodeTypes {
  SimpleLegend , SymbolLegend , RasterSymbolLegend , ImageLegend ,
  WmsLegend , DataDefinedSizeLegend , EmbeddedWidget , ColorRampLegend
}
 Types of legend nodes. More...
 
- Public Slots inherited from QgsLayerTreeModelLegendNode
void checkAllItems ()
 Checks all checkable items belonging to the same layer as this node. More...
 
void toggleAllItems ()
 Toggle all checkable items belonging to the same layer as this node. More...
 
void uncheckAllItems ()
 Unchecks all checkable items belonging to the same layer as this node. More...
 
- Signals inherited from QgsLayerTreeModelLegendNode
void dataChanged ()
 Emitted on internal data change so the layer tree model can forward the signal to views. More...
 
void sizeChanged ()
 Emitted when the size of this node changes. More...
 
- Protected Member Functions inherited from QgsLayerTreeModelLegendNode
 QgsLayerTreeModelLegendNode (QgsLayerTreeLayer *nodeL, QObject *parent=nullptr)
 Construct the node with pointer to its parent layer node. More...
 
QgsRenderContextcreateTemporaryRenderContext () const
 Returns a temporary context or nullptr if legendMapViewData are not valid. More...
 
- Protected Attributes inherited from QgsLayerTreeModelLegendNode
bool mColumnBreakBeforeNode = false
 
bool mEmbeddedInParent
 
QgsLayerTreeLayermLayerNode = nullptr
 
QgsLegendPatchShape mPatchShape
 
QString mUserLabel
 
QSizeF mUserSize
 

Detailed Description

Implementation of legend node interface for displaying raster legend entries.

Since
QGIS 2.6

Definition at line 606 of file qgslayertreemodellegendnode.h.

Constructor & Destructor Documentation

◆ QgsRasterSymbolLegendNode()

QgsRasterSymbolLegendNode::QgsRasterSymbolLegendNode ( QgsLayerTreeLayer nodeLayer,
const QColor &  color,
const QString &  label,
QObject *  parent = nullptr,
bool  isCheckable = false,
const QString &  ruleKey = QString() 
)

Constructor for QgsRasterSymbolLegendNode.

Parameters
nodeLayerlayer node
colorcolor
labellabel
parentattach a parent QObject to the legend node.
isCheckableset to true to enable the checkbox for the node (since QGIS 3.18)
ruleKeyoptional identifier to allow a unique ID to be assigned to the node by a renderer (since QGIS 3.18)

Definition at line 994 of file qgslayertreemodellegendnode.cpp.

Member Function Documentation

◆ data()

QVariant QgsRasterSymbolLegendNode::data ( int  role) const
overridevirtual

Returns data associated with the item. Must be implemented in derived class.

Implements QgsLayerTreeModelLegendNode.

Definition at line 1011 of file qgslayertreemodellegendnode.cpp.

◆ drawSymbol()

QSizeF QgsRasterSymbolLegendNode::drawSymbol ( const QgsLegendSettings settings,
ItemContext ctx,
double  itemHeight 
) const
overridevirtual

Draws symbol on the left side of the item.

Parameters
settingsLegend layout configuration
ctxContext for rendering - may be nullptr if only doing layout without actual rendering
itemHeightMinimal height of the legend item - used for correct positioning when rendering
Returns
Real size of the symbol (may be bigger than "normal" symbol size from settings)

Reimplemented from QgsLayerTreeModelLegendNode.

Definition at line 1082 of file qgslayertreemodellegendnode.cpp.

◆ exportSymbolToJson()

QJsonObject QgsRasterSymbolLegendNode::exportSymbolToJson ( const QgsLegendSettings settings,
const QgsRenderContext context 
) const
overridevirtual

Adds a symbol in base64 string within a JSON object with the key "icon".

Parameters
settingsLegend layout configuration
contextRendering context
Since
QGIS 3.8

Reimplemented from QgsLayerTreeModelLegendNode.

Definition at line 1140 of file qgslayertreemodellegendnode.cpp.

◆ flags()

Qt::ItemFlags QgsRasterSymbolLegendNode::flags ( ) const
overridevirtual

Returns item flags associated with the item. Default implementation returns Qt::ItemIsEnabled.

Reimplemented from QgsLayerTreeModelLegendNode.

Definition at line 1003 of file qgslayertreemodellegendnode.cpp.

◆ isCheckable()

bool QgsRasterSymbolLegendNode::isCheckable ( ) const
inline

Returns whether the item is user-checkable - whether renderer supports enabling/disabling it.

Since
QGIS 3.18

Definition at line 641 of file qgslayertreemodellegendnode.h.

◆ ruleKey()

QString QgsRasterSymbolLegendNode::ruleKey ( ) const
inline

Returns the unique identifier of node for identification of the item within renderer.

Since
QGIS 3.18

Definition at line 634 of file qgslayertreemodellegendnode.h.

◆ setData()

bool QgsRasterSymbolLegendNode::setData ( const QVariant &  value,
int  role 
)
overridevirtual

Sets some data associated with the item. Default implementation does nothing and returns false.

Reimplemented from QgsLayerTreeModelLegendNode.

Definition at line 1054 of file qgslayertreemodellegendnode.cpp.


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