# QwtPlotItem Class Reference

Inheritance diagram for QwtPlotItem:

[legend]
List of all members.

## Detailed Description

Base class for items on the plot canvas.

Definition at line 30 of file qwt_plot_item.h.

## Public Types

enum | RttiValues { Rtti_PlotItem = 0, Rtti_PlotGrid, Rtti_PlotMarker, Rtti_PlotCurve, Rtti_PlotHistogram, Rtti_PlotSpectrogram, Rtti_PlotSVG, Rtti_PlotUserItem = 1000 }
enum | ItemAttribute { Legend = 1, AutoScale = 2 }
enum | RenderHint { RenderAntialiased = 1 }

## Public Member Functions

| QwtPlotItem (const QwtText &title=QwtText())
virtual | ~QwtPlotItem ()
void | attach (QwtPlot *plot)
void | detach ()
QwtPlot * | plot () const
void | setTitle (const QString &title)
void | setTitle (const QwtText &title)
const QwtText & | title () const
virtual int | rtti () const
void | setItemAttribute (ItemAttribute, bool on=true)
bool | testItemAttribute (ItemAttribute) const
void | setRenderHint (RenderHint, bool on=true)
bool | testRenderHint (RenderHint) const
double | z () const
void | setZ (double z)
void | show ()
void | hide ()
virtual void | setVisible (bool)
bool | isVisible () const
void | setAxis (int xAxis, int yAxis)
void | setXAxis (int axis)
int | xAxis () const
void | setYAxis (int axis)
int | yAxis () const
virtual void | itemChanged ()
virtual void | draw (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRect &canvasRect) const =0
virtual QwtDoubleRect | boundingRect () const
virtual void | updateLegend (QwtLegend *) const
virtual void | updateScaleDiv (const QwtScaleDiv &, const QwtScaleDiv &)
virtual QWidget * | legendItem () const
QwtDoubleRect | scaleRect (const QwtScaleMap &, const QwtScaleMap &) const
QRect | paintRect (const QwtScaleMap &, const QwtScaleMap &) const
QRect | transform (const QwtScaleMap &, const QwtScaleMap &, const QwtDoubleRect &) const
QwtDoubleRect | invTransform (const QwtScaleMap &, const QwtScaleMap &, const QRect &) const

## Constructor & Destructor Documentation

QwtPlotItem::QwtPlotItem | ( | const QwtText & | title = `QwtText()` | ) | `[explicit]`

| Constructor. Definition at line 48 of file qwt_plot_item.cpp. References title().

QwtPlotItem::~QwtPlotItem | ( |  | ) | `[virtual]`

| Destroy the QwtPlotItem. Definition at line 55 of file qwt_plot_item.cpp. References attach().

## Member Function Documentation

void QwtPlotItem::attach | ( | QwtPlot * | plot | ) |

| Attach the item to a plot Definition at line 64 of file qwt_plot_item.cpp. References legendItem(), and plot(). Referenced by ~QwtPlotItem().

QwtDoubleRect QwtPlotItem::boundingRect | ( |  | ) | const`[virtual]`

Returns:
  An invalid bounding rect: QwtDoubleRect(1.0, 1.0, -2.0, -2.0)

Reimplemented in QwtPlotCurve, QwtPlotMarker, QwtPlotSpectrogram, and QwtPlotSvgItem.

Definition at line 367 of file qwt_plot_item.cpp.

Referenced by QwtPlotRasterItem::draw(), QwtPlotCurve::maxXValue(), QwtPlotCurve::maxYValue(), QwtPlotCurve::minXValue(), and QwtPlotCurve::minYValue().

virtual void QwtPlotItem::draw | ( | QPainter * | painter,
|  | const QwtScaleMap & | xMap,
|  | const QwtScaleMap & | yMap,
|  | const QRect & | canvasRect
| ) | const`[pure virtual]`

Draw the item.

Parameters:

  | painter | Painter
  | xMap | Maps x-values into pixel coordinates.
  | yMap | Maps y-values into pixel coordinates.
  | canvasRect | Contents rect of the canvas in painter coordinates

Implemented in QwtPlotCurve, QwtPlotGrid, QwtPlotMarker, QwtPlotRasterItem, QwtPlotSpectrogram, and QwtPlotSvgItem.

QwtDoubleRect QwtPlotItem::invTransform | ( | const QwtScaleMap & | xMap,
|  | const QwtScaleMap & | yMap,
|  | const QRect & | rect
| ) | const

Transform a rectangle from paint to scale coordinates

Parameters:

  | xMap | X map
  | yMap | Y map
  | rect | Rectangle in paint coordinates

Returns:
  Rectangle in scale coordinates

See also:
  transform()

Definition at line 526 of file qwt_plot_item.cpp.

References QwtScaleMap::invTransform().

Referenced by QwtPlotSvgItem::draw(), QwtPlotSpectrogram::draw(), and QwtPlotRasterItem::draw().

bool QwtPlotItem::isVisible | ( |  | ) | const

Returns:
  true if visible

See also:
  setVisible(), show(), hide()

Definition at line 275 of file qwt_plot_item.cpp.

void QwtPlotItem::itemChanged | ( |  | ) | `[virtual]`

Update the legend and call QwtPlot::autoRefresh for the parent plot.

See also:
  updateLegend()

Definition at line 286 of file qwt_plot_item.cpp.

References updateLegend().

Referenced by QwtPlotGrid::enableX(), QwtPlotGrid::enableXMin(), QwtPlotGrid::enableY(), QwtPlotGrid::enableYMin(), QwtPlotSvgItem::loadData(), QwtPlotSvgItem::loadFile(), QwtPlotRasterItem::setAlpha(), setAxis(), QwtPlotCurve::setBaseline(), QwtPlotCurve::setBrush(), QwtPlotRasterItem::setCachePolicy(), QwtPlotSpectrogram::setColorMap(), QwtPlotSpectrogram::setConrecAttribute(), QwtPlotSpectrogram::setContourLevels(), QwtPlotCurve::setCurveAttribute(), QwtPlotCurve::setCurveFitter(), QwtPlotCurve::setCurveType(), QwtPlotSpectrogram::setData(), QwtPlotCurve::setData(), QwtPlotSpectrogram::setDefaultContourPen(), QwtPlotSpectrogram::setDisplayMode(), setItemAttribute(), QwtPlotMarker::setLabel(), QwtPlotMarker::setLinePen(), QwtPlotMarker::setLineStyle(), QwtPlotGrid::setMajPen(), QwtPlotGrid::setMinPen(), QwtPlotGrid::setPen(), QwtPlotCurve::setPen(), QwtPlotCurve::setRawData(), setRenderHint(), QwtPlotCurve::setStyle(), QwtPlotMarker::setSymbol(), QwtPlotCurve::setSymbol(), setTitle(), QwtPlotMarker::setValue(), setVisible(), setXAxis(), QwtPlotGrid::setXDiv(), setYAxis(), QwtPlotGrid::setYDiv(), and setZ().

QWidget * QwtPlotItem::legendItem | ( |  | ) | const`[virtual]`

Allocate the widget that represents the item on the legend.

The default implementation is made for QwtPlotCurve and returns a QwtLegendItem(), but an item could be represented by any type of widget, by overloading legendItem() and updateLegend().

Returns:
  QwtLegendItem()

See also:
  updateLegend() QwtLegend()

Definition at line 382 of file qwt_plot_item.cpp.

Referenced by attach(), updateLegend(), and QwtPlotCurve::updateLegend().

QRect QwtPlotItem::paintRect | ( | const QwtScaleMap & | xMap,
|  | const QwtScaleMap & | yMap
| ) | const

Calculate the bounding paint rect of 2 maps.

Parameters:

  | xMap | X map
  | yMap | X map

Returns:
  Bounding rect of the scale maps

Definition at line 482 of file qwt_plot_item.cpp.

References QwtScaleMap::p1(), and QwtScaleMap::pDist().

Referenced by QwtPlotRasterItem::draw().

QwtPlot * QwtPlotItem::plot | ( |  | ) | const

| Return attached plot. Definition at line 103 of file qwt_plot_item.cpp. Referenced by attach(), QwtPlotCurve::closestPoint(), and QwtPlotCurve::draw().

QwtDoubleRect QwtPlotItem::scaleRect | ( | const QwtScaleMap & | xMap,
|  | const QwtScaleMap & | yMap
| ) | const

Calculate the bounding scale rect of 2 maps.

Parameters:

  | xMap | X map
  | yMap | X map

Returns:
  Bounding rect of the scale maps

Definition at line 467 of file qwt_plot_item.cpp.

References QwtScaleMap::s1(), and QwtScaleMap::sDist().

void QwtPlotItem::setAxis | ( | int | xAxis,
|  | int | yAxis
| ) |

Set X and Y axis

The item will painted according to the coordinates its Axes.

Parameters:

  | xAxis | X Axis
  | yAxis | Y Axis

See also:
  setXAxis(), setYAxis(), xAxis(), yAxis()

Definition at line 307 of file qwt_plot_item.cpp.

References itemChanged().

void QwtPlotItem::setItemAttribute | ( | ItemAttribute | attribute,
|  | bool | on = `true`
| ) |

Toggle an item attribute

Parameters:

  | attribute | Attribute type
  | on | true/false

See also:
  testItemAttribute(), ItemAttribute

Definition at line 184 of file qwt_plot_item.cpp.

References itemChanged().

Referenced by QwtPlotCurve::init(), and QwtPlotSpectrogram::QwtPlotSpectrogram().

void QwtPlotItem::setRenderHint | ( | RenderHint | hint,
|  | bool | on = `true`
| ) |

Toggle an render hint

Parameters:

  | hint | Render hint
  | on | true/false

See also:
  testRenderHint(), RenderHint

Definition at line 219 of file qwt_plot_item.cpp.

References itemChanged().

void QwtPlotItem::setTitle | ( | const QwtText & | title | ) |

Set a new title

Parameters:

  | title | Title

See also:
  title()

Definition at line 158 of file qwt_plot_item.cpp.

References itemChanged(), and title().

void QwtPlotItem::setTitle | ( | const QString & | title | ) |

Set a new title

Parameters:

  | title | Title

See also:
  title()

Definition at line 147 of file qwt_plot_item.cpp.

void QwtPlotItem::setVisible | ( | bool | on | ) | `[virtual]`

Show/Hide the item

Parameters:

  | on | Show if true, otherwise hide

See also:
  isVisible(), show(), hide()

Definition at line 262 of file qwt_plot_item.cpp.

References itemChanged().

Referenced by hide(), and show().

void QwtPlotItem::setXAxis | ( | int | axis | ) |

Set the X axis

The item will painted according to the coordinates its Axes.

Parameters:

  | axis | X Axis

See also:
  setAxis(), setYAxis(), xAxis()

Definition at line 326 of file qwt_plot_item.cpp.

References itemChanged().

void QwtPlotItem::setYAxis | ( | int | axis | ) |

Set the Y axis

The item will painted according to the coordinates its Axes.

Parameters:

  | axis | Y Axis

See also:
  setAxis(), setXAxis(), yAxis()

Definition at line 343 of file qwt_plot_item.cpp.

References itemChanged().

void QwtPlotItem::setZ | ( | double | z | ) |

Set the z value.

Plot items are painted in increasing z-order.

Parameters:

  | z | Z-value

See also:
  z(), QwtPlotDict::itemList()

Definition at line 126 of file qwt_plot_item.cpp.

References itemChanged().

Referenced by QwtPlotCurve::init(), QwtPlotGrid::QwtPlotGrid(), QwtPlotMarker::QwtPlotMarker(), and QwtPlotSpectrogram::QwtPlotSpectrogram().

bool QwtPlotItem::testItemAttribute | ( | ItemAttribute | attribute | ) | const

Test an item attribute

Parameters:

  | ItemAttribute | Attribute type

Returns:
  true/false

See also:
  setItemAttribute(), ItemAttribute

Definition at line 204 of file qwt_plot_item.cpp.

Referenced by updateLegend().

bool QwtPlotItem::testRenderHint | ( | RenderHint | hint | ) | const

Test a render hint

Parameters:

  | hint | Render hint

Returns:
  true/false

See also:
  setRenderHint(), RenderHint

Definition at line 239 of file qwt_plot_item.cpp.

const QwtText & QwtPlotItem::title | ( |  | ) | const

Returns:
  Title of the item

See also:
  setTitle()

Definition at line 171 of file qwt_plot_item.cpp.

Referenced by QwtPlotItem(), setTitle(), and QwtPlotCurve::updateLegend().

QRect QwtPlotItem::transform | ( | const QwtScaleMap & | xMap,
|  | const QwtScaleMap & | yMap,
|  | const QwtDoubleRect & | rect
| ) | const

Transform a rectangle

Parameters:

  | xMap | X map
  | yMap | Y map
  | rect | Rectangle in scale coordinates

Returns:
  Rectangle in paint coordinates

See also:
  invTransform()

Definition at line 501 of file qwt_plot_item.cpp.

References QwtScaleMap::transform().

Referenced by QwtPlotSvgItem::draw(), QwtPlotSpectrogram::draw(), QwtPlotRasterItem::draw(), and QwtPlotSpectrogram::renderImage().

void QwtPlotItem::updateLegend | ( | QwtLegend * | legend | ) | const`[virtual]`

Update the widget that represents the item on the legend.

updateLegend() is called from itemChanged() to adopt the widget representing the item on the legend to its new configuration.

The default implementation is made for QwtPlotCurve and updates a QwtLegendItem(), but an item could be represented by any type of widget, by overloading legendItem() and updateLegend().

See also:
  legendItem(), itemChanged(), QwtLegend()

Reimplemented in QwtPlotCurve.

Definition at line 399 of file qwt_plot_item.cpp.

References QwtLegend::find(), QwtLegend::insert(), QwtLegend::itemMode(), legendItem(), and testItemAttribute().

Referenced by itemChanged(), QwtLegend::setDisplayPolicy(), and QwtPlotCurve::updateLegend().

void QwtPlotItem::updateScaleDiv | ( | const QwtScaleDiv & | ,
|  | const QwtScaleDiv & |
| ) | `[virtual]`

Update the item to changes of the axes scale division.

Update the item, when the axes of plot have changed. The default implementation does nothing, but items that depend on the scale division (like QwtPlotGrid()) have to reimplement updateScaleDiv()

Parameters:

  | xScaleDiv | Scale division of the x-axis
  | yScaleDiv | Scale division of the y-axis

See also:
  QwtPlot::updateAxes()

Reimplemented in QwtPlotGrid.

Definition at line 454 of file qwt_plot_item.cpp.

int QwtPlotItem::xAxis | ( |  | ) | const

| Return xAxis. Definition at line 353 of file qwt_plot_item.cpp. Referenced by QwtPlotCurve::closestPoint().

int QwtPlotItem::yAxis | ( |  | ) | const

| Return yAxis. Definition at line 359 of file qwt_plot_item.cpp. Referenced by QwtPlotCurve::closestPoint().

double QwtPlotItem::z | ( |  | ) | const

Plot items are painted in increasing z-order.

Returns:
  setZ(), QwtPlotDict::itemList()

Definition at line 113 of file qwt_plot_item.cpp.