QGIS API Documentation
3.6.0-Noosa (5873452)
|
Object that keeps configuration of appearance of marker symbol's data-defined size in legend. More...
#include <qgsdatadefinedsizelegend.h>
Classes | |
struct | SizeClass |
Definition of one class for the legend. More... | |
Public Types | |
enum | LegendType { LegendSeparated, LegendCollapsed } |
Determines how to display data-defined size legend. More... | |
enum | VerticalAlignment { AlignCenter, AlignBottom } |
How to vertically align symbols when all classes go into one node. More... | |
Public Member Functions | |
QgsDataDefinedSizeLegend ()=default | |
Constructor for QgsDataDefinedSizeLegend. More... | |
QgsDataDefinedSizeLegend (const QgsDataDefinedSizeLegend &other) | |
Copy constructor. More... | |
QList< QgsDataDefinedSizeLegend::SizeClass > | classes () const |
Returns list of classes: each class is a pair of symbol size (in units used by the symbol) and label. More... | |
QImage | collapsedLegendImage (QgsRenderContext &context, const QColor &backgroundColor=Qt::transparent, double paddingMM=1) const |
Returns output image that would be shown in the legend. Returns invalid image if legend is not configured as collapsed. More... | |
void | drawCollapsedLegend (QgsRenderContext &context, QSize *outputSize SIP_OUT=nullptr, int *labelXOffset SIP_OUT=nullptr) const |
Draw the legend if using LegendOneNodeForAll and optionally output size of the legend and x offset of labels (in painter units). More... | |
QFont | font () const |
Returns font used for rendering of labels - only valid for collapsed legend. More... | |
QgsLegendSymbolList | legendSymbolList () const |
Generates legend symbol items according to the configuration. More... | |
LegendType | legendType () const |
Returns how the legend should be rendered. More... | |
QgsDataDefinedSizeLegend & | operator= (const QgsDataDefinedSizeLegend &other) |
void | setClasses (const QList< QgsDataDefinedSizeLegend::SizeClass > &classes) |
Sets list of classes: each class is a pair of symbol size (in units used by the symbol) and label. More... | |
void | setFont (const QFont &font) |
Sets font used for rendering of labels - only valid for collapsed legend. More... | |
void | setLegendType (LegendType type) |
Sets how the legend should be rendered. More... | |
void | setSizeScaleTransformer (QgsSizeScaleTransformer *transformer SIP_TRANSFER) |
Sets transformer for scaling of symbol sizes. Takes ownership of the object. Accepts null pointer to set no transformer. More... | |
void | setSymbol (QgsMarkerSymbol *symbol SIP_TRANSFER) |
Sets marker symbol that will be used to draw markers in legend. More... | |
void | setTextAlignment (Qt::AlignmentFlag flag) |
Sets horizontal text alignment for rendering of labels - only valid for collapsed legend. More... | |
void | setTextColor (const QColor &color) |
Sets text color for rendering of labels - only valid for collapsed legend. More... | |
void | setTitle (const QString &title) |
Sets title label for data-defined size legend. More... | |
void | setVerticalAlignment (VerticalAlignment vAlign) |
Sets vertical alignment of symbols - only valid for collapsed legend. More... | |
QgsSizeScaleTransformer * | sizeScaleTransformer () const |
Returns transformer for scaling of symbol sizes. Returns null if no transformer is defined. More... | |
QgsMarkerSymbol * | symbol () const |
Returns marker symbol that will be used to draw markers in legend. More... | |
Qt::AlignmentFlag | textAlignment () const |
Returns horizontal text alignment for rendering of labels - only valid for collapsed legend. More... | |
QColor | textColor () const |
Returns text color for rendering of labels - only valid for collapsed legend. More... | |
QString | title () const |
Returns title label for data-defined size legend. More... | |
void | updateFromSymbolAndProperty (const QgsMarkerSymbol *symbol, const QgsProperty &ddSize) |
Updates the list of classes, source symbol and title label from given symbol and property. More... | |
VerticalAlignment | verticalAlignment () const |
Returns vertical alignment of symbols - only valid for collapsed legend. More... | |
void | writeXml (QDomElement &elem, const QgsReadWriteContext &context) const |
Writes configuration to the given XML element. More... | |
Static Public Member Functions | |
static QgsDataDefinedSizeLegend * | readXml (const QDomElement &elem, const QgsReadWriteContext &context) SIP_FACTORY |
Creates instance from given element and returns it (caller takes ownership). Returns null on error. More... | |
Object that keeps configuration of appearance of marker symbol's data-defined size in legend.
For example: the list of classes (size values), whether the classes should appear in separate legend nodes or whether to collapse them into one legend node.
Definition at line 40 of file qgsdatadefinedsizelegend.h.
Determines how to display data-defined size legend.
Enumerator | |
---|---|
LegendSeparated | Each class (size value) has a separate legend node. |
LegendCollapsed | All classes are rendered within one legend node. |
Definition at line 54 of file qgsdatadefinedsizelegend.h.
How to vertically align symbols when all classes go into one node.
Enumerator | |
---|---|
AlignCenter | Symbols are aligned to the center. |
AlignBottom | Symbols are aligned to the bottom. |
Definition at line 61 of file qgsdatadefinedsizelegend.h.
|
default |
Constructor for QgsDataDefinedSizeLegend.
QgsDataDefinedSizeLegend::QgsDataDefinedSizeLegend | ( | const QgsDataDefinedSizeLegend & | other | ) |
Copy constructor.
Definition at line 24 of file qgsdatadefinedsizelegend.cpp.
|
inline |
Returns list of classes: each class is a pair of symbol size (in units used by the symbol) and label.
Definition at line 94 of file qgsdatadefinedsizelegend.h.
QImage QgsDataDefinedSizeLegend::collapsedLegendImage | ( | QgsRenderContext & | context, |
const QColor & | backgroundColor = Qt::transparent , |
||
double | paddingMM = 1 |
||
) | const |
Returns output image that would be shown in the legend. Returns invalid image if legend is not configured as collapsed.
Definition at line 285 of file qgsdatadefinedsizelegend.cpp.
void QgsDataDefinedSizeLegend::drawCollapsedLegend | ( | QgsRenderContext & | context, |
QSize *outputSize | SIP_OUT = nullptr , |
||
int *labelXOffset | SIP_OUT = nullptr |
||
) | const |
Draw the legend if using LegendOneNodeForAll and optionally output size of the legend and x offset of labels (in painter units).
If the painter in context is null, it only does size calculation without actual rendering. Does nothing if legend is not configured as collapsed.
Definition at line 127 of file qgsdatadefinedsizelegend.cpp.
|
inline |
Returns font used for rendering of labels - only valid for collapsed legend.
Definition at line 109 of file qgsdatadefinedsizelegend.h.
QgsLegendSymbolList QgsDataDefinedSizeLegend::legendSymbolList | ( | ) | const |
Generates legend symbol items according to the configuration.
Definition at line 97 of file qgsdatadefinedsizelegend.cpp.
|
inline |
Returns how the legend should be rendered.
Definition at line 79 of file qgsdatadefinedsizelegend.h.
QgsDataDefinedSizeLegend & QgsDataDefinedSizeLegend::operator= | ( | const QgsDataDefinedSizeLegend & | other | ) |
Definition at line 37 of file qgsdatadefinedsizelegend.cpp.
|
static |
Creates instance from given element and returns it (caller takes ownership). Returns null on error.
Definition at line 317 of file qgsdatadefinedsizelegend.cpp.
|
inline |
Sets list of classes: each class is a pair of symbol size (in units used by the symbol) and label.
Definition at line 92 of file qgsdatadefinedsizelegend.h.
|
inline |
Sets font used for rendering of labels - only valid for collapsed legend.
Definition at line 107 of file qgsdatadefinedsizelegend.h.
|
inline |
Sets how the legend should be rendered.
Definition at line 77 of file qgsdatadefinedsizelegend.h.
void QgsDataDefinedSizeLegend::setSizeScaleTransformer | ( | QgsSizeScaleTransformer *transformer | SIP_TRANSFER | ) |
Sets transformer for scaling of symbol sizes. Takes ownership of the object. Accepts null pointer to set no transformer.
Definition at line 64 of file qgsdatadefinedsizelegend.cpp.
void QgsDataDefinedSizeLegend::setSymbol | ( | QgsMarkerSymbol *symbol | SIP_TRANSFER | ) |
Sets marker symbol that will be used to draw markers in legend.
Definition at line 54 of file qgsdatadefinedsizelegend.cpp.
|
inline |
Sets horizontal text alignment for rendering of labels - only valid for collapsed legend.
Definition at line 117 of file qgsdatadefinedsizelegend.h.
|
inline |
Sets text color for rendering of labels - only valid for collapsed legend.
Definition at line 112 of file qgsdatadefinedsizelegend.h.
|
inline |
Sets title label for data-defined size legend.
Definition at line 97 of file qgsdatadefinedsizelegend.h.
|
inline |
Sets vertical alignment of symbols - only valid for collapsed legend.
Definition at line 102 of file qgsdatadefinedsizelegend.h.
QgsSizeScaleTransformer * QgsDataDefinedSizeLegend::sizeScaleTransformer | ( | ) | const |
Returns transformer for scaling of symbol sizes. Returns null if no transformer is defined.
Definition at line 69 of file qgsdatadefinedsizelegend.cpp.
QgsMarkerSymbol * QgsDataDefinedSizeLegend::symbol | ( | ) | const |
Returns marker symbol that will be used to draw markers in legend.
Definition at line 59 of file qgsdatadefinedsizelegend.cpp.
|
inline |
Returns horizontal text alignment for rendering of labels - only valid for collapsed legend.
Definition at line 119 of file qgsdatadefinedsizelegend.h.
|
inline |
Returns text color for rendering of labels - only valid for collapsed legend.
Definition at line 114 of file qgsdatadefinedsizelegend.h.
|
inline |
Returns title label for data-defined size legend.
Definition at line 99 of file qgsdatadefinedsizelegend.h.
void QgsDataDefinedSizeLegend::updateFromSymbolAndProperty | ( | const QgsMarkerSymbol * | symbol, |
const QgsProperty & | ddSize | ||
) |
Updates the list of classes, source symbol and title label from given symbol and property.
Definition at line 75 of file qgsdatadefinedsizelegend.cpp.
|
inline |
Returns vertical alignment of symbols - only valid for collapsed legend.
Definition at line 104 of file qgsdatadefinedsizelegend.h.
void QgsDataDefinedSizeLegend::writeXml | ( | QDomElement & | elem, |
const QgsReadWriteContext & | context | ||
) | const |
Writes configuration to the given XML element.
Definition at line 370 of file qgsdatadefinedsizelegend.cpp.