]> git.sesse.net Git - kdenlive/blobdiff - src/monitormanager.h
Fix wrong locale when rendering:
[kdenlive] / src / monitormanager.h
index 3dcfc7aa889f434570a114d6861d841d56a5aaa3..880b6d1279a924390725468115922258b7a12e46 100644 (file)
@@ -22,9 +22,9 @@
 #define MONITORMANAGER_H
 
 #include "monitor.h"
+#include "recmonitor.h"
 #include "timecode.h"
 
-class Monitor;
 
 class MonitorManager : public QObject
 {
@@ -32,17 +32,28 @@ class MonitorManager : public QObject
 
 public:
     MonitorManager(QWidget *parent = 0);
-    void initMonitors(Monitor *clipMonitor, Monitor *projectMonitor);
+    void initMonitors(Monitor *clipMonitor, Monitor *projectMonitor, RecMonitor *recMonitor);
+    void appendMonitor(AbstractMonitor *monitor);
+    void removeMonitor(AbstractMonitor *monitor);
     Timecode timecode();
     void resetProfiles(Timecode tc);
     void stopActiveMonitor();
+    AbstractRender *activeRenderer();
+    /** Searches for a monitor with the given name.
+       @return NULL, if no monitor could be found, or the monitor otherwise.
+    */
+    AbstractMonitor *monitor(Kdenlive::MONITORID monitorName);
+    void updateScopeSource();
+    void clearScopeSource();
 
 public slots:
 
     /** @brief Activates a monitor.
      * @param name name of the monitor to activate */
-    void activateMonitor(QString name = QString());
+    bool activateMonitor(Kdenlive::MONITORID);
+    bool isActive(Kdenlive::MONITORID id) const;
     void slotPlay();
+    void slotPause();
     void slotPlayZone();
     void slotLoopZone();
     void slotRewind(double speed = 0);
@@ -54,21 +65,31 @@ public slots:
     void slotStart();
     void slotEnd();
     void slotResetProfiles();
+    
+    /** @brief Switch current monitor to fullscreen. */
+    void slotSwitchFullscreen();
 
     /** @brief Switches between project and clip monitor.
      * @ref activateMonitor
      * @param activateClip whether to activate the clip monitor */
     void slotSwitchMonitors(bool activateClip);
+    void slotUpdateAudioMonitoring();
+
+private slots:
+    void slotRefreshCurrentMonitor(const QString &id);
 
 private:
     Monitor *m_clipMonitor;
     Monitor *m_projectMonitor;
-    QString m_activeMonitor;
     Timecode m_timecode;
-    bool m_blocked;
+    AbstractMonitor *m_activeMonitor;
+    QList <AbstractMonitor *>m_monitorsList;
 
 signals:
-    void raiseClipMonitor(bool);
+    /** @brief When the monitor changed, update the visible color scopes */
+    void checkColorScopes();
+    /** @brief When the active monitor renderer was deleted, reset color scopes */
+    void clearScopes();
 
 };