QGIS API Documentation  3.2.0-Bonn (bc43194)
Classes | Public Member Functions | Static Public Member Functions | List of all members
QgsLegendRenderer Class Reference

The QgsLegendRenderer class handles automatic layout and rendering of legend. More...

#include <qgslegendrenderer.h>

Public Member Functions

 QgsLegendRenderer (QgsLayerTreeModel *legendModel, const QgsLegendSettings &settings)
 Construct legend renderer. The ownership of legend model does not change. More...
 
void drawLegend (QPainter *painter)
 Draw the legend with given painter. More...
 
QSizeF legendSize () const
 Find out preferred legend size set by the client. If null, the legend will be drawn with the minimum size. More...
 
QSizeF minimumSize ()
 Run the layout algorithm and determine the size required for legend. More...
 
void setLegendSize (QSizeF s)
 Sets the preferred resulting legend size. More...
 

Static Public Member Functions

static QgsLegendStyle::Style nodeLegendStyle (QgsLayerTreeNode *node, QgsLayerTreeModel *model)
 
static void setNodeLegendStyle (QgsLayerTreeNode *node, QgsLegendStyle::Style style)
 

Detailed Description

The QgsLegendRenderer class handles automatic layout and rendering of legend.

The content is given by QgsLayerTreeModel instance. Various layout properties can be configured within QgsLegendRenderer.

All spacing and sizes are in millimeters.

Since
QGIS 2.6

Definition at line 44 of file qgslegendrenderer.h.

Constructor & Destructor Documentation

◆ QgsLegendRenderer()

QgsLegendRenderer::QgsLegendRenderer ( QgsLayerTreeModel legendModel,
const QgsLegendSettings settings 
)

Construct legend renderer. The ownership of legend model does not change.

Definition at line 30 of file qgslegendrenderer.cpp.

Member Function Documentation

◆ drawLegend()

void QgsLegendRenderer::drawLegend ( QPainter *  painter)

Draw the legend with given painter.

It will occupy the area reported in legendSize(). Painter should be scaled beforehand so that units correspond to millimeters.

Definition at line 41 of file qgslegendrenderer.cpp.

◆ legendSize()

QSizeF QgsLegendRenderer::legendSize ( ) const
inline

Find out preferred legend size set by the client. If null, the legend will be drawn with the minimum size.

Definition at line 57 of file qgslegendrenderer.h.

◆ minimumSize()

QSizeF QgsLegendRenderer::minimumSize ( )

Run the layout algorithm and determine the size required for legend.

Definition at line 36 of file qgslegendrenderer.cpp.

◆ nodeLegendStyle()

QgsLegendStyle::Style QgsLegendRenderer::nodeLegendStyle ( QgsLayerTreeNode node,
QgsLayerTreeModel model 
)
static

Definition at line 580 of file qgslegendrenderer.cpp.

◆ setLegendSize()

void QgsLegendRenderer::setLegendSize ( QSizeF  s)
inline

Sets the preferred resulting legend size.

Definition at line 54 of file qgslegendrenderer.h.

◆ setNodeLegendStyle()

void QgsLegendRenderer::setNodeLegendStyle ( QgsLayerTreeNode node,
QgsLegendStyle::Style  style 
)
static

Definition at line 608 of file qgslegendrenderer.cpp.


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