00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef QWT_ABSTRACT_SCALE_H
00011 #define QWT_ABSTRACT_SCALE_H
00012
00013 #include "qwt_global.h"
00014
00015 class QwtScaleEngine;
00016 class QwtAbstractScaleDraw;
00017 class QwtScaleDiv;
00018 class QwtDoubleInterval;
00019
00028 class QWT_EXPORT QwtAbstractScale
00029 {
00030 public:
00031 QwtAbstractScale();
00032 virtual ~QwtAbstractScale();
00033
00034 void setScale(double vmin, double vmax, double step = 0.0);
00035 void setScale(const QwtDoubleInterval &, double step = 0.0);
00036 void setScale(const QwtScaleDiv &s);
00037
00038 void setAutoScale();
00039 bool autoScale() const;
00040
00041 void setScaleMaxMajor( int ticks);
00042 int scaleMaxMinor() const;
00043
00044 void setScaleMaxMinor( int ticks);
00045 int scaleMaxMajor() const;
00046
00047 void setScaleEngine(QwtScaleEngine *);
00048 const QwtScaleEngine *scaleEngine() const;
00049 QwtScaleEngine *scaleEngine();
00050
00051 protected:
00052 void rescale(double vmin, double vmax, double step = 0.0);
00053
00054 void setAbstractScaleDraw(QwtAbstractScaleDraw *);
00055 const QwtAbstractScaleDraw *abstractScaleDraw() const;
00056 QwtAbstractScaleDraw *abstractScaleDraw();
00057
00058 virtual void scaleChange();
00059
00060 private:
00061 void updateScaleDraw();
00062
00063 class PrivateData;
00064 PrivateData *d_data;
00065 };
00066
00067 #endif