QwtPlotTextLabel Class Reference

A plot item, which displays a text label. More...

`#include <qwt_plot_textlabel.h>`

Inheritance diagram for QwtPlotTextLabel:

## Public Member Functions

| QwtPlotTextLabel ()
| Constructor. More...
virtual | ~QwtPlotTextLabel ()
| Destructor.
virtual int | rtti () const override
void | setText (const QwtText &)
QwtText | text () const
void | setMargin (int margin)
int | margin () const
virtual QRectF | textRect (const QRectF &, const QSizeF &) const
| Align the text label. More...
Public Member Functions inherited from QwtPlotItem
| QwtPlotItem ()
| QwtPlotItem (const QString &title)
| QwtPlotItem (const QwtText &title)
virtual | ~QwtPlotItem ()
| Destroy the QwtPlotItem.
void | attach (QwtPlot *plot)
| Attach the item to a plot. More...
void | detach ()
| This method detaches a QwtPlotItem from any QwtPlot it has been associated with. More...
QwtPlot * | plot () const
| Return attached plot.
void | setTitle (const QString &title)
void | setTitle (const QwtText &title)
const QwtText & | title () const
void | setItemAttribute (ItemAttribute, bool on=true)
bool | testItemAttribute (ItemAttribute) const
void | setItemInterest (ItemInterest, bool on=true)
bool | testItemInterest (ItemInterest) const
void | setRenderHint (RenderHint, bool on=true)
bool | testRenderHint (RenderHint) const
void | setRenderThreadCount (uint numThreads)
uint | renderThreadCount () const
void | setLegendIconSize (const QSize &)
QSize | legendIconSize () const
double | z () const
void | setZ (double z)
| Set the z value. More...
void | show ()
| Show the item.
void | hide ()
| Hide the item.
virtual void | setVisible (bool)
bool | isVisible () const
void | setAxes (QwtAxisId xAxis, QwtAxisId yAxis)
void | setXAxis (QwtAxisId)
QwtAxisId | xAxis () const
| Return xAxis.
void | setYAxis (QwtAxisId)
QwtAxisId | yAxis () const
| Return yAxis.
virtual void | itemChanged ()
virtual void | legendChanged ()
virtual QRectF | boundingRect () const
virtual void | getCanvasMarginHint (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, double &left, double &top, double &right, double &bottom) const
| Calculate a hint for the canvas margin. More...
virtual void | updateScaleDiv (const QwtScaleDiv &, const QwtScaleDiv &)
| Update the item to changes of the axes scale division. More...
virtual void | updateLegend (const QwtPlotItem *, const QList< QwtLegendData > &)
| Update the item to changes of the legend info. More...
QRectF | scaleRect (const QwtScaleMap &, const QwtScaleMap &) const
| Calculate the bounding scale rectangle of 2 maps. More...
QRectF | paintRect (const QwtScaleMap &, const QwtScaleMap &) const
| Calculate the bounding paint rectangle of 2 maps. More...
virtual QList< QwtLegendData > | legendData () const
| Return all information, that is needed to represent the item on the legend. More...
virtual QwtGraphic | legendIcon (int index, const QSizeF &) const

## Protected Member Functions

virtual void | draw (QPainter *, const QwtScaleMap &, const QwtScaleMap &, const QRectF &) const override
void | invalidateCache ()
| Invalidate all internal cache.
Protected Member Functions inherited from QwtPlotItem
QwtGraphic | defaultIcon (const QBrush &, const QSizeF &) const
| Return a default icon from a brush. More...

## Additional Inherited Members

Public Types inherited from QwtPlotItem

enum

RttiValues {
Rtti_PlotItem = 0 , Rtti_PlotGrid , Rtti_PlotScale , Rtti_PlotLegend ,
Rtti_PlotMarker , Rtti_PlotCurve , Rtti_PlotSpectroCurve , Rtti_PlotIntervalCurve ,
Rtti_PlotHistogram , Rtti_PlotSpectrogram , Rtti_PlotGraphic , Rtti_PlotTradingCurve ,
Rtti_PlotBarChart , Rtti_PlotMultiBarChart , Rtti_PlotShape , Rtti_PlotTextLabel ,
Rtti_PlotZone , Rtti_PlotVectorField , Rtti_PlotUserItem = 1000
}

| Runtime type information. More...
enum | ItemAttribute { Legend = 0x01 , AutoScale = 0x02 , Margins = 0x04 }
| Plot Item Attributes. More...
enum | ItemInterest { ScaleInterest = 0x01 , LegendInterest = 0x02 }
| Plot Item Interests. More...
enum | RenderHint { RenderAntialiased = 0x1 }
| Render hints. More...
typedef QFlags< ItemAttribute > | ItemAttributes
typedef QFlags< ItemInterest > | ItemInterests
typedef QFlags< RenderHint > | RenderHints

## Detailed Description

A plot item, which displays a text label.

QwtPlotTextLabel displays a text label aligned to the plot canvas.

In opposite to QwtPlotMarker the position of the label is unrelated to plot coordinates.

As drawing a text is an expensive operation the label is cached in a pixmap to speed up replots.

Example
  The following code shows how to add a title.
  QwtText title( "Plot Title" );
  title.setRenderFlags( Qt::AlignHCenter | Qt::AlignTop );
  QFont font;
  font.setBold( true );
  title.setFont( font );
  QwtPlotTextLabel *titleItem = new QwtPlotTextLabel();
  titleItem->setText( title );
  titleItem->attach( plot );
  QwtPlotItem::title
  const QwtText & title() const
  Definition: qwt_plot_item.cpp:215
  QwtPlotItem::plot
  QwtPlot * plot() const
  Return attached plot.
  Definition: qwt_plot_item.cpp:142
  QwtPlotItem::attach
  void attach(QwtPlot *plot)
  Attach the item to a plot.
  Definition: qwt_plot_item.cpp:98
  QwtPlotTextLabel
  A plot item, which displays a text label.
  Definition: qwt_plot_textlabel.h:48
  QwtPlotTextLabel::QwtPlotTextLabel
  QwtPlotTextLabel()
  Constructor.
  Definition: qwt_plot_textlabel.cpp:82
  QwtPlotTextLabel::setText
  void setText(const QwtText &)
  Definition: qwt_plot_textlabel.cpp:115
  QwtText
  A class representing a text.
  Definition: qwt_text.h:52
  QwtText::setFont
  void setFont(const QFont &)
  Definition: qwt_text.cpp:329
  QwtText::setRenderFlags
  void setRenderFlags(int)
  Change the render flags.
  Definition: qwt_text.cpp:304

See also
  QwtPlotMarker

Definition at line 47 of file qwt_plot_textlabel.h.

## Constructor & Destructor Documentation

## QwtPlotTextLabel()

QwtPlotTextLabel::QwtPlotTextLabel | ( |  | ) |

Constructor.

Initializes an text label with an empty text

Sets the following item attributes:

- QwtPlotItem::AutoScale: true
- QwtPlotItem::Legend: false

The z value is initialized by 150

See also
  QwtPlotItem::setItemAttribute(), QwtPlotItem::setZ()

Definition at line 82 of file qwt_plot_textlabel.cpp.

## Member Function Documentation

## draw()

void QwtPlotTextLabel::draw | ( | QPainter * | painter,
|  | const QwtScaleMap & | xMap,
|  | const QwtScaleMap & | yMap,
|  | const QRectF & | canvasRect
| ) |  | const

override protected virtual

Draw the text label

Parameters

  painter | Painter
  xMap | x Scale Map
  yMap | y Scale Map
  canvasRect | Contents rectangle of the canvas in painter coordinates

See also
  textRect()

Implements QwtPlotItem.

Definition at line 176 of file qwt_plot_textlabel.cpp.

## margin()

int QwtPlotTextLabel::margin | ( |  | ) | const

Returns
  Margin added to the contentsMargins() of the canvas

See also
  setMargin()

Definition at line 160 of file qwt_plot_textlabel.cpp.

## rtti()

int QwtPlotTextLabel::rtti | ( |  | ) | const

override virtual

Returns
  QwtPlotItem::Rtti_PlotTextLabel

Reimplemented from QwtPlotItem.

Definition at line 100 of file qwt_plot_textlabel.cpp.

## setMargin()

void QwtPlotTextLabel::setMargin | ( | int | margin | ) |

Set the margin

The margin is the distance between the contentsRect() of the plot canvas and the rectangle where the label can be displayed.

Parameters

  margin | Margin

See also
  margin(), textRect()

Definition at line 146 of file qwt_plot_textlabel.cpp.

## setText()

void QwtPlotTextLabel::setText | ( | const QwtText & | text | ) |

Set the text

The label will be aligned to the plot canvas according to the alignment flags of text.

Parameters

  text | Text to be displayed

See also
  text(), QwtText::renderFlags()

Definition at line 115 of file qwt_plot_textlabel.cpp.

## text()

QwtText QwtPlotTextLabel::text | ( |  | ) | const

Returns
  Text to be displayed

See also
  setText()

Definition at line 130 of file qwt_plot_textlabel.cpp.

## textRect()

QRectF QwtPlotTextLabel::textRect | ( | const QRectF & | rect,
|  | const QSizeF & | textSize
| ) |  | const

virtual

Align the text label.

Parameters

  rect | Canvas rectangle with margins subtracted
  textSize | Size required to draw the text

Returns
  A rectangle aligned according the the alignment flags of the text.

See also
  setMargin(), QwtText::renderFlags(), QwtText::textSize()

Definition at line 263 of file qwt_plot_textlabel.cpp.