Qwt User's Guide svn
qwt_null_paintdevice.h
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
00002  * Qwt Widget Library
00003  * Copyright (C) 1997   Josef Wilgen
00004  * Copyright (C) 2002   Uwe Rathmann
00005  *
00006  * This library is free software; you can redistribute it and/or
00007  * modify it under the terms of the Qwt License, Version 1.0
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
qmi style