]> git.sesse.net Git - kdenlive/blobdiff - src/recmonitor.h
correctly update capture folder when it changes:
[kdenlive] / src / recmonitor.h
index b783f5379e9fa34dd0eb80396c04d7be26d7ce9e..a9ff801838284a322ec0ce60b632a05fe1709fbb 100644 (file)
@@ -29,6 +29,7 @@
 #include <KIcon>
 #include <KAction>
 #include <KRestrictedLine>
+#include <KDateTime>
 
 #include "ui_recmonitor_ui.h"
 #include "smallruler.h"
@@ -38,10 +39,12 @@ class RecMonitor : public QWidget {
     Q_OBJECT
 
 public:
-    RecMonitor(QString name, QWidget *parent = 0);
+    explicit RecMonitor(QString name, QWidget *parent = 0);
+    virtual ~RecMonitor();
+
     QString name() const;
 
-enum CAPTUREDEVICE {FIREWIRE = 0, VIDEO4LINUX = 1, SCREENGRAB =2};
+    enum CAPTUREDEVICE {FIREWIRE = 0, VIDEO4LINUX = 1, SCREENGRAB = 2};
 
 protected:
     virtual void mousePressEvent(QMouseEvent * event);
@@ -50,9 +53,9 @@ private:
     Ui::RecMonitor_UI ui;
     QString m_tmpFolder;
     QString m_name;
-       RegionGrabber *rgnGrab;
+    RegionGrabber *rgnGrab;
     bool m_isActive;
-
+    KDateTime m_captureTime;
 
     KUrl m_captureFile;
     KIcon m_playIcon;
@@ -62,6 +65,8 @@ private:
     QProcess *displayProcess;
     QTimer *m_initTimer;
     bool m_isCapturing;
+    /** did the user capture something ? */
+    bool m_didCapture;
     bool m_isPlaying;
     QStringList m_captureArgs;
     QStringList m_displayArgs;
@@ -71,6 +76,9 @@ private:
     QAction *m_rewAction;
     QAction *m_stopAction;
     QAction *m_discAction;
+    void checkDeviceAvailability();
+    QPixmap mergeSideBySide(const QPixmap& pix, const QString txt);
+    void manageCapturedFiles();
 
 private slots:
     void slotStartCapture(bool play = true);
@@ -81,7 +89,8 @@ private slots:
     void slotRewind();
     void slotForward();
     void slotDisconnect();
-       void slotStartGrab(const QRect &rect);
+    //void slotStartGrab(const QRect &rect);
+    void slotConfigure();
 
 public slots:
     void refreshRecMonitor(bool visible);
@@ -89,11 +98,13 @@ public slots:
     void start();
     void activateRecMonitor();
     void slotPlay();
+    void slotUpdateCaptureFolder();
 
 signals:
     void renderPosition(int);
     void durationChanged(int);
     void addProjectClip(KUrl);
+    void showConfigDialog(int, int);
 };
 
 #endif