qCTKDoubleRangeSlider.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef __qCTKDoubleRangeSlider_h
00016 #define __qCTKDoubleRangeSlider_h
00017
00019 #include <QWidget>
00020 #include <QAbstractSlider>
00021
00023 #include "qCTKPimpl.h"
00024 #include "qCTKWidgetsExport.h"
00025
00026 class qCTKDoubleRangeSliderPrivate;
00027 class QCTK_WIDGETS_EXPORT qCTKDoubleRangeSlider : public QWidget
00028 {
00029 Q_OBJECT
00030 Q_PROPERTY(double minimum READ minimum WRITE setMinimum)
00031 Q_PROPERTY(double maximum READ maximum WRITE setMaximum)
00032 Q_PROPERTY(double singleStep READ singleStep WRITE setSingleStep)
00033 Q_PROPERTY(double minimumValue READ minimumValue WRITE setMinimumValue)
00034 Q_PROPERTY(double maximumValue READ maximumValue WRITE setMaximumValue)
00035 Q_PROPERTY(double minimumPosition READ minimumPosition WRITE setMinimumPosition)
00036 Q_PROPERTY(double maximumPosition READ maximumPosition WRITE setMaximumPosition)
00037 Q_PROPERTY(bool tracking READ hasTracking WRITE setTracking)
00038 Q_PROPERTY(Qt::Orientation orientation READ orientation WRITE setOrientation)
00039 Q_PROPERTY(double tickInterval READ tickInterval WRITE setTickInterval)
00040 public:
00041
00042 typedef QWidget Superclass;
00043
00044
00045 qCTKDoubleRangeSlider( Qt::Orientation o, QWidget* par= 0 );
00046 qCTKDoubleRangeSlider( QWidget* par = 0 );
00047
00052 void setSingleStep(double ss);
00053 double singleStep()const;
00054
00060 void setTickInterval(double ti);
00061 double tickInterval()const;
00062
00068 double minimum()const;
00069 void setMinimum(double min);
00070
00076 double maximum()const;
00077 void setMaximum(double max);
00078
00082 void setRange(double min, double max);
00083
00089 double minimumValue() const;
00090
00096 double maximumValue() const;
00097
00101 double minimumPosition() const;
00102 void setMinimumPosition(double minPos);
00103
00107 double maximumPosition() const;
00108 void setMaximumPosition(double maxPos);
00109
00113 void setPositions(double minPos, double maxPos);
00114
00122 void setTracking(bool enable);
00123 bool hasTracking()const;
00124
00129 void triggerAction(QAbstractSlider::SliderAction action);
00130
00134 Qt::Orientation orientation()const;
00135 void setOrientation(Qt::Orientation orientation);
00136 signals:
00140 void minimumValueChanged(double minVal);
00141
00145 void maximumValueChanged(double maxVal);
00146
00149 void valuesChanged(double minVal, double maxVal);
00150
00156 void minimumPositionChanged(double minPos);
00157
00163 void maximumPositionChanged(double maxPos);
00164
00168 void positionsChanged(double minPos, double maxPos);
00169
00173 void sliderPressed();
00174
00178 void sliderReleased();
00179
00180
00181 public slots:
00187 void setMinimumValue(double minVal);
00188
00194 void setMaximumValue(double maxVal);
00195
00198 void setValues(double minVal, double maxVal);
00199
00200 protected slots:
00201 void onMinValueChanged(int value);
00202 void onMaxValueChanged(int value);
00203 void onValuesChanged(int min, int max);
00204
00205 void onMinPosChanged(int value);
00206 void onMaxPosChanged(int value);
00207 void onPositionsChanged(int min, int max);
00208 private:
00209 QCTK_DECLARE_PRIVATE(qCTKDoubleRangeSlider);
00210 };
00211
00212 #endif