QwtPlotCanvas(3)

NAME
QwtPlotCanvas - Canvas of a QwtPlot.

SYNOPSIS

#include <qwt_plot_canvas.h>

Inherits QFrame.

  Public Types
enum PaintAttribute { BackingStore = 1, Opaque = 2, HackStyledBackground = 4, ImmediatePaint = 8 }
Paint attributes.
enum FocusIndicator { NoFocusIndicator, CanvasFocusIndicator, ItemFocusIndicator }
Focus indicator The default setting is NoFocusIndicator.
typedef QFlags< PaintAttribute > PaintAttributes
Paint attributes.

  Public Slots
void replot ()

  Public Member Functions
QwtPlotCanvas (QwtPlot *=NULL)
Constructor.
virtual ~QwtPlotCanvas ()
Destructor.
QwtPlot * plot ()
Return parent plot widget.
const QwtPlot * plot () const
Return parent plot widget.
void setFocusIndicator (FocusIndicator)
FocusIndicator focusIndicator () const
void setBorderRadius (double)
double borderRadius () const
void setPaintAttribute (PaintAttribute, bool on=true)
Changing the paint attributes.
bool testPaintAttribute (PaintAttribute) const
const QPixmap * backingStore () const
void invalidateBackingStore ()
Invalidate the internal backing store.
virtual bool event (QEvent *)
Q_INVOKABLE QPainterPath borderPath (const QRect &) const

  Protected Member Functions
virtual void paintEvent (QPaintEvent *)
virtual void resizeEvent (QResizeEvent *)
virtual void drawFocusIndicator (QPainter *)
virtual void drawBorder (QPainter *)
void updateStyleSheetInfo ()
Update the cached information about the current style sheet.

Detailed Description

Canvas of a QwtPlot. Canvas is the widget where all plot items are displayed

See also
    QwtPlot::setCanvas(), QwtPlotGLCanvas

Member Enumeration Documentation

  enum QwtPlotCanvas::FocusIndicator

Focus indicator The default setting is NoFocusIndicator.

See also
    setFocusIndicator(), focusIndicator(), drawFocusIndicator()

Enumerator

NoFocusIndicator
    Don't paint a focus indicator.

CanvasFocusIndicator
    The focus is related to the complete canvas. Paint the focus indicator using drawFocusIndicator()

ItemFocusIndicator
    The focus is related to an item (curve, point, ...) on the canvas. It is up to the application to display a focus indication using f.e. highlighting.

  enum QwtPlotCanvas::PaintAttribute

Paint attributes. The default setting enables BackingStore and Opaque.

See also
    setPaintAttribute(), testPaintAttribute()

Enumerator

BackingStore
    Paint double buffered reusing the content of the pixmap buffer when possible. Using a backing store might improve the performance significantly, when working with widget overlays ( like rubber bands ). Disabling the cache might improve the performance for incremental paints (using QwtPlotDirectPainter ).

See also
    backingStore(), invalidateBackingStore()

Opaque
    Try to fill the complete contents rectangle of the plot canvas. When using styled backgrounds Qt assumes, that the canvas doesn't fill its area completely ( f.e because of rounded borders ) and fills the area below the canvas. When this is done with gradients it might result in a serious performance bottleneck - depending on the size.

When the Opaque attribute is enabled the canvas tries to identify the gaps with some heuristics and to fill those only.

Warning
    Will not work for semitransparent backgrounds

HackStyledBackground
    Try to improve painting of styled backgrounds. QwtPlotCanvas supports the box model attributes for customizing the layout with style sheets. Unfortunately the design of Qt style sheets has no concept how to handle backgrounds with rounded corners - beside of padding.

When HackStyledBackground is enabled the plot canvas tries to separate the background from the background border by reverse engineering to paint the background before and the border after the plot items. In this order the border gets perfectly antialiased and you can avoid some pixel artifacts in the corners.

ImmediatePaint
    When ImmediatePaint is set replot() calls repaint() instead of update().

See also
    replot(), QWidget::repaint(), QWidget::update()

Constructor & Destructor Documentation

  QwtPlotCanvas::QwtPlotCanvas (QwtPlot * plot = NULL) [explicit]

Constructor.

Parameters
    plot Parent plot widget

See also
    QwtPlot::setCanvas()

Member Function Documentation

  const QPixmap * QwtPlotCanvas::backingStore () const

Returns
    Backing store, might be null

  QPainterPath QwtPlotCanvas::borderPath (const QRect & rect) const
Calculate the painter path for a styled or rounded border

When the canvas has no styled background or rounded borders the painter path is empty.

Parameters
    rect Bounding rectangle of the canvas

Returns
    Painter path, that can be used for clipping

  double QwtPlotCanvas::borderRadius () const

Returns
    Radius for the corners of the border frame

See also
    setBorderRadius()

  void QwtPlotCanvas::drawBorder (QPainter * painter) [protected], [virtual]
Draw the border of the plot canvas

Parameters
    painter Painter

See also
    setBorderRadius()

  void QwtPlotCanvas::drawFocusIndicator (QPainter * painter) [protected], [virtual]
Draw the focus indication

Parameters
    painter Painter

  bool QwtPlotCanvas::event (QEvent * event) [virtual]
Qt event handler for QEvent::PolishRequest and QEvent::StyleChange

Parameters
    event Qt Event

Returns
    See QFrame::event()

  QwtPlotCanvas::FocusIndicator QwtPlotCanvas::focusIndicator () const

Returns
    Focus indicator

See also
    FocusIndicator, setFocusIndicator()

  void QwtPlotCanvas::paintEvent (QPaintEvent * event) [protected], [virtual]
Paint event

Parameters
    event Paint event

  void QwtPlotCanvas::replot () [slot]
Invalidate the paint cache and repaint the canvas

See also
    invalidatePaintCache()

  void QwtPlotCanvas::resizeEvent (QResizeEvent * event) [protected], [virtual]
Resize event

Parameters
    event Resize event

  void QwtPlotCanvas::setBorderRadius (double radius)
Set the radius for the corners of the border frame

Parameters
    radius Radius of a rounded corner

See also
    borderRadius()

  void QwtPlotCanvas::setFocusIndicator (FocusIndicator focusIndicator)
Set the focus indicator

See also
    FocusIndicator, focusIndicator()

  void QwtPlotCanvas::setPaintAttribute (PaintAttribute attribute, bool on = true)

Changing the paint attributes.

Parameters
    attribute Paint attribute
    on On/Off

See also
    testPaintAttribute(), backingStore()

  bool QwtPlotCanvas::testPaintAttribute (PaintAttribute attribute) const
Test whether a paint attribute is enabled

Parameters
    attribute Paint attribute

Returns
    true, when attribute is enabled

See also
    setPaintAttribute()

Author

Generated automatically by Doxygen for Qwt User's Guide from the source code.