X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fmonitormanager.h;h=b9f7de2c2da501f6953049eac5bfa142078c2121;hb=4ae3260592acc87712db77b7d3fe0cc2be7d76bc;hp=5468fdf781b54185ac7dcb20bdc65ec912e54524;hpb=9522922e9d58a72c762d668177662f7d7ab00e8e;p=kdenlive diff --git a/src/monitormanager.h b/src/monitormanager.h index 5468fdf7..b9f7de2c 100644 --- a/src/monitormanager.h +++ b/src/monitormanager.h @@ -25,33 +25,40 @@ #include "recmonitor.h" #include "timecode.h" +class KdenliveDoc; class MonitorManager : public QObject { Q_OBJECT public: - MonitorManager(QWidget *parent = 0); + explicit MonitorManager(QWidget *parent = 0); void initMonitors(Monitor *clipMonitor, Monitor *projectMonitor, RecMonitor *recMonitor); void appendMonitor(AbstractMonitor *monitor); void removeMonitor(AbstractMonitor *monitor); - Timecode timecode(); - void resetProfiles(Timecode tc); + Timecode timecode() const; + void resetProfiles(const 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(const QString monitorName); + AbstractMonitor *monitor(Kdenlive::MONITORID monitorName); void updateScopeSource(); void clearScopeSource(); + /** @brief Returns current project's folder. */ + QString getProjectFolder() const; + /** @brief Sets current document for later reference. */ + void setDocument(KdenliveDoc *doc); + /** @brief Change an MLT consumer property for both monitors. */ + void setConsumerProperty(const QString &name, const QString &value); public slots: /** @brief Activates a monitor. * @param name name of the monitor to activate */ - bool activateMonitor(const QString &name = QString()); - bool isActive(const QString &name) const; + bool activateMonitor(Kdenlive::MONITORID, bool forceRefresh = false); + bool isActive(Kdenlive::MONITORID id) const; void slotPlay(); void slotPause(); void slotPlayZone(); @@ -65,6 +72,9 @@ 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 @@ -76,6 +86,7 @@ private slots: void slotRefreshCurrentMonitor(const QString &id); private: + KdenliveDoc *m_document; Monitor *m_clipMonitor; Monitor *m_projectMonitor; Timecode m_timecode;