Qwt User's Guide  6.1-rc3
 All Classes Functions Variables Typedefs Enumerations Enumerator Pages
Static Public Member Functions | List of all members
QwtPainter Class Reference

A collection of QPainter workarounds. More...

#include <qwt_painter.h>

Static Public Member Functions

static void setPolylineSplitting (bool)
 En/Disable line splitting for the raster paint engine. More...
 
static bool polylineSplitting ()
 
static void setRoundingAlignment (bool)
 
static bool roundingAlignment ()
 
static bool roundingAlignment (QPainter *)
 
static void drawText (QPainter *, double x, double y, const QString &)
 Wrapper for QPainter::drawText()
 
static void drawText (QPainter *, const QPointF &, const QString &)
 Wrapper for QPainter::drawText()
 
static void drawText (QPainter *, double x, double y, double w, double h, int flags, const QString &)
 Wrapper for QPainter::drawText()
 
static void drawText (QPainter *, const QRectF &, int flags, const QString &)
 Wrapper for QPainter::drawText()
 
static void drawSimpleRichText (QPainter *, const QRectF &, int flags, const QTextDocument &)
 
static void drawRect (QPainter *, double x, double y, double w, double h)
 Wrapper for QPainter::drawRect()
 
static void drawRect (QPainter *, const QRectF &rect)
 Wrapper for QPainter::drawRect()
 
static void fillRect (QPainter *, const QRectF &, const QBrush &)
 Wrapper for QPainter::fillRect()
 
static void drawEllipse (QPainter *, const QRectF &)
 Wrapper for QPainter::drawEllipse()
 
static void drawPie (QPainter *, const QRectF &r, int a, int alen)
 Wrapper for QPainter::drawPie()
 
static void drawLine (QPainter *, double x1, double y1, double x2, double y2)
 Wrapper for QPainter::drawLine()
 
static void drawLine (QPainter *, const QPointF &p1, const QPointF &p2)
 Wrapper for QPainter::drawLine()
 
static void drawLine (QPainter *, const QLineF &)
 Wrapper for QPainter::drawLine()
 
static void drawPolygon (QPainter *, const QPolygonF &)
 Wrapper for QPainter::drawPolygon()
 
static void drawPolyline (QPainter *, const QPolygonF &)
 Wrapper for QPainter::drawPolyline()
 
static void drawPolyline (QPainter *, const QPointF *, int pointCount)
 Wrapper for QPainter::drawPolyline()
 
static void drawPolygon (QPainter *, const QPolygon &)
 Wrapper for QPainter::drawPolygon()
 
static void drawPolyline (QPainter *, const QPolygon &)
 Wrapper for QPainter::drawPolyline()
 
static void drawPolyline (QPainter *, const QPoint *, int pointCount)
 Wrapper for QPainter::drawPolyline()
 
static void drawPoint (QPainter *, const QPoint &)
 Wrapper for QPainter::drawPoint()
 
static void drawPoints (QPainter *, const QPolygon &)
 Wrapper for QPainter::drawPoints()
 
static void drawPoints (QPainter *, const QPoint *, int pointCount)
 Wrapper for QPainter::drawPoints()
 
static void drawPoint (QPainter *, double x, double y)
 Wrapper for QPainter::drawPoint()
 
static void drawPoint (QPainter *, const QPointF &)
 Wrapper for QPainter::drawPoint()
 
static void drawPoints (QPainter *, const QPolygonF &)
 Wrapper for QPainter::drawPoints()
 
static void drawPoints (QPainter *, const QPointF *, int pointCount)
 Wrapper for QPainter::drawPoints()
 
static void drawPath (QPainter *, const QPainterPath &)
 Wrapper for QPainter::drawPath()
 
static void drawImage (QPainter *, const QRectF &, const QImage &)
 Wrapper for QPainter::drawImage()
 
static void drawPixmap (QPainter *, const QRectF &, const QPixmap &)
 Wrapper for QPainter::drawPixmap()
 
static void drawRoundFrame (QPainter *, const QRectF &, const QPalette &, int lineWidth, int frameStyle)
 
static void drawRoundedFrame (QPainter *, const QRectF &, double xRadius, double yRadius, const QPalette &, int lineWidth, int frameStyle)
 
static void drawFrame (QPainter *, const QRectF &rect, const QPalette &palette, QPalette::ColorRole foregroundRole, int lineWidth, int midLineWidth, int frameStyle)
 
static void drawFocusRect (QPainter *, const QWidget *)
 Draw a focus rectangle on a widget using its style.
 
static void drawFocusRect (QPainter *, const QWidget *, const QRect &)
 Draw a focus rectangle on a widget using its style.
 
static void drawColorBar (QPainter *painter, const QwtColorMap &, const QwtInterval &, const QwtScaleMap &, Qt::Orientation, const QRectF &)
 
static bool isAligning (QPainter *painter)
 
static bool isX11GraphicsSystem ()
 
static void fillPixmap (const QWidget *, QPixmap &, const QPoint &offset=QPoint())
 
static void drawBackgound (QPainter *painter, const QRectF &rect, const QWidget *widget)
 
static QPixmap backingStore (QWidget *, const QSize &)
 

Detailed Description

A collection of QPainter workarounds.

Member Function Documentation

QPixmap QwtPainter::backingStore ( QWidget *  widget,
const QSize &  size 
)
static
Returns
A pixmap that can be used as backing store
Parameters
widgetWidget, for which the backinstore is intended
sizeSize of the pixmap
void QwtPainter::drawBackgound ( QPainter *  painter,
const QRectF &  rect,
const QWidget *  widget 
)
static

Fill rect with the background of a widget

Parameters
painterPainter
rectRectangle to be filled
widgetWidget
See Also
QStyle::PE_Widget, QWidget::backgroundRole()
void QwtPainter::drawColorBar ( QPainter *  painter,
const QwtColorMap colorMap,
const QwtInterval interval,
const QwtScaleMap scaleMap,
Qt::Orientation  orientation,
const QRectF &  rect 
)
static

Draw a color bar into a rectangle

Parameters
painterPainter
colorMapColor map
intervalValue range
scaleMapScale map
orientationOrientation
rectTraget rectangle
void QwtPainter::drawFrame ( QPainter *  painter,
const QRectF &  rect,
const QPalette &  palette,
QPalette::ColorRole  foregroundRole,
int  frameWidth,
int  midLineWidth,
int  frameStyle 
)
static

Draw a rectangular frame

Parameters
painterPainter
rectFrame rectangle
palettePalette
foregroundRoleForeground role used for QFrame::Plain
frameWidthFrame width
midLineWidthUsed for QFrame::Box
frameStylebitwise OR´ed value of QFrame::Shape and QFrame::Shadow
void QwtPainter::drawRoundedFrame ( QPainter *  painter,
const QRectF &  rect,
double  xRadius,
double  yRadius,
const QPalette &  palette,
int  lineWidth,
int  frameStyle 
)
static

Draw a rectangular frame with rounded borders

Parameters
painterPainter
rectFrame rectangle
xRadiusx-radius of the ellipses defining the corners
yRadiusy-radius of the ellipses defining the corners
paletteQPalette::WindowText is used for plain borders QPalette::Dark and QPalette::Light for raised or sunken borders
lineWidthLine width
frameStylebitwise OR´ed value of QFrame::Shape and QFrame::Shadow
void QwtPainter::drawRoundFrame ( QPainter *  painter,
const QRectF &  rect,
const QPalette &  palette,
int  lineWidth,
int  frameStyle 
)
static

Draw a round frame

Parameters
painterPainter
rectFrame rectangle
paletteQPalette::WindowText is used for plain borders QPalette::Dark and QPalette::Light for raised or sunken borders
lineWidthLine width
frameStylebitwise OR´ed value of QFrame::Shape and QFrame::Shadow
void QwtPainter::drawSimpleRichText ( QPainter *  painter,
const QRectF &  rect,
int  flags,
const QTextDocument &  text 
)
static

Draw a text document into a rectangle

Parameters
painterPainter
rectTraget rectangle
flagsAlignments/Text flags, see QPainter::drawText()
textText document
void QwtPainter::fillPixmap ( const QWidget *  widget,
QPixmap &  pixmap,
const QPoint &  offset = QPoint() 
)
static

Fill a pixmap with the content of a widget

In Qt >= 5.0 QPixmap::fill() is a nop, in Qt 4.x it is buggy for backgrounds with gradients. Thus fillPixmap() offers an alternative implementation.

Parameters
widgetWidget
pixmapPixmap to be filled
offsetOffset
See Also
QPixmap::fill()
bool QwtPainter::isAligning ( QPainter *  painter)
static

Check if the painter is using a paint engine, that aligns coordinates to integers. Today these are all paint engines beside QPaintEngine::Pdf and QPaintEngine::SVG.

If we have an integer based paint engine it is also checked if the painter has a transformation matrix, that rotates or scales.

Parameters
painterPainter
Returns
true, when the painter is aligning
See Also
setRoundingAlignment()
bool QwtPainter::isX11GraphicsSystem ( )
static

Check is the application is running with the X11 graphics system that has some special capabilities that can be used for incremental painting to a widget.

Returns
True, when the graphics system is X11
bool QwtPainter::polylineSplitting ( )
inlinestatic

Returns whether line splitting for the raster paint engine is enabled.

See Also
setPolylineSplitting()
bool QwtPainter::roundingAlignment ( )
inlinestatic

Returns whether coordinates should be rounded, before they are painted to a paint engine that floors to integer values. For other paint engines this ( PDF, SVG ), this flag has no effect.

See Also
setRoundingAlignment(), isAligning()
bool QwtPainter::roundingAlignment ( QPainter *  painter)
inlinestatic
Returns
roundingAlignment() && isAligning(painter);
Parameters
painterPainter
void QwtPainter::setPolylineSplitting ( bool  enable)
static

En/Disable line splitting for the raster paint engine.

In some Qt versions the raster paint engine paints polylines of many points much faster when they are split in smaller chunks.

See Also
polylineSplitting()
void QwtPainter::setRoundingAlignment ( bool  enable)
static

Enable whether coordinates should be rounded, before they are painted to a paint engine that floors to integer values. For other paint engines this ( PDF, SVG ), this flag has no effect. QwtPainter stores this flag only, the rounding itself is done in the painting code ( f.e the plot items ).

The default setting is true.

See Also
roundingAlignment(), isAligning()