Krita Source Code Documentation
Loading...
Searching...
No Matches
rsliderspinbox.h
Go to the documentation of this file.
1
28#ifndef RSLIDERSPINBOX_H
29#define RSLIDERSPINBOX_H
30
31// Qt includes
32
33#include <QWidget>
34#include <QString>
35#include <QRect>
36#include <QStyleOptionSpinBox>
37#include <QStyleOptionProgressBar>
38
39namespace KDcrawIface
40{
41
42class RAbstractSliderSpinBoxPrivate;
43class RSliderSpinBoxPrivate;
44class RDoubleSliderSpinBoxPrivate;
45
49class RAbstractSliderSpinBox : public QWidget
50{
51 Q_OBJECT
52 Q_DISABLE_COPY(RAbstractSliderSpinBox)
53 Q_DECLARE_PRIVATE(RAbstractSliderSpinBox)
54
55protected:
56
57 explicit RAbstractSliderSpinBox(QWidget* const parent, RAbstractSliderSpinBoxPrivate* const q);
58
59public:
60
61 ~RAbstractSliderSpinBox() override;
62
63 void showEdit();
64 void hideEdit();
65
66 void setSuffix(const QString& suffix);
67
68 void setExponentRatio(double dbl);
69
70protected:
71
72 void paintEvent(QPaintEvent* e) override;
73 void mousePressEvent(QMouseEvent* e) override;
74 void mouseReleaseEvent(QMouseEvent* e) override;
75 void mouseMoveEvent(QMouseEvent* e) override;
76 void keyPressEvent(QKeyEvent* e) override;
77 void wheelEvent(QWheelEvent *) override;
78 bool eventFilter(QObject* recv, QEvent* e) override;
79
80 QSize sizeHint() const override;
81 QSize minimumSizeHint() const override;
82
83 QStyleOptionSpinBox spinBoxOptions() const;
84 QStyleOptionProgressBar progressBarOptions() const;
85
86 QRect editRect(const QStyleOptionSpinBox& spinBoxOptions) const;
87 QRect progressRect(const QStyleOptionProgressBar& progressBarOptions) const;
88 QRect upButtonRect(const QStyleOptionSpinBox& spinBoxOptions) const;
89 QRect downButtonRect(const QStyleOptionSpinBox& spinBoxOptions) const;
90
91 int valueForX(int x, Qt::KeyboardModifiers modifiers = Qt::NoModifier) const;
92
93 virtual QString valueString() const = 0;
94 virtual void setInternalValue(int value) = 0;
95
96protected Q_SLOTS:
97
98 void contextMenuEvent(QContextMenuEvent* event) override;
99 void editLostFocus();
100
101protected:
102
104};
105
106// ---------------------------------------------------------------------------------
107
109{
110 Q_OBJECT
111 Q_DECLARE_PRIVATE(RSliderSpinBox)
112 Q_PROPERTY( int minimum READ minimum WRITE setMinimum )
113 Q_PROPERTY( int maximum READ maximum WRITE setMaximum )
114
115public:
116
117 RSliderSpinBox(QWidget* const parent = 0);
118 ~RSliderSpinBox() override;
119
120 void setRange(int minimum, int maximum);
121
122 int minimum() const;
123 void setMinimum(int minimum);
124 int maximum() const;
125 void setMaximum(int maximum);
126 int fastSliderStep() const;
127 void setFastSliderStep(int step);
128
129 int value() const;
130 void setValue(int value);
131
132 void setSingleStep(int value);
133 void setPageStep(int value);
134
135Q_SIGNALS:
136
138
139protected:
140
141 QString valueString() const override;
142 void setInternalValue(int value) override;
143};
144
145// ---------------------------------------------------------------------------------
146
148{
149 Q_OBJECT
150 Q_DECLARE_PRIVATE(RDoubleSliderSpinBox)
151
152public:
153
154 RDoubleSliderSpinBox(QWidget* const parent = 0);
155 ~RDoubleSliderSpinBox() override;
156
157 void setRange(double minimum, double maximum, int decimals = 0);
158
159 double minimum() const;
160 void setMinimum(double minimum);
161 double maximum() const;
162 void setMaximum(double maximum);
163 double fastSliderStep() const;
164 void setFastSliderStep(double step);
165
166 double value() const;
167 void setValue(double value);
168
169 void setSingleStep(double value);
170
171Q_SIGNALS:
172
173 void valueChanged(double value);
174
175protected:
176
177 QString valueString() const override;
178 void setInternalValue(int val) override;
179};
180
181} // namespace KDcrawIface
182
183#endif // RSLIDERSPINBOX_H
float value(const T *src, size_t ch)
void mouseReleaseEvent(QMouseEvent *e) override
void wheelEvent(QWheelEvent *) override
QRect editRect(const QStyleOptionSpinBox &spinBoxOptions) const
virtual void setInternalValue(int value)=0
virtual QString valueString() const =0
QRect progressRect(const QStyleOptionProgressBar &progressBarOptions) const
void keyPressEvent(QKeyEvent *e) override
RAbstractSliderSpinBoxPrivate *const d_ptr
int valueForX(int x, Qt::KeyboardModifiers modifiers=Qt::NoModifier) const
QRect upButtonRect(const QStyleOptionSpinBox &spinBoxOptions) const
void mouseMoveEvent(QMouseEvent *e) override
QStyleOptionSpinBox spinBoxOptions() const
QRect downButtonRect(const QStyleOptionSpinBox &spinBoxOptions) const
void setSuffix(const QString &suffix)
void paintEvent(QPaintEvent *e) override
void mousePressEvent(QMouseEvent *e) override
RAbstractSliderSpinBox(QWidget *const parent, RAbstractSliderSpinBoxPrivate *const q)
bool eventFilter(QObject *recv, QEvent *e) override
void contextMenuEvent(QContextMenuEvent *event) override
QStyleOptionProgressBar progressBarOptions() const
void setRange(int minimum, int maximum)
void setInternalValue(int value) override
QString valueString() const override
void valueChanged(int value)