Qwt User's Guide
svn
|
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_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 QwtInterval; 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 QwtInterval &, double step = 0.0 ); 00037 void setScale( const QwtScaleDiv & ); 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