#include <qwindowdefs.h>
#include <qwidget.h>
#include <qrect.h>
#include <qpainter.h>
#include <qpalette.h>
#include <qpaintdevice.h>
#include <qpixmap.h>
#include <qstyle.h>
#include <qsimplerichtext.h>
#include "qwt_math.h"
#include "qwt_clipper.h"
#include "qwt_color_map.h"
#include "qwt_scale_map.h"
#include "qwt_painter.h"
Go to the source code of this file.
Functions | |
static bool | isClippingNeeded (const QPainter *painter, QRect &clipRect) |
static bool isClippingNeeded | ( | const QPainter * | painter, |
QRect & | clipRect | ||
) | [inline, static] |
Definition at line 47 of file qwt_painter.cpp.
References QwtPainter::deviceClipping(), and QwtPainter::deviceClipRect().
Referenced by QwtPainter::drawEllipse(), QwtPainter::drawLine(), QwtPainter::drawPie(), QwtPainter::drawPoint(), QwtPainter::drawPolygon(), QwtPainter::drawPolyline(), QwtPainter::drawRect(), QwtPainter::drawText(), and QwtPainter::fillRect().
{ bool doClipping = false; #if QT_VERSION >= 0x040000 const QPaintEngine *pe = painter->paintEngine(); if ( pe && pe->type() == QPaintEngine::SVG ) #else if ( painter->device()->devType() == QInternal::Picture ) #endif { // The SVG paint engine ignores any clipping, if ( painter->hasClipping() ) { doClipping = true; clipRect = painter->clipRegion().boundingRect(); } } if ( QwtPainter::deviceClipping() ) { if (painter->device()->devType() == QInternal::Widget || painter->device()->devType() == QInternal::Pixmap ) { if ( doClipping ) { clipRect &= QwtPainter::deviceClipRect(); } else { doClipping = true; clipRect = QwtPainter::deviceClipRect(); } } } return doClipping; }