QwtPlotCanvas − Canvas of a QwtPlot.
#include <qwt_plot_canvas.h>
Inherits QFrame, and QwtPlotAbstractCanvas.
enum
PaintAttribute { BackingStore = 1,
Opaque = 2, HackStyledBackground = 4,
ImmediatePaint = 8 }
Paint attributes.
typedef QFlags< PaintAttribute >
PaintAttributes
Public Types inherited from QwtPlotAbstractCanvas
enum FocusIndicator {
NoFocusIndicator, CanvasFocusIndicator,
ItemFocusIndicator }
Focus indicator The default setting is NoFocusIndicator.
void replot ()
QwtPlotCanvas
(QwtPlot *=NULL)
Constructor.
virtual ˜QwtPlotCanvas ()
Destructor.
void setPaintAttribute (PaintAttribute, bool
on=true)
Changing the paint attributes.
bool testPaintAttribute (PaintAttribute) const
const QPixmap * backingStore () const
Q_INVOKABLE void invalidateBackingStore ()
Invalidate the internal backing store.
virtual bool event (QEvent *) override
Q_INVOKABLE QPainterPath borderPath (const QRect
&) const
Public Member Functions inherited from QwtPlotAbstractCanvas
QwtPlotAbstractCanvas
(QWidget *canvasWidget)
Constructor.
virtual ˜QwtPlotAbstractCanvas ()
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
virtual void
paintEvent (QPaintEvent *) override
virtual void resizeEvent (QResizeEvent *) override
virtual void drawBorder (QPainter *) override
Protected Member Functions inherited from QwtPlotAbstractCanvas
QWidget * canvasWidget
()
const QWidget * canvasWidget () const
virtual void drawFocusIndicator (QPainter *)
virtual void drawBackground (QPainter *)
Helper function for the derived plot canvas.
void fillBackground (QPainter *)
Helper function for the derived plot canvas.
void drawCanvas (QPainter *)
Draw the plot to the canvas.
void drawStyled (QPainter *, bool)
Helper function for the derived plot canvas.
void drawUnstyled (QPainter *)
Helper function for the derived plot canvas.
QPainterPath canvasBorderPath (const QRect &rect)
const
void updateStyleSheetInfo ()
Update the cached information about the current style
sheet.
Canvas of a QwtPlot.
Canvas is the widget where all plot items are displayed
See also
QwtPlot::setCanvas(), QwtPlotGLCanvas, QwtPlotOpenGLCanvas
Definition at line 29 of file qwt_plot_canvas.h.
An ORed combination of PaintAttribute values.
Definition at line 102 of file qwt_plot_canvas.h.
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()
Definition at line 44 of file qwt_plot_canvas.h.
Constructor.
Parameters
plot Parent plot widget
See also
QwtPlot::setCanvas()
Definition at line 41 of file qwt_plot_canvas.cpp.
Destructor.
Definition at line 57 of file qwt_plot_canvas.cpp.
Returns
Backing store, might be null
Definition at line 133 of file qwt_plot_canvas.cpp.
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
Definition at line 320 of file qwt_plot_canvas.cpp.
Draw the border of the plot canvas
Parameters
painter Painter
See also
setBorderRadius()
Reimplemented from QwtPlotAbstractCanvas.
Definition at line 276 of file qwt_plot_canvas.cpp.
Qt event handler for QEvent::PolishRequest and QEvent::StyleChange
Parameters
event Qt Event
Returns
See QFrame::event()
Definition at line 151 of file qwt_plot_canvas.cpp.
Invalidate the internal backing store.
Definition at line 139 of file qwt_plot_canvas.cpp.
Paint event
Parameters
event Paint event
Definition at line 178 of file qwt_plot_canvas.cpp.
Invalidate the paint cache and repaint the canvas
See also
invalidatePaintCache()
Definition at line 301 of file qwt_plot_canvas.cpp.
Resize event
Parameters
event Resize event
Definition at line 291 of file qwt_plot_canvas.cpp.
Changing the paint attributes.
Parameters
attribute Paint
attribute
on On/Off
See also
testPaintAttribute(), backingStore()
Definition at line 70 of file qwt_plot_canvas.cpp.
Test whether a paint attribute is enabled
Parameters
attribute Paint attribute
Returns
true, when attribute is enabled
See also
setPaintAttribute()
Definition at line 127 of file qwt_plot_canvas.cpp.
Generated automatically by Doxygen for Qwt User’s Guide from the source code.