Qt Utilities 6.14.0
Common Qt related C++ classes and routines used by my applications such as dialogs, widgets and models
Loading...
Searching...
No Matches
clearspinbox.h
Go to the documentation of this file.
1#ifndef WIDGETS_CLEARSPINBOX_H
2#define WIDGETS_CLEARSPINBOX_H
3
4#include "./buttonoverlay.h"
5
6#include <QLineEdit>
7#include <QSpinBox>
8
9QT_FORWARD_DECLARE_CLASS(QHBoxLayout)
10
11namespace QtUtilities {
12
13class IconButton;
14
15class QT_UTILITIES_EXPORT ClearSpinBox : public QSpinBox, public ButtonOverlay {
16 Q_OBJECT
17 Q_PROPERTY(bool cleared READ isCleared)
18 Q_PROPERTY(bool minimumHidden READ minimumHidden WRITE setMinimumHidden)
19 Q_PROPERTY(QString placeholderText READ placeholderText WRITE setPlaceholderText)
20
21public:
22 explicit ClearSpinBox(QWidget *parent = nullptr);
23 ~ClearSpinBox() override;
24 bool minimumHidden() const;
25 void setMinimumHidden(bool value);
26 QString placeholderText() const;
27 void setPlaceholderText(const QString &placeholderText);
28 bool isCleared() const override;
29
30protected:
31 int valueFromText(const QString &text) const override;
32 QString textFromValue(int val) const override;
33
34private Q_SLOTS:
35 void handleValueChanged(int value);
36 void handleClearButtonClicked() override;
37 void handleCustomLayoutCreated() override;
38
39private:
40 bool m_minimumHidden;
41};
42
46inline bool ClearSpinBox::minimumHidden() const
47{
48 return m_minimumHidden;
49}
50
54inline void ClearSpinBox::setMinimumHidden(bool value)
55{
56 m_minimumHidden = value;
57}
58
63inline QString ClearSpinBox::placeholderText() const
64{
65 return lineEdit()->placeholderText();
66}
67
72inline void ClearSpinBox::setPlaceholderText(const QString &placeholderText)
73{
74 lineEdit()->setPlaceholderText(placeholderText);
75}
76} // namespace QtUtilities
77
78#endif // WIDGETS_CLEARSPINBOX_H
The ButtonOverlay class is used to display buttons on top of other widgets.
A QSpinBox with an embedded button for clearing its contents and the ability to hide the minimum valu...
#define QT_UTILITIES_EXPORT
Marks the symbol to be exported by the qtutilities library.
Definition global.h:14
#define text