00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef QWT_NULL_PAINT_DEVICE_H
00011 #define QWT_NULL_PAINT_DEVICE_H 1
00012
00013 #include "qwt_global.h"
00014 #include <qpaintdevice.h>
00015 #include <qpaintengine.h>
00016
00031 class QWT_EXPORT QwtNullPaintDevice: public QPaintDevice
00032 {
00033 public:
00034 QwtNullPaintDevice( QPaintEngine::PaintEngineFeatures );
00035 QwtNullPaintDevice( const QSize &size,
00036 QPaintEngine::PaintEngineFeatures );
00037
00038 virtual ~QwtNullPaintDevice();
00039
00040 void setSize( const QSize &);
00041 QSize size() const;
00042
00043 virtual QPaintEngine *paintEngine() const;
00044 virtual int metric( PaintDeviceMetric metric ) const;
00045
00046 virtual void drawRects(const QRect *, int );
00047 virtual void drawRects(const QRectF *, int );
00048
00049 virtual void drawLines(const QLine *, int );
00050 virtual void drawLines(const QLineF *, int );
00051
00052 virtual void drawEllipse(const QRectF &);
00053 virtual void drawEllipse(const QRect &);
00054
00055 virtual void drawPath(const QPainterPath &);
00056
00057 virtual void drawPoints(const QPointF *, int );
00058 virtual void drawPoints(const QPoint *, int );
00059
00060 virtual void drawPolygon(
00061 const QPointF *, int , QPaintEngine::PolygonDrawMode );
00062
00063 virtual void drawPolygon(
00064 const QPoint *, int , QPaintEngine::PolygonDrawMode );
00065
00066 virtual void drawPixmap(const QRectF &,
00067 const QPixmap &, const QRectF &);
00068
00069 virtual void drawTextItem(const QPointF &, const QTextItem &);
00070
00071 virtual void drawTiledPixmap(const QRectF &,
00072 const QPixmap &, const QPointF &s);
00073
00074 virtual void drawImage(const QRectF &,
00075 const QImage &, const QRectF &, Qt::ImageConversionFlags );
00076
00077 virtual void updateState( const QPaintEngineState &state );
00078
00079 private:
00080 void init( QPaintEngine::PaintEngineFeatures );
00081
00082 class PaintEngine;
00083 PaintEngine *d_engine;
00084
00085 class PrivateData;
00086 PrivateData *d_data;
00087 };
00088
00089 #endif