Qwt User's Guide
|
A class which draws a legend inside the plot canvas. More...
#include <qwt_plot_legenditem.h>
Public Types | |
enum | BackgroundMode { LegendBackground, ItemBackground } |
Background mode. More... | |
Public Member Functions | |
QwtPlotLegendItem () | |
Constructor. | |
virtual | ~QwtPlotLegendItem () |
Destructor. | |
virtual int | rtti () const |
void | setAlignment (Qt::Alignment) |
Set the alignmnet. | |
Qt::Alignment | alignment () const |
void | setMaxColumns (uint) |
Limit the number of columns. | |
uint | maxColumns () const |
void | setMargin (int) |
Set the margin around legend items. | |
int | margin () const |
void | setSpacing (int) |
Set the spacing between the legend items. | |
int | spacing () const |
void | setItemMargin (int) |
int | itemMargin () const |
void | setItemSpacing (int) |
int | itemSpacing () const |
void | setFont (const QFont &) |
QFont | font () const |
void | setBorderDistance (int numPixels) |
Set the margin between the legend and the canvas border. | |
int | borderDistance () const |
void | setBorderRadius (double) |
double | borderRadius () const |
void | setBorderPen (const QPen &) |
QPen | borderPen () const |
void | setBackgroundBrush (const QBrush &) |
Set the background brush. | |
QBrush | backgroundBrush () const |
void | setBackgroundMode (BackgroundMode) |
Set the background mode. | |
BackgroundMode | backgroundMode () const |
void | setTextPen (const QPen &) |
Set the pen for drawing text labels. | |
QPen | textPen () const |
virtual void | draw (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &rect) const |
void | clearLegend () |
Remove all items from the legend. | |
virtual void | updateLegend (const QwtPlotItem *, const QList< QwtLegendData > &) |
virtual QRect | geometry (const QRectF &canvasRect) const |
virtual QSize | minimumSize (const QwtLegendData &) const |
virtual int | heightForWidth (const QwtLegendData &, int w) const |
QList< const QwtPlotItem * > | plotItems () const |
QList< QRect > | legendGeometries (const QwtPlotItem *) const |
Protected Member Functions | |
virtual void | drawLegendData (QPainter *painter, const QwtPlotItem *, const QwtLegendData &, const QRectF &) const |
virtual void | drawBackground (QPainter *, const QRectF &rect) const |
A class which draws a legend inside the plot canvas.
QwtPlotLegendItem can be used to draw a inside the plot canvas. It can be used together with a QwtLegend or instead of it to have more space for the plot canvas.
In opposite to QwtLegend the legend item is not interactive. To identify mouse clicks on a legend item an event filter needs to be installed catching mouse events ob the plot canvas. The geometries of the legend items are available using legendGeometries().
The legend item is aligned to plot canvas according to its alignment() flags. It might have a background for the complete legend ( usually semi transparent ) or for each legend item.
Background mode.
Depending on the mode the complete legend or each item might have an background.
The default setting is LegendBackground.
Qt::Alignment QwtPlotLegendItem::alignment | ( | ) | const |
QBrush QwtPlotLegendItem::backgroundBrush | ( | ) | const |
int QwtPlotLegendItem::borderDistance | ( | ) | const |
QPen QwtPlotLegendItem::borderPen | ( | ) | const |
double QwtPlotLegendItem::borderRadius | ( | ) | const |
void QwtPlotLegendItem::draw | ( | QPainter * | painter, |
const QwtScaleMap & | xMap, | ||
const QwtScaleMap & | yMap, | ||
const QRectF & | canvasRect | ||
) | const [virtual] |
Draw the legend
painter | Painter |
xMap | x Scale Map |
yMap | y Scale Map |
canvasRect | Contents rectangle of the canvas in painter coordinates |
Implements QwtPlotItem.
void QwtPlotLegendItem::drawBackground | ( | QPainter * | painter, |
const QRectF & | rect | ||
) | const [protected, virtual] |
Draw a rounded rect
painter | Painter |
rect | Bounding rectangle |
void QwtPlotLegendItem::drawLegendData | ( | QPainter * | painter, |
const QwtPlotItem * | plotItem, | ||
const QwtLegendData & | data, | ||
const QRectF & | rect | ||
) | const [protected, virtual] |
Draw an entry on the legend
painter | Qt Painter |
plotItem | Plot item, represented by the entry |
data | Attributes of the legend entry |
rect | Bounding rectangle for the entry |
QFont QwtPlotLegendItem::font | ( | ) | const |
QRect QwtPlotLegendItem::geometry | ( | const QRectF & | canvasRect | ) | const [virtual] |
Calculate the geometry of the legend on the canvas
canvasRect | Geometry of the canvas |
int QwtPlotLegendItem::heightForWidth | ( | const QwtLegendData & | data, |
int | width | ||
) | const [virtual] |
data | Attributes of the legend entry |
width | Width |
int QwtPlotLegendItem::itemMargin | ( | ) | const |
int QwtPlotLegendItem::itemSpacing | ( | ) | const |
QList< QRect > QwtPlotLegendItem::legendGeometries | ( | const QwtPlotItem * | plotItem | ) | const |
int QwtPlotLegendItem::margin | ( | ) | const |
uint QwtPlotLegendItem::maxColumns | ( | ) | const |
QSize QwtPlotLegendItem::minimumSize | ( | const QwtLegendData & | data | ) | const [virtual] |
Minimum size hint needed to display an entry
data | Attributes of the legend entry |
QList< const QwtPlotItem * > QwtPlotLegendItem::plotItems | ( | ) | const |
int QwtPlotLegendItem::rtti | ( | ) | const [virtual] |
Reimplemented from QwtPlotItem.
void QwtPlotLegendItem::setAlignment | ( | Qt::Alignment | alignment | ) |
Set the alignmnet.
Alignment means the position of the legend relative to the geometry of the plot canvas.
alignment | Alignment flags |
void QwtPlotLegendItem::setBackgroundBrush | ( | const QBrush & | brush | ) |
Set the background brush.
The brush is used to fill the background
brush | Brush |
void QwtPlotLegendItem::setBackgroundMode | ( | BackgroundMode | mode | ) |
Set the background mode.
Depending on the mode the complete legend or each item might have an background.
The default setting is LegendBackground.
void QwtPlotLegendItem::setBorderDistance | ( | int | distance | ) |
Set the margin between the legend and the canvas border.
The default setting for the margin is 10 pixels.
distance | Margin in pixels |
void QwtPlotLegendItem::setBorderPen | ( | const QPen & | pen | ) |
Set the pen for drawing the border
pen | Border pen |
void QwtPlotLegendItem::setBorderRadius | ( | double | radius | ) |
Set the radius for the border
radius | A value <= 0 defines a rectangular border |
void QwtPlotLegendItem::setFont | ( | const QFont & | font | ) |
void QwtPlotLegendItem::setItemMargin | ( | int | margin | ) |
Set the margin around each item
margin | Margin |
void QwtPlotLegendItem::setItemSpacing | ( | int | spacing | ) |
Set the spacing inside of each item
spacing | Spacing |
void QwtPlotLegendItem::setMargin | ( | int | margin | ) |
Set the margin around legend items.
The default setting for the margin is 0.
margin | Margin in pixels |
void QwtPlotLegendItem::setMaxColumns | ( | uint | maxColumns | ) |
Limit the number of columns.
When aligning the legend horizontally ( Qt::AlignLeft, Qt::AlignRight ) the number of columns needs to be limited to avoid, that the width of the legend grows with an increasing number of entries.
maxColumns | Maximum number of columns. 0 means unlimited. |
void QwtPlotLegendItem::setSpacing | ( | int | spacing | ) |
Set the spacing between the legend items.
spacing | Spacing in pixels |
void QwtPlotLegendItem::setTextPen | ( | const QPen & | pen | ) |
int QwtPlotLegendItem::spacing | ( | ) | const |
QPen QwtPlotLegendItem::textPen | ( | ) | const |
void QwtPlotLegendItem::updateLegend | ( | const QwtPlotItem * | plotItem, |
const QList< QwtLegendData > & | data | ||
) | [virtual] |
Update the legend items according to modifications of a plot item
plotItem | Plot item |
data | Attributes of the legend entries |
Reimplemented from QwtPlotItem.