# 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