Qwt User's Guide
|
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: 00039 enum Mode 00040 { 00045 NormalMode, 00046 00057 PolygonPathMode, 00058 00068 PathMode 00069 }; 00070 00071 QwtNullPaintDevice(); 00072 virtual ~QwtNullPaintDevice(); 00073 00074 void setMode( Mode ); 00075 Mode mode() const; 00076 00077 virtual QPaintEngine *paintEngine() const; 00078 00079 virtual int metric( PaintDeviceMetric metric ) const; 00080 00081 virtual void drawRects(const QRect *, int ); 00082 virtual void drawRects(const QRectF *, int ); 00083 00084 virtual void drawLines(const QLine *, int ); 00085 virtual void drawLines(const QLineF *, int ); 00086 00087 virtual void drawEllipse(const QRectF &); 00088 virtual void drawEllipse(const QRect &); 00089 00090 virtual void drawPath(const QPainterPath &); 00091 00092 virtual void drawPoints(const QPointF *, int ); 00093 virtual void drawPoints(const QPoint *, int ); 00094 00095 virtual void drawPolygon( 00096 const QPointF *, int , QPaintEngine::PolygonDrawMode ); 00097 00098 virtual void drawPolygon( 00099 const QPoint *, int , QPaintEngine::PolygonDrawMode ); 00100 00101 virtual void drawPixmap(const QRectF &, 00102 const QPixmap &, const QRectF &); 00103 00104 virtual void drawTextItem(const QPointF &, const QTextItem &); 00105 00106 virtual void drawTiledPixmap(const QRectF &, 00107 const QPixmap &, const QPointF &s); 00108 00109 virtual void drawImage(const QRectF &, 00110 const QImage &, const QRectF &, Qt::ImageConversionFlags ); 00111 00112 virtual void updateState( const QPaintEngineState &state ); 00113 00114 protected: 00116 virtual QSize sizeMetrics() const = 0; 00117 00118 private: 00119 class PaintEngine; 00120 PaintEngine *d_engine; 00121 00122 class PrivateData; 00123 PrivateData *d_data; 00124 }; 00125 00126 #endif