Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef QWT_PLOT_DIRECT_PAINTER_H
00011 #define QWT_PLOT_DIRECT_PAINTER_H
00012
00013 #include "qwt_global.h"
00014 #include <qobject.h>
00015
00016 class QRegion;
00017 class QwtPlotSeriesItem;
00018
00039 class QWT_EXPORT QwtPlotDirectPainter: public QObject
00040 {
00041 public:
00046 enum Attribute
00047 {
00054 AtomicPainter = 0x01,
00055
00060 FullRepaint = 0x02,
00061
00070 CopyBackingStore = 0x04
00071 };
00072
00074 typedef QFlags<Attribute> Attributes;
00075
00076 explicit QwtPlotDirectPainter( QObject *parent = NULL );
00077 virtual ~QwtPlotDirectPainter();
00078
00079 void setAttribute( Attribute, bool on );
00080 bool testAttribute( Attribute ) const;
00081
00082 void setClipping( bool );
00083 bool hasClipping() const;
00084
00085 void setClipRegion( const QRegion & );
00086 QRegion clipRegion() const;
00087
00088 void drawSeries( QwtPlotSeriesItem *, int from, int to );
00089 void reset();
00090
00091 virtual bool eventFilter( QObject *, QEvent * );
00092
00093 private:
00094 class PrivateData;
00095 PrivateData *d_data;
00096 };
00097
00098 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotDirectPainter::Attributes )
00099
00100 #endif