X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fdoubleparameterwidget.h;h=7dec64656eeba0b7bc4d76a103015f74a205b628;hb=c3302003093710ee247ad84c0fe2ef3c579d417f;hp=448bbc8786ccaaec20acbdf3e918597c8121239f;hpb=4da568a69a486f5de09e42bc5965b9a682a35a16;p=kdenlive diff --git a/src/doubleparameterwidget.h b/src/doubleparameterwidget.h index 448bbc87..7dec6465 100644 --- a/src/doubleparameterwidget.h +++ b/src/doubleparameterwidget.h @@ -23,9 +23,9 @@ #include + class QLabel; -class QSlider; -class QSpinBox; +class DragValue; /** * @class DoubleParameterWidget @@ -44,25 +44,43 @@ public: * @param value Value of the parameter * @param min Minimum value * @param max maximum value + * @param defaultValue Value used when using reset functionality + * @param comment A comment explaining the parameter. Will be shown for the tooltip. * @param suffix (optional) Suffix to display in spinbox * @param parent (optional) Parent Widget */ - DoubleParameterWidget(const QString &name, int value, int min, int max, const QString suffix = QString(), QWidget* parent = 0); - /** @brief Updates the label to display @param name. */ - void setName(const QString &name); + explicit DoubleParameterWidget(const QString &name, double value, double min, double max, double defaultValue, const QString &comment, int id, const QString &suffix = QString(), int decimals = 0, QWidget* parent = 0); + ~DoubleParameterWidget(); + /** @brief Gets the parameter's value. */ - int getValue(); + double getValue(); + /** @brief Set the inTimeline property to paint widget with other colors. */ + void setInTimelineProperty(bool intimeline); + /** @brief Returns minimum size for QSpinBox, used to set all spinboxes to the same width. */ + int spinSize(); + void setSpinSize(int width); + public slots: /** @brief Sets the value to @param value. */ - void setValue(int value); + void setValue(double value); + + /** @brief Sets value to m_default. */ + void slotReset(); + +private slots: + /** @brief Shows/Hides the comment label. */ + void slotShowComment(bool show); + + void slotSetValue(double value, bool final); private: - QLabel *m_name; - QSlider *m_slider; - QSpinBox *m_spinBox; + DragValue *m_dragVal; + QLabel *m_commentLabel; signals: - void valueChanged(int); + void valueChanged(double); + /** @brief User wants to see this parameter in timeline. */ + void setInTimeline(int); }; #endif