# QwtPlotLayout Class Reference

List of all members.

## Detailed Description

Layout class for QwtPlot.

Organizes the geometry for the different QwtPlot components.

Definition at line 22 of file qwt_plot_layout.h.

## Public Types

enum | Options { AlignScales = 1, IgnoreScrollbars = 2, IgnoreFrames = 4, IgnoreMargin = 8, IgnoreLegend = 16, PrintMargin = 1, PrintTitle = 2, PrintLegend = 4, PrintGrid = 8, PrintBackground = 16, PrintFrameWithScales = 32, PrintAll = ~PrintFrameWithScales }

## Public Member Functions

| QwtPlotLayout ()
virtual | ~QwtPlotLayout ()
void | setMargin (int)
int | margin () const
void | setCanvasMargin (int margin, int axis=-1)
int | canvasMargin (int axis) const
void | setAlignCanvasToScales (bool)
bool | alignCanvasToScales () const
void | setSpacing (int)
int | spacing () const
void | setLegendPosition (QwtPlot::LegendPosition pos, double ratio)
void | setLegendPosition (QwtPlot::LegendPosition pos)
QwtPlot::LegendPosition | legendPosition () const
void | setLegendRatio (double ratio)
double | legendRatio () const
virtual QSize | minimumSizeHint (const QwtPlot *) const
virtual void | activate (const QwtPlot *, const QRect &rect, int options=0)
virtual void | invalidate ()
const QRect & | titleRect () const
const QRect & | legendRect () const
const QRect & | scaleRect (int axis) const
const QRect & | canvasRect () const

## Protected Member Functions

QRect | layoutLegend (int options, const QRect &) const
QRect | alignLegend (const QRect &canvasRect, const QRect &legendRect) const
void | expandLineBreaks (int options, const QRect &rect, int &dimTitle, int dimAxes[QwtPlot::axisCnt]) const
void | alignScales (int options, QRect &canvasRect, QRect scaleRect[QwtPlot::axisCnt]) const

## Constructor & Destructor Documentation

QwtPlotLayout::QwtPlotLayout | ( |  | ) | `[explicit]`

Constructor.

Definition at line 182 of file qwt_plot_layout.cpp.

References invalidate(), setCanvasMargin(), and setLegendPosition().

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

Destructor.

Definition at line 193 of file qwt_plot_layout.cpp.

## Member Function Documentation

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

Change the margin of the plot. The margin is the space around all components.

Parameters:

  | margin | new margin

See also:
  margin(), setSpacing(), QwtPlot::setMargin()

Definition at line 206 of file qwt_plot_layout.cpp.

int QwtPlotLayout::margin | ( |  | ) | const

Returns:
  margin

See also:
  setMargin(), spacing(), QwtPlot::margin()

Definition at line 217 of file qwt_plot_layout.cpp.

void QwtPlotLayout::setCanvasMargin | ( | int | margin,
|  | int | axis = `-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
  | axis | One of QwtPlot::Axis. Specifies where the position of the margin. -1 means margin at all borders.

See also:
  canvasMargin()

Warning:
  The margin will have no effect when alignCanvasToScales is true

Definition at line 235 of file qwt_plot_layout.cpp.

Referenced by QwtPlotLayout().

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

Returns:
  Margin around the scale tick borders

See also:
  setCanvasMargin()

Definition at line 253 of file qwt_plot_layout.cpp.

Referenced by QwtPlot::canvasMap(), and QwtPlot::print().

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

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.

Parameters:

  | alignCanvasToScales | New align-canvas-to-axis-scales setting

See also:
  setCanvasMargin()

Note:
  In this context the term 'scale' means the backbone of a scale.

Warning:
  In case of alignCanvasToScales == true canvasMargin will have no effect

Definition at line 273 of file qwt_plot_layout.cpp.

bool QwtPlotLayout::alignCanvasToScales | ( |  | ) | 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.

Returns:
  align-canvas-to-axis-scales setting

See also:
  setAlignCanvasToScales, setCanvasMargin()

Note:
  In this context the term 'scale' means the backbone of a scale.

Definition at line 287 of file qwt_plot_layout.cpp.

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:
  setMargin(), spacing()

Definition at line 299 of file qwt_plot_layout.cpp.

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

Returns:
  spacing

See also:
  margin(), setSpacing()

Definition at line 308 of file qwt_plot_layout.cpp.

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 rect of title, canvas and axes. The legend will be shrinked 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 326 of file qwt_plot_layout.cpp.

Referenced by QwtPlotLayout(), setLegendPosition(), and setLegendRatio().

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 363 of file qwt_plot_layout.cpp.

References setLegendPosition().

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

Returns:
  Position of the legend

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

Definition at line 373 of file qwt_plot_layout.cpp.

Referenced by setLegendRatio().

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

Specify the relative size of the legend in the plot

Parameters:

  | ratio | Ratio between legend and the bounding rect of title, canvas and axes. The legend will be shrinked 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 387 of file qwt_plot_layout.cpp.

References legendPosition(), and setLegendPosition().

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

Returns:
  The relative size of the legend in the plot.

See also:
  setLegendPosition()

Definition at line 396 of file qwt_plot_layout.cpp.

QSize QwtPlotLayout::minimumSizeHint | ( | const QwtPlot * | plot | ) | const`[virtual]`

Return a minimum size hint.

See also:
  QwtPlot::minimumSizeHint()

Definition at line 463 of file qwt_plot_layout.cpp.

References QwtPlot::axisEnabled(), QwtPlot::axisWidget(), QwtPlot::canvas(), and QwtScaleWidget::minimumSizeHint().

void QwtPlotLayout::activate | ( | const QwtPlot * | plot,
|  | const QRect & | plotRect,
|  | int | options = `0` |
| ) |  |  | `[virtual]`

Recalculate the geometry of all components.

Parameters:

  | plot | Plot to be layout
  | plotRect | Rect where to place the components
  | options | Options

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

Definition at line 1041 of file qwt_plot_layout.cpp.

References alignLegend(), alignScales(), expandLineBreaks(), invalidate(), QwtLegend::isEmpty(), layoutLegend(), QwtPlot::legend(), and scaleRect().

void QwtPlotLayout::invalidate | ( |  | ) | `[virtual]`

Invalidate the geometry of all components.

See also:
  activate()

Definition at line 451 of file qwt_plot_layout.cpp.

Referenced by activate(), and QwtPlotLayout().

const QRect & QwtPlotLayout::titleRect | ( |  | ) | const

Returns:
  Geometry for the title

See also:
  activate(), invalidate()

Definition at line 406 of file qwt_plot_layout.cpp.

const QRect & QwtPlotLayout::legendRect | ( |  | ) | const

Returns:
  Geometry for the legend

See also:
  activate(), invalidate()

Definition at line 416 of file qwt_plot_layout.cpp.

Referenced by layoutLegend().

const QRect & QwtPlotLayout::scaleRect | ( | int | axis | ) | const

Parameters:

  | axis | Axis index

Returns:
  Geometry for the scale

See also:
  activate(), invalidate()

Definition at line 427 of file qwt_plot_layout.cpp.

Referenced by activate(), alignScales(), and QwtPlot::print().

const QRect & QwtPlotLayout::canvasRect | ( |  | ) | const

Returns:
  Geometry for the canvas

See also:
  activate(), invalidate()

Definition at line 442 of file qwt_plot_layout.cpp.

Referenced by QwtPlot::print().

QRect QwtPlotLayout::layoutLegend | ( | int | options,
|  | const QRect & | rect |
| ) |  |  | const`[protected]`

Find the geometry for the legend

Parameters:

  | options | Options how to layout the legend
  | rect | Rectangle where to place the legend

Returns:
  Geometry for the legend

Definition at line 647 of file qwt_plot_layout.cpp.

References legendRect().

Referenced by activate().

QRect QwtPlotLayout::alignLegend | ( | const QRect & | canvasRect,
|  | const QRect & | legendRect |
| ) |  |  | const`[protected]`

Align the legend to the canvas

Parameters:

  | canvasRect | Geometry of the canvas
  | legendRect | Maximum geometry for the legend

Returns:
  Geometry for the aligned legend

Definition at line 708 of file qwt_plot_layout.cpp.

Referenced by activate().

void QwtPlotLayout::expandLineBreaks | ( | int | options,
|  | const QRect & | rect,
|  | int & | dimTitle,
|  | int | dimAxis[QwtPlot::axisCnt] |
| ) |  |  | const`[protected]`

Expand all line breaks in text labels, and calculate the height of their widgets in orientation of the text.

Parameters:

  | options | Options how to layout the legend
  | rect | Bounding rect for title, axes and canvas.
  | dimTitle | Expanded height of the title widget
  | dimAxis | Expanded heights of the axis in axis orientation.

Definition at line 743 of file qwt_plot_layout.cpp.

Referenced by activate().

void QwtPlotLayout::alignScales | ( | int | options,
|  | QRect & | canvasRect,
|  | QRect | scaleRect[QwtPlot::axisCnt] |
| ) |  |  | const`[protected]`

Align the ticks of the axis to the canvas borders using the empty corners.

Definition at line 868 of file qwt_plot_layout.cpp.

References scaleRect().

Referenced by activate().