Qwt User's Guide  6.2.0
qwt_plot_directpainter.h
1 /******************************************************************************
2  * Qwt Widget Library
3  * Copyright (C) 1997 Josef Wilgen
4  * Copyright (C) 2002 Uwe Rathmann
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the Qwt License, Version 1.0
8  *****************************************************************************/
9 
10 #ifndef QWT_PLOT_DIRECT_PAINTER_H
11 #define QWT_PLOT_DIRECT_PAINTER_H
12 
13 #include "qwt_global.h"
14 #include <qobject.h>
15 
16 class QRegion;
17 class QwtPlotSeriesItem;
18 
39 class QWT_EXPORT QwtPlotDirectPainter : public QObject
40 {
41  public:
46  enum Attribute
47  {
54  AtomicPainter = 0x01,
55 
60  FullRepaint = 0x02,
61 
70  CopyBackingStore = 0x04
71  };
72 
73  Q_DECLARE_FLAGS( Attributes, Attribute )
74 
75  explicit QwtPlotDirectPainter( QObject* parent = NULL );
76  virtual ~QwtPlotDirectPainter();
77 
78  void setAttribute( Attribute, bool on );
79  bool testAttribute( Attribute ) const;
80 
81  void setClipping( bool );
82  bool hasClipping() const;
83 
84  void setClipRegion( const QRegion& );
85  QRegion clipRegion() const;
86 
87  void drawSeries( QwtPlotSeriesItem*, int from, int to );
88  void reset();
89 
90  virtual bool eventFilter( QObject*, QEvent* ) QWT_OVERRIDE;
91 
92  private:
93  class PrivateData;
94  PrivateData* m_data;
95 };
96 
97 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotDirectPainter::Attributes )
98 
99 #endif
Painter object trying to paint incrementally.
QFlags< Attribute > Attributes
Base class for plot items representing a series of samples.