X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Frecmonitor.h;h=ca89f21aaaa3972e4a1d5521b2f905e74861e099;hb=56aee6aedeeed3efd10ada8fe3c229eddc01ef05;hp=aeb1029019af80e1a3c171c830a57e6320171f0c;hpb=fb460899af4f72c9d4c328d9a6a2253e4a35b173;p=kdenlive diff --git a/src/recmonitor.h b/src/recmonitor.h index aeb10290..ca89f21a 100644 --- a/src/recmonitor.h +++ b/src/recmonitor.h @@ -26,7 +26,7 @@ #ifndef RECMONITOR_H #define RECMONITOR_H -#include "abstractmonitor.h" +#include "widgets/abstractmonitor.h" #include "definitions.h" #include "ui_recmonitor_ui.h" @@ -43,6 +43,10 @@ #include #include +#if KDE_IS_VERSION(4,7,0) +#include +#endif + class MonitorManager; class MltDeviceCapture; class AbstractRender; @@ -52,16 +56,20 @@ class RecMonitor : public AbstractMonitor, public Ui::RecMonitor_UI Q_OBJECT public: - explicit RecMonitor(Kdenlive::MONITORID name, MonitorManager *manager, QWidget *parent = 0); - virtual ~RecMonitor(); + explicit RecMonitor(Kdenlive::MonitorId name, MonitorManager *manager, QWidget *parent = 0); + ~RecMonitor(); AbstractRender *abstractRender(); void analyseFrames(bool analyse); - enum CAPTUREDEVICE {FIREWIRE = 0, VIDEO4LINUX = 1, SCREENGRAB = 2, BLACKMAGIC = 3}; + enum CaptureDevice { + Firewire = 0, + Video4Linux = 1, + ScreenBag = 2, + BlackMagic = 3 + }; protected: - virtual void mousePressEvent(QMouseEvent * event); - virtual void mouseDoubleClickEvent(QMouseEvent * event); + void mousePressEvent(QMouseEvent * event); private: KDateTime m_captureTime; @@ -100,7 +108,12 @@ private: VideoContainer *m_videoBox; QAction *m_addCapturedClip; QAction *m_previewSettings; - + QString m_error; + +#if KDE_IS_VERSION(4,7,0) + KMessageWidget *m_infoMessage; +#endif + bool m_analyse; void checkDeviceAvailability(); QPixmap mergeSideBySide(const QPixmap& pix, const QString &txt); @@ -108,7 +121,9 @@ private: /** @brief Build MLT producer for device, using path as profile. */ void buildMltDevice(const QString &path); /** @brief Create string containing an XML playlist for v4l capture. */ - const QString getV4lXmlPlaylist(MltVideoProfile profile); + const QString getV4lXmlPlaylist(const MltVideoProfile &profile, bool *isXml); + /** @brief Display an error message to user. */ + void showWarningMessage(const QString &text, bool logAction = false); private slots: void slotStartPreview(bool play = true); @@ -120,12 +135,14 @@ private slots: void slotDisconnect(); //void slotStartGrab(const QRect &rect); void slotConfigure(); - void slotReadDvgrabInfo(); + void slotReadProcessInfo(); void slotUpdateFreeSpace(); void slotSetInfoMessage(const QString &message); void slotDroppedFrames(int dropped); /** @brief Change setting for preview while recording. */ void slotChangeRecordingPreview(bool enable); + /** @brief Show last jog error log. */ + void slotShowLog(); public slots: void refreshRecMonitor(bool visible);