]> git.sesse.net Git - kdenlive/blobdiff - src/doubleparameterwidget.h
Const'ref
[kdenlive] / src / doubleparameterwidget.h
index 9a7681fccb6df70916addd0b7b36ab496b5bf54f..7dec64656eeba0b7bc4d76a103015f74a205b628 100644 (file)
@@ -23,9 +23,9 @@
 
 #include <QWidget>
 
+
 class QLabel;
-class QSlider;
-class QSpinBox;
+class DragValue;
 
 /**
  * @class DoubleParameterWidget
@@ -48,34 +48,39 @@ public:
     * @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, int defaultValue, const QString &comment, 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();
+    void slotShowComment(bool show);
+
+    void slotSetValue(double value, bool final);
 
 private:
-    int m_default;
-    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