47 #ifndef _MIRA_PROPERTYEDITORCOMMONDELEGATES_H_ 48 #define _MIRA_PROPERTYEDITORCOMMONDELEGATES_H_ 53 #include <QDoubleSpinBox> 88 double handleWheelEvent(QWheelEvent* event, QLineEdit* lineEdit, QChar decimalPoint,
double defaultStep);
92 bool mMouseMovedSinceLastScroll;
151 return StepUpEnabled | StepDownEnabled;
170 if (steps < 0 && new_value >
m_value) {
171 new_value = std::numeric_limits<T>::min();
172 }
else if (steps > 0 && new_value <
m_value) {
173 new_value = std::numeric_limits<T>::max();
188 return QValidator::Invalid;
191 return QValidator::Invalid;
193 return QValidator::Acceptable;
205 return QString::number(val);
220 QString input = lineEdit()->text();
222 if (QValidator::Acceptable ==
validate(input, pos))
262 static_assert(std::is_integral<T>::value,
"PropertyDelegate_SpinBoxSigned::limitTypeRange() requires integral type.");
263 static_assert(std::is_signed<T>::value,
"PropertyDelegate_SpinBoxSigned::limitTypeRange() requires signed type.");
278 void wheelEvent(QWheelEvent* event);
310 static_assert(std::is_integral<T>::value,
"PropertyDelegate_SpinBoxUnsigned::limitTypeRange() requires integral type.");
311 static_assert(!std::is_signed<T>::value,
"PropertyDelegate_SpinBoxUnsigned::limitTypeRange() requires unsigned type.");
326 void wheelEvent(QWheelEvent* event);
431 void wheelEvent(QWheelEvent* event);
PropertyDelegate_LineEdit(PropertyNode *p, QWidget *parent)
void initFromProperty() override
Abstract base class for all derived property node classes.
Definition: PropertyNode.h:212
QString getPropertyValue() override
void setSingleStep(T step)
Definition: PropertyEditorCommonDelegates.h:159
void setPropertyValue(const QVariant &itemData) override
void onEditFinished()
Definition: PropertyEditorCommonDelegates.h:218
int precision
Definition: PropertyEditorCommonDelegates.h:428
void initFromProperty() override
Declaration and implementation of the property node hierarchy.
void limitRangeToType()
convenience function, sets limits matching a type's numeric limits (but PropertyHint takes priority!)...
Definition: PropertyEditorCommonDelegates.h:308
PropertyDelegate_DoubleSpinBox(PropertyNode *p, QWidget *parent)
T m_step
Definition: PropertyEditorCommonDelegates.h:231
void initFromProperty() override
specialize cv::DataType for our ImgPixel and inherit from cv::DataType<Vec>
Definition: IOService.h:67
void slotSetValue(uint64 value)
void initFromProperty() override
void setValue(int64 val) override
call Base::setValue and emit valueChanged(val)
QString textFromValue(T val) const
Definition: PropertyEditorCommonDelegates.h:203
void propertyEdited() override
Definition: PropertyEditorCommonDelegates.h:68
Definition: PropertyEditorDelegateUtils.h:73
bool eventFilter(QObject *obj, QEvent *event)
virtual QString getPropertyValue()=0
void setPropertyValue(const QVariant &itemData) override
Definition: PropertyEditorCommonDelegates.h:438
void slotSetValue(int64 value)
void propertyEdited() override
QLocale locale
Definition: PropertyEditorCommonDelegates.h:429
T singleStep()
Definition: PropertyEditorCommonDelegates.h:154
Definition: PropertyEditorCommonDelegates.h:453
const T & saturate(const T &value, const T &minValue, const T &maxValue)
Saturate a value by limiting it to a certain interval.
Definition: Saturate.h:63
T m_value
Definition: PropertyEditorCommonDelegates.h:232
Saturation function for limiting a value to an interval.
Definition: PropertyEditorCommonDelegates.h:370
Utils for PropertyEditor delegates.
bool stringToLL(const QString &input, int64 &val)
virtual void setPropertyValue(const QVariant &itemData)=0
void stepBy(int steps) override
Definition: PropertyEditorCommonDelegates.h:164
Definition: PropertyEditorCommonDelegates.h:333
bool eventFilter(QObject *obj, QEvent *event)
void setPropertyValue(const QVariant &itemData) override
void slotSetValue(int value)
void slotSetValue(int value)
PropertyDelegate_ComboBoxIntegral(PropertyNode *p, QWidget *parent)
Definition: PropertyEditorCommonDelegates.h:381
void propertyEdited() override
void valueChanged(int64 v)
QValidator::State validate(QString &input, int &pos) const override
Definition: PropertyEditorCommonDelegates.h:183
void setRange(T min, T max)
Definition: PropertyEditorCommonDelegates.h:143
T maximum() const
Definition: PropertyEditorCommonDelegates.h:132
T valueFromText(const QString &text) const
Definition: PropertyEditorCommonDelegates.h:196
void slotSetValue(int value)
void initFromProperty() override
T value() const
Definition: PropertyEditorCommonDelegates.h:116
void limitRangeToType()
convenience function, sets limits matching a type's numeric limits (but PropertyHint takes priority!)...
Definition: PropertyEditorCommonDelegates.h:260
PropertyDelegate_ComboBoxString(PropertyNode *p, QWidget *parent)
const PropertyNode * propertyNode() const
Definition: PropertyEditorDelegateUtils.h:88
Definition: PropertyEditorCommonDelegates.h:235
PropertyDelegate_Slider(PropertyNode *p, QWidget *parent)
void initFromProperty() override
void setValue(uint64 val) override
call Base::setValue and emit valueChanged(val)
void initFromProperty() override
PropertyDelegate_ComboBoxInt(PropertyNode *p, QWidget *parent)
Definition: PropertyEditorCommonDelegates.h:362
virtual void setValue(T val)
Definition: PropertyEditorCommonDelegates.h:209
Definition: PropertyEditorCommonDelegates.h:411
T m_maximum
Definition: PropertyEditorCommonDelegates.h:230
void slotSetValue(double value)
A spinbox for integral values of any type T (intended to be used with 64bit values), implemented by subclassing QAbstractSpinBox.
Definition: PropertyEditorCommonDelegates.h:109
void setMinimum(T min)
Definition: PropertyEditorCommonDelegates.h:126
void propertyEdited() override
void propertyEdited() override
LongSpinBoxBase(QWidget *parent=0)
Definition: PropertyEditorCommonDelegates.h:112
T m_minimum
Definition: PropertyEditorCommonDelegates.h:229
QString getPropertyValue() override
void propertyEdited() override
PropertyHint step(const T &step)
Sets the attribute "step" to the specified value.
Definition: PropertyHint.h:265
PropertyDelegate_ComboBoxBase(PropertyNode *p, QWidget *parent)
Definition: PropertyEditorCommonDelegates.h:392
bool eventFilter(QObject *obj, QEvent *event)
void initFromProperty() override
void propertyEdited() override
PropertyDelegate_CheckBox(PropertyNode *p, QWidget *parent)
void setMaximum(T max)
Definition: PropertyEditorCommonDelegates.h:137
T minimum() const
Definition: PropertyEditorCommonDelegates.h:121
typename Reflector::ReflectState State
Definition: ReflectorMacros.h:59
StepEnabled stepEnabled() const
Definition: PropertyEditorCommonDelegates.h:149
PropertyDelegate_DoubleSlider(PropertyNode *p, QWidget *parent)
Definition: PropertyEditorCommonDelegates.h:351
Definition: PropertyEditorCommonDelegates.h:359
Definition: PropertyEditorCommonDelegates.h:283
double valueFromText(const QString &text) const override
void valueChanged(uint64 v)
QValidator::State validate(QString &text, int &pos) const override
void slotSetValue(bool value)
PropertyDelegate_ComboBoxUInt(PropertyNode *p, QWidget *parent)
Definition: PropertyEditorCommonDelegates.h:373
void propertyEdited() override
QString textFromValue(double value) const override