Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qabstractslider.h
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3// Qt-Security score:significant reason:default
4
5#ifndef QABSTRACTSLIDER_H
6#define QABSTRACTSLIDER_H
7
8#include <QtWidgets/qtwidgetsglobal.h>
9#include <QtWidgets/qwidget.h>
10
12
13QT_BEGIN_NAMESPACE
14
15
16class QAbstractSliderPrivate;
17
18class Q_WIDGETS_EXPORT QAbstractSlider : public QWidget
19{
20 Q_OBJECT
21
22 Q_PROPERTY(int minimum READ minimum WRITE setMinimum)
23 Q_PROPERTY(int maximum READ maximum WRITE setMaximum)
24 Q_PROPERTY(int singleStep READ singleStep WRITE setSingleStep)
25 Q_PROPERTY(int pageStep READ pageStep WRITE setPageStep)
26 Q_PROPERTY(int value READ value WRITE setValue NOTIFY valueChanged USER true)
27 Q_PROPERTY(int sliderPosition READ sliderPosition WRITE setSliderPosition NOTIFY sliderMoved)
28 Q_PROPERTY(bool tracking READ hasTracking WRITE setTracking)
29 Q_PROPERTY(Qt::Orientation orientation READ orientation WRITE setOrientation)
30 Q_PROPERTY(bool invertedAppearance READ invertedAppearance WRITE setInvertedAppearance)
31 Q_PROPERTY(bool invertedControls READ invertedControls WRITE setInvertedControls)
32 Q_PROPERTY(bool sliderDown READ isSliderDown WRITE setSliderDown DESIGNABLE false)
33
34public:
35 explicit QAbstractSlider(QWidget *parent = nullptr);
36 ~QAbstractSlider();
37
38 Qt::Orientation orientation() const;
39
40 void setMinimum(int);
41 int minimum() const;
42
43 void setMaximum(int);
44 int maximum() const;
45
46 void setSingleStep(int);
47 int singleStep() const;
48
49 void setPageStep(int);
50 int pageStep() const;
51
52 void setTracking(bool enable);
53 bool hasTracking() const;
54
55 void setSliderDown(bool);
56 bool isSliderDown() const;
57
58 void setSliderPosition(int);
59 int sliderPosition() const;
60
61 void setInvertedAppearance(bool);
62 bool invertedAppearance() const;
63
64 void setInvertedControls(bool);
65 bool invertedControls() const;
66
67 enum SliderAction {
68 SliderNoAction,
69 SliderSingleStepAdd,
70 SliderSingleStepSub,
71 SliderPageStepAdd,
72 SliderPageStepSub,
73 SliderToMinimum,
74 SliderToMaximum,
75 SliderMove
76 };
77
78 int value() const;
79
80 void triggerAction(SliderAction action);
81
82public Q_SLOTS:
83 void setValue(int);
84 void setOrientation(Qt::Orientation);
85 void setRange(int min, int max);
86
87Q_SIGNALS:
88 void valueChanged(int value);
89
90 void sliderPressed();
91 void sliderMoved(int position);
92 void sliderReleased();
93
94 void rangeChanged(int min, int max);
95
96 void actionTriggered(int action);
97
98protected:
99 bool event(QEvent *e) override;
100
101 void setRepeatAction(SliderAction action, int thresholdTime = 500, int repeatTime = 50);
102 SliderAction repeatAction() const;
103
104 enum SliderChange {
105 SliderRangeChange,
106 SliderOrientationChange,
107 SliderStepsChange,
108 SliderValueChange
109 };
110 virtual void sliderChange(SliderChange change);
111
112 void keyPressEvent(QKeyEvent *ev) override;
113 void timerEvent(QTimerEvent *) override;
114#if QT_CONFIG(wheelevent)
115 void wheelEvent(QWheelEvent *e) override;
116#endif
117 void changeEvent(QEvent *e) override;
118
119
120protected:
121 QAbstractSlider(QAbstractSliderPrivate &dd, QWidget *parent = nullptr);
122
123private:
124 Q_DISABLE_COPY(QAbstractSlider)
125 Q_DECLARE_PRIVATE(QAbstractSlider)
126};
127
128QT_END_NAMESPACE
129
130#endif // QABSTRACTSLIDER_H
The QAbstractSlider class provides an integer value within a range.
QT_REQUIRE_CONFIG(thread)