QwtPlotLegendItem - Man Page
A class which draws a legend inside the plot canvas.
Synopsis
#include <qwt_plot_legenditem.h>
Inherits QwtPlotItem.
Public Types
enum BackgroundMode { LegendBackground, ItemBackground }
Background mode.
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)
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 *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect) 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 width) 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
Detailed Description
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.
- Note
An external QwtLegend with a transparent background on top the plot canvas might be another option with a similar effect.
Member Enumeration Documentation
enum QwtPlotLegendItem::BackgroundMode
Background mode. Depending on the mode the complete legend or each item might have an background.
The default setting is LegendBackground.
- See also
setBackgroundMode(), setBackgroundBrush(), drawBackground()
Enumerator
- LegendBackground
The legend has a background.
- ItemBackground
Each item has a background.
Member Function Documentation
Qt::Alignment QwtPlotLegendItem::alignment () const
- Returns
Alignment flags
- See also
setAlignment()
QBrush QwtPlotLegendItem::backgroundBrush () const
- Returns
Brush is used to fill the background
- See also
setBackgroundBrush(), backgroundMode(), drawBackground()
QwtPlotLegendItem::BackgroundMode QwtPlotLegendItem::backgroundMode () const
- Returns
backgroundMode
- See also
setBackgroundMode(), backgroundBrush(), drawBackground()
int QwtPlotLegendItem::borderDistance () const
- Returns
Margin between the legend and the canvas border
- See also
margin()
QPen QwtPlotLegendItem::borderPen () const
- Returns
Pen for drawing the border
- See also
setBorderPen(), backgroundBrush()
double QwtPlotLegendItem::borderRadius () const
- Returns
Radius of the border
- See also
setBorderRadius(), setBorderPen()
void QwtPlotLegendItem::draw (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, const QRectF & canvasRect) const [virtual]
Draw the legend
- Parameters
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
- Parameters
painter Painter
rect Bounding rectangle- See also
setBorderRadius(), setBorderPen(), setBackgroundBrush(), setBackgroundMode()
void QwtPlotLegendItem::drawLegendData (QPainter * painter, const QwtPlotItem * plotItem, const QwtLegendData & data, const QRectF & rect) const [protected], [virtual]
Draw an entry on the legend
- Parameters
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
- Returns
Font used for drawing the text label
- See also
setFont()
QRect QwtPlotLegendItem::geometry (const QRectF & canvasRect) const [virtual]
Calculate the geometry of the legend on the canvas
- Parameters
canvasRect Geometry of the canvas
- Returns
Geometry of the legend
int QwtPlotLegendItem::heightForWidth (const QwtLegendData & data, int width) const [virtual]
- Returns
The preferred height, for a width.
- Parameters
data Attributes of the legend entry
width Width
int QwtPlotLegendItem::itemMargin () const
- Returns
Margin around each item
- See also
setItemMargin(), itemSpacing(), margin(), spacing()
int QwtPlotLegendItem::itemSpacing () const
- Returns
Spacing inside of each item
- See also
setItemSpacing(), itemMargin(), margin(), spacing()
QList< QRect > QwtPlotLegendItem::legendGeometries (const QwtPlotItem * plotItem) const
- Returns
Geometries of the items of a plot item
- Note
Usually a plot item has only one entry on the legend
int QwtPlotLegendItem::margin () const
- Returns
Margin around the legend items
- See also
setMargin(), spacing(), itemMargin(), itemSpacing()
uint QwtPlotLegendItem::maxColumns () const
- Returns
Maximum number of columns
- See also
maxColumns(), QwtDynGridLayout::maxColumns()
QSize QwtPlotLegendItem::minimumSize (const QwtLegendData & data) const [virtual]
Minimum size hint needed to display an entry
- Parameters
data Attributes of the legend entry
- Returns
Minimum size
QList< const QwtPlotItem * > QwtPlotLegendItem::plotItems () const
- Returns
All plot items with an entry on the legend
- Note
A plot item might have more than one entry on the legend
int QwtPlotLegendItem::rtti () const [virtual]
- Returns
QwtPlotItem::Rtti_PlotLegend
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.
- Parameters
alignment Alignment flags
- See also
alignment(), setMaxColumns()
- Note
To align a legend with many items horizontally the number of columns need to be limited
void QwtPlotLegendItem::setBackgroundBrush (const QBrush & brush)
Set the background brush. The brush is used to fill the background
- Parameters
brush Brush
- See also
backgroundBrush(), setBackgroundMode(), drawBackground()
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.
- See also
backgroundMode(), setBackgroundBrush(), drawBackground()
void QwtPlotLegendItem::setBorderDistance (int distance)
Set the margin between the legend and the canvas border. The default setting for the margin is 10 pixels.
- Parameters
distance Margin in pixels
- See also
setMargin()
void QwtPlotLegendItem::setBorderPen (const QPen & pen)
Set the pen for drawing the border
- Parameters
pen Border pen
- See also
borderPen(), setBackgroundBrush()
void QwtPlotLegendItem::setBorderRadius (double radius)
Set the radius for the border
- Parameters
radius A value <= 0 defines a rectangular border
- See also
borderRadius(), setBorderPen()
void QwtPlotLegendItem::setFont (const QFont & font)
Change the font used for drawing the text label
- Parameters
font Legend font
- See also
font()
void QwtPlotLegendItem::setItemMargin (int margin)
Set the margin around each item
- Parameters
margin Margin
- See also
itemMargin(), setItemSpacing(), setMargin(), setSpacing()
void QwtPlotLegendItem::setItemSpacing (int spacing)
Set the spacing inside of each item
- Parameters
spacing Spacing
- See also
itemSpacing(), setItemMargin(), setMargin(), setSpacing()
void QwtPlotLegendItem::setMargin (int margin)
Set the margin around legend items. The default setting for the margin is 0.
- Parameters
margin Margin in pixels
- See also
margin(), setSpacing(), setItemMargin(), setItemSpacing
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.
- Parameters
maxColumns Maximum number of columns. 0 means unlimited.
- See also
maxColumns(), QwtDynGridLayout::setMaxColumns()
void QwtPlotLegendItem::setSpacing (int spacing)
Set the spacing between the legend items.
- Parameters
spacing Spacing in pixels
- See also
spacing(), setMargin()
void QwtPlotLegendItem::setTextPen (const QPen & pen)
Set the pen for drawing text labels.
- Parameters
pen Text pen
- See also
textPen(), setFont()
int QwtPlotLegendItem::spacing () const
- Returns
Spacing between the legend items
- See also
setSpacing(), margin(), itemSpacing(), itemMargin()
QPen QwtPlotLegendItem::textPen () const
- Returns
Pen for drawing text labels
- See also
setTextPen(), font()
void QwtPlotLegendItem::updateLegend (const QwtPlotItem * plotItem, const QList< QwtLegendData > & data) [virtual]
Update the legend items according to modifications of a plot item
- Parameters
plotItem Plot item
data Attributes of the legend entries
Reimplemented from QwtPlotItem.
Author
Generated automatically by Doxygen for Qwt User's Guide from the source code.