QwtPlotLayout Class Reference

Layout engine for QwtPlot. More...

`#include <qwt_plot_layout.h>`

## Public Types

enum | Option { AlignScales = 0x01 , IgnoreScrollbars = 0x02 , IgnoreFrames = 0x04 , IgnoreLegend = 0x08 , IgnoreTitle = 0x10 , IgnoreFooter = 0x20 }
typedef QFlags< Option > | Options

## Public Member Functions

| QwtPlotLayout ()
| Constructor.
virtual | ~QwtPlotLayout ()
| Destructor.
void | setCanvasMargin (int margin, int axis=-1)
int | canvasMargin (int axisId) const
void | setAlignCanvasToScales (bool)
| Set the align-canvas-to-axis-scales flag for all axes. More...
void | setAlignCanvasToScale (int axisId, bool)
bool | alignCanvasToScale (int axisId) const
void | setSpacing (int)
int | spacing () const
void | setLegendPosition (QwtPlot::LegendPosition pos, double ratio)
| Specify the position of the legend. More...
void | setLegendPosition (QwtPlot::LegendPosition pos)
| Specify the position of the legend. More...
QwtPlot::LegendPosition | legendPosition () const
void | setLegendRatio (double ratio)
double | legendRatio () const
virtual QSize | minimumSizeHint (const QwtPlot *) const
virtual void | activate (const QwtPlot *, const QRectF &plotRect, Options options=Options())
| Recalculate the geometry of all components. More...
virtual void | invalidate ()
QRectF | titleRect () const
QRectF | footerRect () const
QRectF | legendRect () const
QRectF | scaleRect (QwtAxisId) const
QRectF | canvasRect () const

## Protected Member Functions

void | setTitleRect (const QRectF &)
| Set the geometry for the title. More...
void | setFooterRect (const QRectF &)
| Set the geometry for the footer. More...
void | setLegendRect (const QRectF &)
| Set the geometry for the legend. More...
void | setScaleRect (QwtAxisId, const QRectF &)
| Set the geometry for an axis. More...
void | setCanvasRect (const QRectF &)
| Set the geometry for the canvas. More...

## Detailed Description

Layout engine for QwtPlot.

It is used by the QwtPlot widget to organize its internal widgets or by QwtPlot::print() to render its content to a QPaintDevice like a QPrinter, QPixmap/QImage or QSvgRenderer.

See also
  QwtPlot::setPlotLayout()

Definition at line 27 of file qwt_plot_layout.h.

## Member Typedef Documentation

## Options

typedef QFlags<Option > QwtPlotLayout::Options

An ORed combination of Option values.

Definition at line 58 of file qwt_plot_layout.h.

## Member Enumeration Documentation

## Option

enum QwtPlotLayout::Option

Options to configure the plot layout engine

See also
  activate(), QwtPlotRenderer

Enumerator
AlignScales | Unused.
IgnoreScrollbars | Ignore the dimension of the scrollbars. There are no scrollbars, when the plot is not rendered to widgets.
IgnoreFrames | Ignore all frames.
IgnoreLegend | Ignore the legend.
IgnoreTitle | Ignore the title.
IgnoreFooter | Ignore the footer.

Definition at line 34 of file qwt_plot_layout.h.

## Member Function Documentation

## activate()

void QwtPlotLayout::activate | ( | const QwtPlot * | plot,
|  | const QRectF & | plotRect,
|  | Options | options = `Options()`
| ) |  |

virtual

Recalculate the geometry of all components.

Parameters

  plot | Plot to be layout
  plotRect | Rectangle where to place the components
  options | Layout options

See also
  invalidate(), titleRect(), footerRect() legendRect(), scaleRect(), canvasRect()

Definition at line 1508 of file qwt_plot_layout.cpp.

## alignCanvasToScale()

bool QwtPlotLayout::alignCanvasToScale | ( | int | axisPos | ) | const

Return the align-canvas-to-axis-scales setting. The canvas may:

- extend beyond the axis scale ends to maximize its size
- align with the axis scale ends to control its size.

Parameters

  axisPos | Axis position

Returns
  align-canvas-to-axis-scales setting

See also
  setAlignCanvasToScale(), setAlignCanvasToScale(), setCanvasMargin()

Definition at line 1141 of file qwt_plot_layout.cpp.

## canvasMargin()

int QwtPlotLayout::canvasMargin | ( | int | axisPos | ) | const

Parameters

  axisPos | Axis position

Returns
  Margin around the scale tick borders

See also
  setCanvasMargin()

Definition at line 1089 of file qwt_plot_layout.cpp.

## canvasRect()

QRectF QwtPlotLayout::canvasRect | ( |  | ) | const

Returns
  Geometry for the canvas

See also
  activate(), invalidate()

Definition at line 1380 of file qwt_plot_layout.cpp.

## footerRect()

QRectF QwtPlotLayout::footerRect | ( |  | ) | const

Returns
  Geometry for the footer

See also
  activate(), invalidate()

Definition at line 1304 of file qwt_plot_layout.cpp.

## invalidate()

void QwtPlotLayout::invalidate | ( |  | ) |

virtual

Invalidate the geometry of all components.

See also
  activate()

Definition at line 1389 of file qwt_plot_layout.cpp.

## legendPosition()

QwtPlot::LegendPosition QwtPlotLayout::legendPosition | ( |  | ) | const

Returns
  Position of the legend

See also
  setLegendPosition(), QwtPlot::setLegendPosition(), QwtPlot::legendPosition()

Definition at line 1237 of file qwt_plot_layout.cpp.

## legendRatio()

double QwtPlotLayout::legendRatio | ( |  | ) | const

Returns
  The relative size of the legend in the plot.

See also
  setLegendPosition()

Definition at line 1260 of file qwt_plot_layout.cpp.

## legendRect()

QRectF QwtPlotLayout::legendRect | ( |  | ) | const

Returns
  Geometry for the legend

See also
  activate(), invalidate()

Definition at line 1328 of file qwt_plot_layout.cpp.

## minimumSizeHint()

QSize QwtPlotLayout::minimumSizeHint | ( | const QwtPlot * | plot | ) | const

virtual

Returns
  Minimum size hint

Parameters

  plot | Plot widget

See also
  QwtPlot::minimumSizeHint()

Definition at line 1404 of file qwt_plot_layout.cpp.

## scaleRect()

QRectF QwtPlotLayout::scaleRect | ( | QwtAxisId | axisId | ) | const

Parameters

  axisId | Axis

Returns
  Geometry for the scale

See also
  activate(), invalidate()

Definition at line 1355 of file qwt_plot_layout.cpp.

## setAlignCanvasToScale()

void QwtPlotLayout::setAlignCanvasToScale | ( | int | axisPos,
|  | bool | on
| ) |  |

Change the align-canvas-to-axis-scales setting. The canvas may:

- extend beyond the axis scale ends to maximize its size,
- align with the axis scale ends to control its size.

The axisId parameter is somehow confusing as it identifies a border of the plot and not the axes, that are aligned. F.e when QwtAxis::YLeft is set, the left end of the the x-axes ( QwtAxis::XTop, QwtAxis::XBottom ) is aligned.

Parameters

  axisId | Axis index
  on | New align-canvas-to-axis-scales setting

See also
  setCanvasMargin(), alignCanvasToScale(), setAlignCanvasToScales()

Warning
  In case of on == true canvasMargin() will have no effect

Definition at line 1126 of file qwt_plot_layout.cpp.

## setAlignCanvasToScales()

void QwtPlotLayout::setAlignCanvasToScales | ( | bool | on | ) |

Set the align-canvas-to-axis-scales flag for all axes.

Parameters

  on | True/False

See also
  setAlignCanvasToScale(), alignCanvasToScale()

Definition at line 1103 of file qwt_plot_layout.cpp.

## setCanvasMargin()

void QwtPlotLayout::setCanvasMargin | ( | int | margin,
|  | int | axisPos = `-1`
| ) |  |

Change a margin of the canvas. The margin is the space above/below the scale ticks. A negative margin will be set to -1, excluding the borders of the scales.

Parameters

  margin | New margin
  axisPos | One of QwtAxis::Position. Specifies where the position of the margin. -1 means margin at all borders.

See also
  canvasMargin()

Warning
  The margin will have no effect when alignCanvasToScale() is true

Definition at line 1066 of file qwt_plot_layout.cpp.

## setCanvasRect()

void QwtPlotLayout::setCanvasRect | ( | const QRectF & | rect | ) |

protected

Set the geometry for the canvas.

This method is intended to be used from derived layouts overloading activate()

See also
  canvasRect(), activate()

Definition at line 1371 of file qwt_plot_layout.cpp.

## setFooterRect()

void QwtPlotLayout::setFooterRect | ( | const QRectF & | rect | ) |

protected

Set the geometry for the footer.

This method is intended to be used from derived layouts overloading activate()

See also
  footerRect(), activate()

Definition at line 1295 of file qwt_plot_layout.cpp.

## setLegendPosition() [1/2]

void QwtPlotLayout::setLegendPosition | ( | QwtPlot::LegendPosition | pos | ) |

Specify the position of the legend.

Parameters

  pos | The legend's position. Valid values are `QwtPlot::LeftLegend`, `QwtPlot::RightLegend`, `QwtPlot::TopLegend`, `QwtPlot::BottomLegend`.

See also
  QwtPlot::setLegendPosition()

Definition at line 1227 of file qwt_plot_layout.cpp.

## setLegendPosition() [2/2]

void QwtPlotLayout::setLegendPosition | ( | QwtPlot::LegendPosition | pos,
|  | double | ratio
| ) |  |

Specify the position of the legend.

Parameters

  pos | The legend's position.
  ratio | Ratio between legend and the bounding rectangle of title, footer, canvas and axes. The legend will be shrunk if it would need more space than the given ratio. The ratio is limited to ]0.0 .. 1.0]. In case of <= 0.0 it will be reset to the default ratio. The default vertical/horizontal ratio is 0.33/0.5.

See also
  QwtPlot::setLegendPosition()

Definition at line 1183 of file qwt_plot_layout.cpp.

## setLegendRatio()

void QwtPlotLayout::setLegendRatio | ( | double | ratio | ) |

Specify the relative size of the legend in the plot

Parameters

  ratio | Ratio between legend and the bounding rectangle of title, footer, canvas and axes. The legend will be shrunk if it would need more space than the given ratio. The ratio is limited to ]0.0 .. 1.0]. In case of <= 0.0 it will be reset to the default ratio. The default vertical/horizontal ratio is 0.33/0.5.

Definition at line 1251 of file qwt_plot_layout.cpp.

## setLegendRect()

void QwtPlotLayout::setLegendRect | ( | const QRectF & | rect | ) |

protected

Set the geometry for the legend.

This method is intended to be used from derived layouts overloading activate()

Parameters

  rect | Rectangle for the legend

See also
  legendRect(), activate()

Definition at line 1319 of file qwt_plot_layout.cpp.

## setScaleRect()

void QwtPlotLayout::setScaleRect | ( | QwtAxisId | axisId,
|  | const QRectF & | rect
| ) |  |

protected

Set the geometry for an axis.

This method is intended to be used from derived layouts overloading activate()

Parameters

  axisId | Axis
  rect | Rectangle for the scale

See also
  scaleRect(), activate()

Definition at line 1344 of file qwt_plot_layout.cpp.

## setSpacing()

void QwtPlotLayout::setSpacing | ( | int | spacing | ) |

Change the spacing of the plot. The spacing is the distance between the plot components.

Parameters

  spacing | New spacing

See also
  setCanvasMargin(), spacing()

Definition at line 1156 of file qwt_plot_layout.cpp.

## setTitleRect()

void QwtPlotLayout::setTitleRect | ( | const QRectF & | rect | ) |

protected

Set the geometry for the title.

This method is intended to be used from derived layouts overloading activate()

See also
  titleRect(), activate()

Definition at line 1273 of file qwt_plot_layout.cpp.

## spacing()

int QwtPlotLayout::spacing | ( |  | ) | const

Returns
  Spacing

See also
  margin(), setSpacing()

Definition at line 1165 of file qwt_plot_layout.cpp.

## titleRect()

QRectF QwtPlotLayout::titleRect | ( |  | ) | const

Returns
  Geometry for the title

See also
  activate(), invalidate()

Definition at line 1282 of file qwt_plot_layout.cpp.