Qt 4.8
qabstractslider.h
Go to the documentation of this file.
1 /****************************************************************************
2 **
3 ** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
4 ** Contact: http://www.qt-project.org/legal
5 **
6 ** This file is part of the QtGui module of the Qt Toolkit.
7 **
8 ** $QT_BEGIN_LICENSE:LGPL$
9 ** Commercial License Usage
10 ** Licensees holding valid commercial Qt licenses may use this file in
11 ** accordance with the commercial license agreement provided with the
12 ** Software or, alternatively, in accordance with the terms contained in
13 ** a written agreement between you and Digia. For licensing terms and
14 ** conditions see http://qt.digia.com/licensing. For further information
15 ** use the contact form at http://qt.digia.com/contact-us.
16 **
17 ** GNU Lesser General Public License Usage
18 ** Alternatively, this file may be used under the terms of the GNU Lesser
19 ** General Public License version 2.1 as published by the Free Software
20 ** Foundation and appearing in the file LICENSE.LGPL included in the
21 ** packaging of this file. Please review the following information to
22 ** ensure the GNU Lesser General Public License version 2.1 requirements
23 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
24 **
25 ** In addition, as a special exception, Digia gives you certain additional
26 ** rights. These rights are described in the Digia Qt LGPL Exception
27 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
28 **
29 ** GNU General Public License Usage
30 ** Alternatively, this file may be used under the terms of the GNU
31 ** General Public License version 3.0 as published by the Free Software
32 ** Foundation and appearing in the file LICENSE.GPL included in the
33 ** packaging of this file. Please review the following information to
34 ** ensure the GNU General Public License version 3.0 requirements will be
35 ** met: http://www.gnu.org/copyleft/gpl.html.
36 **
37 **
38 ** $QT_END_LICENSE$
39 **
40 ****************************************************************************/
41 
42 #ifndef QABSTRACTSLIDER_H
43 #define QABSTRACTSLIDER_H
44 
45 #include <QtGui/qwidget.h>
46 
48 
50 
51 QT_MODULE(Gui)
52 
54 
56 {
57  Q_OBJECT
58 
59  int minimum;
60  int maximum;
62  int pageStep;
63  int value;
65  bool tracking;
69  bool sliderDown;
70 
71 public:
72  explicit QAbstractSlider(QWidget *parent=0);
73  ~QAbstractSlider();
74 
75  Qt::Orientation orientation() const;
76 
77  void setMinimum(int);
78  int minimum() const;
79 
80  void setMaximum(int);
81  int maximum() const;
82 
83  void setRange(int min, int max);
84 
85  void setSingleStep(int);
86  int singleStep() const;
87 
88  void setPageStep(int);
89  int pageStep() const;
90 
91  void setTracking(bool enable);
92  bool hasTracking() const;
93 
94  void setSliderDown(bool);
95  bool isSliderDown() const;
96 
97  void setSliderPosition(int);
98  int sliderPosition() const;
99 
100  void setInvertedAppearance(bool);
101  bool invertedAppearance() const;
102 
103  void setInvertedControls(bool);
104  bool invertedControls() const;
105 
114  SliderMove
115  };
116 
117  int value() const;
118 
119  void triggerAction(SliderAction action);
120 
121 public Q_SLOTS:
122  void setValue(int);
123  void setOrientation(Qt::Orientation);
124 
125 Q_SIGNALS:
126  void valueChanged(int value);
127 
128  void sliderPressed();
129  void sliderMoved(int position);
130  void sliderReleased();
131 
132  void rangeChanged(int min, int max);
133 
134  void actionTriggered(int action);
135 
136 protected:
137  bool event(QEvent *e);
138 
139  void setRepeatAction(SliderAction action, int thresholdTime = 500, int repeatTime = 50);
140  SliderAction repeatAction() const;
141 
146  SliderValueChange
147  };
148  virtual void sliderChange(SliderChange change);
149 
150  void keyPressEvent(QKeyEvent *ev);
151  void timerEvent(QTimerEvent *);
152 #ifndef QT_NO_WHEELEVENT
153  void wheelEvent(QWheelEvent *e);
154 #endif
155  void changeEvent(QEvent *e);
156 
157 public:
158 #ifdef QT3_SUPPORT
159  inline QT3_SUPPORT int minValue() const { return minimum(); }
160  inline QT3_SUPPORT int maxValue() const { return maximum(); }
161  inline QT3_SUPPORT int lineStep() const { return singleStep(); }
162  inline QT3_SUPPORT void setMinValue(int v) { setMinimum(v); }
163  inline QT3_SUPPORT void setMaxValue(int v) { setMaximum(v); }
164  inline QT3_SUPPORT void setLineStep(int v) { setSingleStep(v); }
165  inline QT3_SUPPORT void setSteps(int single, int page) { setSingleStep(single); setPageStep(page); }
166  inline QT3_SUPPORT void addPage() { triggerAction(SliderPageStepAdd); }
167  inline QT3_SUPPORT void subtractPage() { triggerAction(SliderPageStepSub); }
168  inline QT3_SUPPORT void addLine() { triggerAction(SliderSingleStepAdd); }
169  inline QT3_SUPPORT void subtractLine() { triggerAction(SliderSingleStepSub); }
170 #endif
171 
172 protected:
174 
175 private:
178 };
179 
181 
183 
184 #endif // QABSTRACTSLIDER_H
int value
the slider&#39;s current value
The QKeyEvent class describes a key event.
Definition: qevent.h:224
#define QT_END_NAMESPACE
This macro expands to.
Definition: qglobal.h:90
#define QT_MODULE(x)
Definition: qglobal.h:2783
#define QT_BEGIN_HEADER
Definition: qglobal.h:136
bool invertedControls
whether or not the slider inverts its wheel and key events.
int singleStep
the single step.
int sliderPosition
the current slider position
The QWheelEvent class contains parameters that describe a wheel event.
Definition: qevent.h:139
#define Q_GUI_EXPORT
Definition: qglobal.h:1450
virtual void timerEvent(QTimerEvent *)
This event handler can be reimplemented in a subclass to receive timer events for the object...
Definition: qobject.cpp:1294
static qreal position(QGraphicsObject *item, QDeclarativeAnchorLine::AnchorLine anchorLine)
The QWidget class is the base class of all user interface objects.
Definition: qwidget.h:150
bool tracking
whether slider tracking is enabled
#define Q_DISABLE_COPY(Class)
Disables the use of copy constructors and assignment operators for the given Class.
Definition: qglobal.h:2523
#define Q_SLOTS
Definition: qobjectdefs.h:71
int maximum
the slider&#39;s maximum value
#define Q_SIGNALS
Definition: qobjectdefs.h:72
int minimum
the sliders&#39;s minimum value
#define QT_BEGIN_NAMESPACE
This macro expands to.
Definition: qglobal.h:89
virtual void changeEvent(QEvent *)
This event handler can be reimplemented to handle state changes.
Definition: qwidget.cpp:9170
bool invertedAppearance
whether or not a slider shows its values inverted.
virtual void keyPressEvent(QKeyEvent *)
This event handler, for event event, can be reimplemented in a subclass to receive key press events f...
Definition: qwidget.cpp:9375
#define Q_OBJECT
Definition: qobjectdefs.h:157
virtual void wheelEvent(QWheelEvent *)
This event handler, for event event, can be reimplemented in a subclass to receive wheel events for t...
Definition: qwidget.cpp:9326
The QTimerEvent class contains parameters that describe a timer event.
Definition: qcoreevent.h:341
The QAbstractSlider class provides an integer value within a range.
#define Q_DECLARE_PRIVATE(Class)
Definition: qglobal.h:2467
bool event(QEvent *)
This is the main event handler; it handles event event.
Definition: qwidget.cpp:8636
Orientation
Definition: qnamespace.h:174
The QEvent class is the base class of all event classes.
Definition: qcoreevent.h:56
#define QT_END_HEADER
Definition: qglobal.h:137
int pageStep
the page step.
Qt::Orientation orientation
the orientation of the slider
bool sliderDown
whether the slider is pressed down.