]> git.sesse.net Git - kdenlive/blobdiff - src/waveform.h
Added Spanish translations for notifications
[kdenlive] / src / waveform.h
index 3e385012257a2eaa3fa9fb33997affcdaaeac0e2..5ece240f3995ca4ccc7d13f60ed19fc058262b0b 100644 (file)
 #ifndef WAVEFORM_H
 #define WAVEFORM_H
 
-#include <QWidget>
+#include "abstractscopewidget.h"
 
 #include "ui_waveform_ui.h"
-#include "renderer.h"
-#include "monitor.h"
-#include "waveformgenerator.h"
 
 class Waveform_UI;
 class WaveformGenerator;
-class Render;
-class Monitor;
 
-class Waveform : public QWidget, public Ui::Waveform_UI {
+class Waveform : public AbstractScopeWidget {
     Q_OBJECT
 
 public:
     Waveform(Monitor *projMonitor, Monitor *clipMonitor, QWidget *parent = 0);
     ~Waveform();
 
+    virtual QString widgetName() const;
+
 protected:
-    void paintEvent(QPaintEvent *);
-    void resizeEvent(QResizeEvent *);
-    void mouseReleaseEvent(QMouseEvent *);
+    virtual void readConfig();
+    void writeConfig();
 
 private:
-    Monitor *m_projMonitor;
-    Monitor *m_clipMonitor;
-    Render *m_activeRender;
-
+    Ui::Waveform_UI *ui;
     WaveformGenerator *m_waveformGenerator;
 
-    void updateDimensions();
-    bool initialDimensionUpdateDone;
+    QAction *m_aRec601;
+    QAction *m_aRec709;
+    QActionGroup *m_agRec;
+
+    static const QSize m_textWidth;
+    static const int m_paddingBottom;
 
-    QRect m_scopeRect;
     QImage m_waveform;
 
-private slots:
-    void slotActiveMonitorChanged(bool isClipMonitor);
-    void slotRenderZoneUpdated();
-    void slotWaveformCalculated(QImage waveform, const uint &msec);
+    /// Implemented methods ///
+    QRect scopeRect();
+    QImage renderHUD(uint);
+    QImage renderScope(uint, const QImage);
+    QImage renderBackground(uint);
+    bool isHUDDependingOnInput() const;
+    bool isScopeDependingOnInput() const;
+    bool isBackgroundDependingOnInput() const;
 
 };