16 #ifndef QGSRANGESLIDER_H
17 #define QGSRANGESLIDER_H
23 #include <QStyleOptionSlider>
71 int lowerValue()
const;
79 int upperValue()
const;
86 void setTickPosition( QSlider::TickPosition position );
93 QSlider::TickPosition tickPosition()
const;
100 void setTickInterval(
int interval );
107 int tickInterval()
const;
114 void setOrientation( Qt::Orientation orientation );
121 Qt::Orientation orientation()
const;
131 bool flippedDirection()
const;
142 void setFlippedDirection(
bool flipped );
144 void paintEvent( QPaintEvent *event )
override;
145 void mousePressEvent( QMouseEvent *event )
override;
146 void mouseMoveEvent( QMouseEvent *event )
override;
147 void mouseReleaseEvent( QMouseEvent *event )
override;
148 void keyPressEvent( QKeyEvent *event )
override;
149 QSize sizeHint()
const override;
150 QSize minimumSizeHint()
const override;
160 int singleStep()
const;
170 int pageStep()
const;
180 void setMaximum(
int maximum );
188 void setMinimum(
int minimum );
196 void setRangeLimits(
int minimum,
int maximum );
205 void setLowerValue(
int value );
214 void setUpperValue(
int value );
222 void setRange(
int lower,
int upper );
232 void setSingleStep(
int step );
242 void setPageStep(
int step );
244 bool event( QEvent *event )
override;
251 void rangeChanged(
int minimum,
int maximum );
256 void rangeLimitsChanged(
int minimum,
int maximum );
260 int pick(
const QPoint &pt )
const;
261 int pixelPosToRangeValue(
int pos )
const;
262 bool updateHoverControl(
const QPoint &pos );
263 bool newHoverControl(
const QPoint &pos );
264 QRect selectedRangeRect();
265 void drawFocusRect();
273 QStyleOptionSlider mStyleOption;
283 void applyStep(
int step );
284 int unFlippedSliderPosition(
int value )
const;
286 Control mActiveControl =
None;
287 int mStartDragPos = -1;
288 int mLowerClickOffset = 0;
289 int mUpperClickOffset = 0;
290 int mRangeDragOffset = 0;
291 int mPreDragLowerValue = -1;
292 int mPreDragUpperValue = -1;
293 Control mHoverControl =
None;
294 Control mFocusControl = Lower;
295 QStyle::SubControl mHoverSubControl = QStyle::SC_None;
298 bool mFlipped =
false;
301 #endif // QGSRANGESLIDER_H