#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(Kdenlive::MONITORID 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(Kdenlive::MONITORID, bool forceRefresh = false);
- bool isActive(Kdenlive::MONITORID id) const;
+ bool activateMonitor(Kdenlive::MonitorId, bool forceRefresh = false);
+ bool isActive(Kdenlive::MonitorId id) const;
void slotPlay();
void slotPause();
void slotPlayZone();
void slotRefreshCurrentMonitor(const QString &id);
private:
+ KdenliveDoc *m_document;
Monitor *m_clipMonitor;
Monitor *m_projectMonitor;
Timecode m_timecode;