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 QwtScaleMap;
00019 class QwtDoubleInterval;
00020
00029 class QWT_EXPORT QwtAbstractScale
00030 {
00031 public:
00032 QwtAbstractScale();
00033 virtual ~QwtAbstractScale();
00034
00035 void setScale(double vmin, double vmax, double step = 0.0);
00036 void setScale(const QwtDoubleInterval &, double step = 0.0);
00037 void setScale(const QwtScaleDiv &s);
00038
00039 void setAutoScale();
00040 bool autoScale() const;
00041
00042 void setScaleMaxMajor( int ticks);
00043 int scaleMaxMinor() const;
00044
00045 void setScaleMaxMinor( int ticks);
00046 int scaleMaxMajor() const;
00047
00048 void setScaleEngine(QwtScaleEngine *);
00049 const QwtScaleEngine *scaleEngine() const;
00050 QwtScaleEngine *scaleEngine();
00051
00052 const QwtScaleMap &scaleMap() const;
00053
00054 protected:
00055 void rescale(double vmin, double vmax, double step = 0.0);
00056
00057 void setAbstractScaleDraw(QwtAbstractScaleDraw *);
00058 const QwtAbstractScaleDraw *abstractScaleDraw() const;
00059 QwtAbstractScaleDraw *abstractScaleDraw();
00060
00061 virtual void scaleChange();
00062
00063 private:
00064 void updateScaleDraw();
00065
00066 class PrivateData;
00067 PrivateData *d_data;
00068 };
00069
00070 #endif