QGIS API Documentation 3.41.0-Master (45a0abf3bec)
Loading...
Searching...
No Matches
Public Member Functions | List of all members
QgsImageLegendNode Class Reference

Implementation of legend node interface for displaying arbitrary raster image. More...

#include <qgslayertreemodellegendnode.h>

Inheritance diagram for QgsImageLegendNode:
Inheritance graph
[legend]

Public Member Functions

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

Additional Inherited Members

- Public Types inherited from QgsLayerTreeModelLegendNode
enum class  CustomRole : int { RuleKey = Qt::UserRole , ParentRuleKey , NodeType , IsDataDefinedSize }
 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.
 
void toggleAllItems ()
 Toggle all checkable items belonging to the same layer as this node.
 
void uncheckAllItems ()
 Unchecks all checkable items belonging to the same layer as this node.
 
- Signals inherited from QgsLayerTreeModelLegendNode
void dataChanged ()
 Emitted on internal data change so the layer tree model can forward the signal to views.
 
void sizeChanged ()
 Emitted when the size of this node changes.
 
- Protected Member Functions inherited from QgsLayerTreeModelLegendNode
 QgsLayerTreeModelLegendNode (QgsLayerTreeLayer *nodeL, QObject *parent=nullptr)
 Construct the node with pointer to its parent layer node.
 
QgsRenderContextcreateTemporaryRenderContext () const
 Returns a temporary context or nullptr if legendMapViewData are not valid.
 
- 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 arbitrary raster image.

Definition at line 631 of file qgslayertreemodellegendnode.h.

Constructor & Destructor Documentation

◆ QgsImageLegendNode()

QgsImageLegendNode::QgsImageLegendNode ( QgsLayerTreeLayer nodeLayer,
const QImage &  img,
QObject *  parent = nullptr 
)

Constructor for QgsImageLegendNode.

Parameters
nodeLayerlayer node
imgthe image
parentattach a parent QObject to the legend node.

Definition at line 1019 of file qgslayertreemodellegendnode.cpp.

Member Function Documentation

◆ data()

QVariant QgsImageLegendNode::data ( int  role) const
overridevirtual

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

Implements QgsLayerTreeModelLegendNode.

Definition at line 1025 of file qgslayertreemodellegendnode.cpp.

◆ drawSymbol()

QSizeF QgsImageLegendNode::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 1042 of file qgslayertreemodellegendnode.cpp.

◆ exportSymbolToJson()

QJsonObject QgsImageLegendNode::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 1069 of file qgslayertreemodellegendnode.cpp.


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