Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

QwtPaintBuffer Class Reference

#include <qwt_paint_buffer.h>

Collaboration diagram for QwtPaintBuffer:

Collaboration graph
[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 36 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::QwtPaintBuffer  ) 
 

Default constructor.

Definition at line 38 of file qwt_paint_buffer.cpp.

QwtPaintBuffer::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 55 of file qwt_paint_buffer.cpp.

References open().

QwtPaintBuffer::~QwtPaintBuffer  )  [virtual]
 

Closes the buffer

See also:
QwtPaintBuffer::close()

Definition at line 68 of file qwt_paint_buffer.cpp.

References close().


Member Function Documentation

void QwtPaintBuffer::close  ) 
 

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

Definition at line 199 of file qwt_paint_buffer.cpp.

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

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

const QPaintDevice * QwtPaintBuffer::device  ) 
 

Returns:
Device to paint on

Definition at line 87 of file qwt_paint_buffer.cpp.

References d_device.

Referenced by flush().

void QwtPaintBuffer::flush  )  [protected]
 

Flush the internal pixmap buffer to the device.

Definition at line 172 of file qwt_paint_buffer.cpp.

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

Referenced by close().

bool QwtPaintBuffer::isEnabled  )  [static]
 

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

Definition at line 105 of file qwt_paint_buffer.cpp.

References d_enabled.

Referenced by open().

void QwtPaintBuffer::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 118 of file qwt_paint_buffer.cpp.

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

Referenced by QwtPaintBuffer().

QPainter * QwtPaintBuffer::painter  ) 
 

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

Definition at line 79 of file qwt_paint_buffer.cpp.

References d_painter.

Referenced by QtViewWidget::paintEvent().

void QwtPaintBuffer::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 97 of file qwt_paint_buffer.cpp.

References d_enabled.


Member Data Documentation

QPaintDevice* QwtPaintBuffer::d_device [private]
 

Definition at line 60 of file qwt_paint_buffer.h.

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

QPainter* QwtPaintBuffer::d_devicePainter [private]
 

Definition at line 62 of file qwt_paint_buffer.h.

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

bool QwtPaintBuffer::d_enabled = TRUE [static, private]
 

Definition at line 32 of file qwt_paint_buffer.cpp.

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

QPainter* QwtPaintBuffer::d_painter [private]
 

Definition at line 61 of file qwt_paint_buffer.h.

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

QPixmap QwtPaintBuffer::d_pixBuffer [private]
 

Definition at line 57 of file qwt_paint_buffer.h.

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

QRect QwtPaintBuffer::d_rect [private]
 

Definition at line 58 of file qwt_paint_buffer.h.

Referenced by flush(), and open().


The documentation for this class was generated from the following files:
Generated for HippoDraw-1.14.8.5 by doxygen 1.4.3