QwtPaintBuffer Class Reference

#include <qwt_paint_buffer.h>

Collaboration diagram for QwtPaintBuffer:

Collaboration graph
QPainterQPixmapQPaintDeviceQRect
[legend]
List of all members.

Detailed Description

Paint buffer for Qwt widgets.

QwtPaintBuffer offers a simple way to en/disable double buffering. Double buffering is enabled as default and in general there will be no reason to change this.

Definition at line 38 of file qwt_paint_buffer.h.

Public Member Functions

void close ()
const QPaintDevicedevice ()
void open (QPaintDevice *, const QRect &, QPainter *painter=NULL)
QPainterpainter ()
 QwtPaintBuffer (QPaintDevice *, const QRect &, QPainter *painter=NULL)
 QwtPaintBuffer ()
 Default constructor.
virtual ~QwtPaintBuffer ()

Static Public Member Functions

static bool isEnabled ()
static void setEnabled (bool enable)

Protected Member Functions

void flush ()

Private Attributes

QPaintDeviced_device
QPainterd_devicePainter
QPainterd_painter
QPixmap d_pixBuffer
QRect d_rect

Static Private Attributes

static bool d_enabled = TRUE


Constructor & Destructor Documentation

QwtPaintBuffer (  ) 

Default constructor.

Definition at line 42 of file qwt_paint_buffer.cpp.

QwtPaintBuffer ( QPaintDevice device,
const QRect rect,
QPainter painter = NULL 
)

Create an open paint buffer

Parameters:
device Device to paint on
rect Rect to paint on
painter Painter to paint on device. In case of 0 QwtPaintBuffer uses an internal painter
See also:
QwtPaintBuffer::open()

Definition at line 59 of file qwt_paint_buffer.cpp.

References QwtPaintBuffer::device(), QwtPaintBuffer::open(), and QwtPaintBuffer::painter().

~QwtPaintBuffer (  )  [virtual]

Closes the buffer

See also:
QwtPaintBuffer::close()

Definition at line 72 of file qwt_paint_buffer.cpp.

References QwtPaintBuffer::close().


Member Function Documentation

void close (  ) 

Flush the internal pixmap buffer to the device and close the buffer.

Definition at line 209 of file qwt_paint_buffer.cpp.

References QwtPaintBuffer::d_device, QwtPaintBuffer::d_devicePainter, QwtPaintBuffer::d_painter, QwtPaintBuffer::d_pixBuffer, QPainter::end(), QwtPaintBuffer::flush(), QPainter::isActive(), and QPixmap::isNull().

Referenced by QwtPaintBuffer::open(), and QwtPaintBuffer::~QwtPaintBuffer().

const QPaintDevice * device (  ) 

Returns:
Device to paint on

Definition at line 91 of file qwt_paint_buffer.cpp.

References QwtPaintBuffer::d_device.

Referenced by QwtPaintBuffer::flush(), QwtPaintBuffer::open(), and QwtPaintBuffer::QwtPaintBuffer().

void flush (  )  [protected]

Flush the internal pixmap buffer to the device.

Definition at line 176 of file qwt_paint_buffer.cpp.

References QwtPaintBuffer::d_device, QwtPaintBuffer::d_devicePainter, QwtPaintBuffer::d_enabled, QwtPaintBuffer::d_pixBuffer, QwtPaintBuffer::d_rect, QwtPaintBuffer::device(), QPainter::drawPixmap(), QPaintDevice::isExtDev(), QRect::isValid(), QRect::topLeft(), and num_util::type().

Referenced by QwtPaintBuffer::close().

bool isEnabled (  )  [static]

Returns:
TRUE if double buffering is enabled, FALSE otherwise.

Definition at line 109 of file qwt_paint_buffer.cpp.

References QwtPaintBuffer::d_enabled.

Referenced by QwtPaintBuffer::open().

void open ( QPaintDevice device,
const QRect rect,
QPainter painter = NULL 
)

Open the buffer

Parameters:
device Device to paint on
rect Rect to paint on
painter Painter to paint on device. In case of 0 QwtPaintBuffer uses an internal painter

Definition at line 122 of file qwt_paint_buffer.cpp.

References QPainter::begin(), QwtPaintBuffer::close(), QwtPaintBuffer::d_device, QwtPaintBuffer::d_devicePainter, QwtPaintBuffer::d_painter, QwtPaintBuffer::d_pixBuffer, QwtPaintBuffer::d_rect, QwtPaintBuffer::device(), QPainter::eraseRect(), QPixmap::fill(), QwtPaintBuffer::isEnabled(), QRect::isValid(), QwtPaintBuffer::painter(), QPixmap::resize(), QRect::size(), QRect::topLeft(), QPainter::translate(), QRect::x(), and QRect::y().

Referenced by QwtPaintBuffer::QwtPaintBuffer().

QPainter * painter (  ) 

Returns:
Depending on isEnabled() the painter connected to an internal pixmap buffer otherwise the painter connected to the device.

Definition at line 83 of file qwt_paint_buffer.cpp.

References QwtPaintBuffer::d_painter.

Referenced by QwtPaintBuffer::open(), and QwtPaintBuffer::QwtPaintBuffer().

void setEnabled ( bool  enable  )  [static]

Enable/Disable double buffering. Please note that this is a global switch for all QwtPaintBuffers, but won't change opened buffers.

Definition at line 101 of file qwt_paint_buffer.cpp.

References QwtPaintBuffer::d_enabled.


Member Data Documentation

QPaintDevice* d_device [private]

Definition at line 62 of file qwt_paint_buffer.h.

Referenced by QwtPaintBuffer::close(), QwtPaintBuffer::device(), QwtPaintBuffer::flush(), and QwtPaintBuffer::open().

QPainter* d_devicePainter [private]

Definition at line 64 of file qwt_paint_buffer.h.

Referenced by QwtPaintBuffer::close(), QwtPaintBuffer::flush(), and QwtPaintBuffer::open().

bool d_enabled = TRUE [static, private]

Definition at line 66 of file qwt_paint_buffer.h.

Referenced by QwtPaintBuffer::flush(), QwtPaintBuffer::isEnabled(), and QwtPaintBuffer::setEnabled().

QPainter* d_painter [private]

Definition at line 63 of file qwt_paint_buffer.h.

Referenced by QwtPaintBuffer::close(), QwtPaintBuffer::open(), and QwtPaintBuffer::painter().

QPixmap d_pixBuffer [private]

Definition at line 59 of file qwt_paint_buffer.h.

Referenced by QwtPaintBuffer::close(), QwtPaintBuffer::flush(), and QwtPaintBuffer::open().

QRect d_rect [private]

Definition at line 60 of file qwt_paint_buffer.h.

Referenced by QwtPaintBuffer::flush(), and QwtPaintBuffer::open().


The documentation for this class was generated from the following files:
Generated for HippoDraw Class Library by doxygen