QwtPlotLayout Class Reference

Layout engine for QwtPlot. More...

#include <qwt_plot_layout.h>

List of all members.

Public Types

enum  Options {
  AlignScales = 1,
  IgnoreScrollbars = 2,
  IgnoreFrames = 4,
  IgnoreMargin = 8,
  IgnoreLegend = 16
}

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 QRectF &rect, int options=0)
virtual void invalidate ()
const QRectF & titleRect () const
const QRectF & legendRect () const
const QRectF & scaleRect (int axis) const
const QRectF & canvasRect () const

Protected Member Functions

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

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.


Member Enumeration Documentation

Options to configure the plot layout engine

  • AlignScales
    Unused
  • IgnoreScrollbars
    Ignore the dimension of the scrollbars. There are no scrollbars, when the plot is rendered to a paint device (QwtPlot::print() ).
  • IgnoreFrames
    Ignore all frames. QwtPlot::print() doesn't paint them.
  • IgnoreMargin
    Ignore the margin().
  • IgnoreLegend
    Ignore the legend.
See also:
activate()

Constructor & Destructor Documentation

QwtPlotLayout::QwtPlotLayout (  )  [explicit]

Constructor.

QwtPlotLayout::~QwtPlotLayout (  )  [virtual]

Destructor.


Member Function Documentation

void QwtPlotLayout::activate ( const QwtPlot plot,
const QRectF &  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(), Options, titleRect(), legendRect(), scaleRect(), canvasRect()
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.
QRectF QwtPlotLayout::alignLegend ( const QRectF &  canvasRect,
const QRectF &  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
void QwtPlotLayout::alignScales ( int  options,
QRectF &  canvasRect,
QRectF  scaleRect[QwtPlot::axisCnt] 
) const [protected]

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

See also:
Options
int QwtPlotLayout::canvasMargin ( int  axis  )  const
Returns:
Margin around the scale tick borders
See also:
setCanvasMargin()
const QRectF & QwtPlotLayout::canvasRect (  )  const
Returns:
Geometry for the canvas
See also:
activate(), invalidate()
void QwtPlotLayout::expandLineBreaks ( int  options,
const QRectF &  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.
See also:
Options
void QwtPlotLayout::invalidate (  )  [virtual]

Invalidate the geometry of all components.

See also:
activate()
QRectF QwtPlotLayout::layoutLegend ( int  options,
const QRectF &  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
See also:
Options
QwtPlot::LegendPosition QwtPlotLayout::legendPosition (  )  const
Returns:
Position of the legend
See also:
setLegendPosition(), QwtPlot::setLegendPosition(), QwtPlot::legendPosition()
double QwtPlotLayout::legendRatio (  )  const
Returns:
The relative size of the legend in the plot.
See also:
setLegendPosition()
const QRectF & QwtPlotLayout::legendRect (  )  const
Returns:
Geometry for the legend
See also:
activate(), invalidate()
int QwtPlotLayout::margin (  )  const
Returns:
margin
See also:
setMargin(), spacing(), QwtPlot::margin()
QSize QwtPlotLayout::minimumSizeHint ( const QwtPlot plot  )  const [virtual]

Return a minimum size hint.

See also:
QwtPlot::minimumSizeHint()
const QRectF & QwtPlotLayout::scaleRect ( int  axis  )  const
Parameters:
axis Axis index
Returns:
Geometry for the scale
See also:
activate(), invalidate()
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
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
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()
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()
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.
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()
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()
int QwtPlotLayout::spacing (  )  const
Returns:
spacing
See also:
margin(), setSpacing()
const QRectF & QwtPlotLayout::titleRect (  )  const
Returns:
Geometry for the title
See also:
activate(), invalidate()
Generated on Sun Nov 21 12:01:44 2010 for Qwt User's Guide by  doxygen 1.6.3