Classes | Public Types | Public Member Functions | Protected Member Functions | Private Attributes
QwtPlotLegendItem Class Reference

A class which draws a legend inside the plot canvas. More...

#include <qwt_plot_legenditem.h>

Inheritance diagram for QwtPlotLegendItem:
Inheritance graph
[legend]

List of all members.

Classes

class  PrivateData

Public Types

enum  BackgroundMode { LegendBackground, ItemBackground }
 Background mode. More...

Public Member Functions

Qt::Alignment alignment () const
QBrush backgroundBrush () const
BackgroundMode backgroundMode () const
int borderDistance () const
QPen borderPen () const
double borderRadius () const
void clearLegend ()
 Remove all items from the legend.
virtual void draw (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &rect) const
QFont font () const
virtual QRect geometry (const QRectF &canvasRect) const
virtual int heightForWidth (const QwtLegendData &, int w) const
int itemMargin () const
int itemSpacing () const
QList< QRect > legendGeometries (const QwtPlotItem *) const
int margin () const
uint maxColumns () const
virtual QSize minimumSize (const QwtLegendData &) const
QList< const QwtPlotItem * > plotItems () const
 QwtPlotLegendItem ()
 Constructor.
virtual int rtti () const
void setAlignment (Qt::Alignment)
 Set the alignmnet.
void setBackgroundBrush (const QBrush &)
 Set the background brush.
void setBackgroundMode (BackgroundMode)
 Set the background mode.
void setBorderDistance (int numPixels)
 Set the margin between the legend and the canvas border.
void setBorderPen (const QPen &)
void setBorderRadius (double)
void setFont (const QFont &)
void setItemMargin (int)
void setItemSpacing (int)
void setMargin (int)
 Set the margin around legend items.
void setMaxColumns (uint)
 Limit the number of columns.
void setSpacing (int)
 Set the spacing between the legend items.
void setTextPen (const QPen &)
 Set the pen for drawing text labels.
int spacing () const
QPen textPen () const
virtual void updateLegend (const QwtPlotItem *, const QList< QwtLegendData > &)
virtual ~QwtPlotLegendItem ()
 Destructor.

Protected Member Functions

virtual void drawBackground (QPainter *, const QRectF &rect) const
virtual void drawLegendData (QPainter *painter, const QwtPlotItem *, const QwtLegendData &, const QRectF &) const

Private Attributes

PrivateDatad_data

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.

Definition at line 42 of file qwt_plot_legenditem.h.


Member Enumeration Documentation

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.

Definition at line 55 of file qwt_plot_legenditem.h.


Constructor & Destructor Documentation

Constructor.

Definition at line 170 of file qwt_plot_legenditem.cpp.

Destructor.

Definition at line 180 of file qwt_plot_legenditem.cpp.


Member Function Documentation

Qt::Alignment QwtPlotLegendItem::alignment ( ) const
Returns:
Alignment flags
See also:
setAlignment()

Definition at line 218 of file qwt_plot_legenditem.cpp.

Returns:
Brush is used to fill the background
See also:
setBackgroundBrush(), backgroundMode(), drawBackground()

Definition at line 489 of file qwt_plot_legenditem.cpp.

Returns:
backgroundMode
See also:
setBackgroundMode(), backgroundBrush(), drawBackground()

Definition at line 517 of file qwt_plot_legenditem.cpp.

Returns:
Margin between the legend and the canvas border
See also:
margin()

Definition at line 413 of file qwt_plot_legenditem.cpp.

Returns:
Pen for drawing the border
See also:
setBorderPen(), backgroundBrush()

Definition at line 463 of file qwt_plot_legenditem.cpp.

Returns:
Radius of the border
See also:
setBorderRadius(), setBorderPen()

Definition at line 439 of file qwt_plot_legenditem.cpp.

Remove all items from the legend.

Definition at line 721 of file qwt_plot_legenditem.cpp.

void QwtPlotLegendItem::draw ( QPainter *  painter,
const QwtScaleMap xMap,
const QwtScaleMap yMap,
const QRectF &  canvasRect 
) const [virtual]

Draw the legend

Parameters:
painterPainter
xMapx Scale Map
yMapy Scale Map
canvasRectContents rectangle of the canvas in painter coordinates

Implements QwtPlotItem.

Definition at line 554 of file qwt_plot_legenditem.cpp.

void QwtPlotLegendItem::drawBackground ( QPainter *  painter,
const QRectF &  rect 
) const [protected, virtual]

Draw a rounded rect

Parameters:
painterPainter
rectBounding rectangle
See also:
setBorderRadius(), setBorderPen(), setBackgroundBrush(), setBackgroundMode()

Definition at line 597 of file qwt_plot_legenditem.cpp.

void QwtPlotLegendItem::drawLegendData ( QPainter *  painter,
const QwtPlotItem plotItem,
const QwtLegendData data,
const QRectF &  rect 
) const [protected, virtual]

Draw an entry on the legend

Parameters:
painterQt Painter
plotItemPlot item, represented by the entry
dataAttributes of the legend entry
rectBounding rectangle for the entry

Definition at line 742 of file qwt_plot_legenditem.cpp.

QFont QwtPlotLegendItem::font ( ) const
Returns:
Font used for drawing the text label
See also:
setFont()

Definition at line 384 of file qwt_plot_legenditem.cpp.

QRect QwtPlotLegendItem::geometry ( const QRectF &  canvasRect) const [virtual]

Calculate the geometry of the legend on the canvas

Parameters:
canvasRectGeometry of the canvas
Returns:
Geometry of the legend

Definition at line 617 of file qwt_plot_legenditem.cpp.

int QwtPlotLegendItem::heightForWidth ( const QwtLegendData data,
int  width 
) const [virtual]
Returns:
The preferred height, for a width.
Parameters:
dataAttributes of the legend entry
widthWidth

Definition at line 824 of file qwt_plot_legenditem.cpp.

Returns:
Margin around each item
See also:
setItemMargin(), itemSpacing(), margin(), spacing()

Definition at line 330 of file qwt_plot_legenditem.cpp.

Returns:
Spacing inside of each item
See also:
setItemSpacing(), itemMargin(), margin(), spacing()

Definition at line 358 of file qwt_plot_legenditem.cpp.

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

Definition at line 857 of file qwt_plot_legenditem.cpp.

Returns:
Margin around the legend items
See also:
setMargin(), spacing(), itemMargin(), itemSpacing()

Definition at line 275 of file qwt_plot_legenditem.cpp.

Returns:
Maximum number of columns
See also:
maxColumns(), QwtDynGridLayout::maxColumns()

Definition at line 246 of file qwt_plot_legenditem.cpp.

QSize QwtPlotLegendItem::minimumSize ( const QwtLegendData data) const [virtual]

Minimum size hint needed to display an entry

Parameters:
dataAttributes of the legend entry
Returns:
Minimum size

Definition at line 785 of file qwt_plot_legenditem.cpp.

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

Definition at line 848 of file qwt_plot_legenditem.cpp.

int QwtPlotLegendItem::rtti ( ) const [virtual]
Returns:
QwtPlotItem::Rtti_PlotLegend

Reimplemented from QwtPlotItem.

Definition at line 187 of file qwt_plot_legenditem.cpp.

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:
alignmentAlignment flags
See also:
alignment(), setMaxColumns()
Note:
To align a legend with many items horizontally the number of columns need to be limited

Definition at line 205 of file qwt_plot_legenditem.cpp.

void QwtPlotLegendItem::setBackgroundBrush ( const QBrush &  brush)

Set the background brush.

The brush is used to fill the background

Parameters:
brushBrush
See also:
backgroundBrush(), setBackgroundMode(), drawBackground()

Definition at line 476 of file qwt_plot_legenditem.cpp.

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()

Definition at line 504 of file qwt_plot_legenditem.cpp.

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:
distanceMargin in pixels
See also:
setMargin()

Definition at line 397 of file qwt_plot_legenditem.cpp.

void QwtPlotLegendItem::setBorderPen ( const QPen &  pen)

Set the pen for drawing the border

Parameters:
penBorder pen
See also:
borderPen(), setBackgroundBrush()

Definition at line 450 of file qwt_plot_legenditem.cpp.

void QwtPlotLegendItem::setBorderRadius ( double  radius)

Set the radius for the border

Parameters:
radiusA value <= 0 defines a rectangular border
See also:
borderRadius(), setBorderPen()

Definition at line 424 of file qwt_plot_legenditem.cpp.

void QwtPlotLegendItem::setFont ( const QFont &  font)

Change the font used for drawing the text label

Parameters:
fontLegend font
See also:
font()

Definition at line 369 of file qwt_plot_legenditem.cpp.

void QwtPlotLegendItem::setItemMargin ( int  margin)

Set the margin around each item

Parameters:
marginMargin
See also:
itemMargin(), setItemSpacing(), setMargin(), setSpacing()

Definition at line 314 of file qwt_plot_legenditem.cpp.

void QwtPlotLegendItem::setItemSpacing ( int  spacing)

Set the spacing inside of each item

Parameters:
spacingSpacing
See also:
itemSpacing(), setItemMargin(), setMargin(), setSpacing()

Definition at line 341 of file qwt_plot_legenditem.cpp.

void QwtPlotLegendItem::setMargin ( int  margin)

Set the margin around legend items.

The default setting for the margin is 0.

Parameters:
marginMargin in pixels
See also:
margin(), setSpacing(), setItemMargin(), setItemSpacing

Definition at line 259 of file qwt_plot_legenditem.cpp.

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:
maxColumnsMaximum number of columns. 0 means unlimited.
See also:
maxColumns(), QwtDynGridLayout::setMaxColumns()

Definition at line 233 of file qwt_plot_legenditem.cpp.

void QwtPlotLegendItem::setSpacing ( int  spacing)

Set the spacing between the legend items.

Parameters:
spacingSpacing in pixels
See also:
spacing(), setMargin()

Definition at line 289 of file qwt_plot_legenditem.cpp.

void QwtPlotLegendItem::setTextPen ( const QPen &  pen)

Set the pen for drawing text labels.

Parameters:
penText pen
See also:
textPen(), setFont()

Definition at line 528 of file qwt_plot_legenditem.cpp.

Returns:
Spacing between the legend items
See also:
setSpacing(), margin(), itemSpacing(), itemMargin()

Definition at line 303 of file qwt_plot_legenditem.cpp.

Returns:
Pen for drawing text labels
See also:
setTextPen(), font()

Definition at line 541 of file qwt_plot_legenditem.cpp.

void QwtPlotLegendItem::updateLegend ( const QwtPlotItem plotItem,
const QList< QwtLegendData > &  data 
) [virtual]

Update the legend items according to modifications of a plot item

Parameters:
plotItemPlot item
dataAttributes of the legend entries

Reimplemented from QwtPlotItem.

Definition at line 661 of file qwt_plot_legenditem.cpp.


Member Data Documentation

Reimplemented from QwtPlotItem.

Definition at line 132 of file qwt_plot_legenditem.h.


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


plotjuggler
Author(s): Davide Faconti
autogenerated on Fri Sep 1 2017 02:41:58