+class Monitor : public AbstractMonitor
+{
+ Q_OBJECT
+
+public:
+ Monitor(QString name, MonitorManager *manager, QString profile = QString(), QWidget *parent = 0);
+ ~Monitor();
+ Render *render;
+ AbstractRender *abstractRender();
+ void resetProfile(const QString &profile);
+ const QString name() const;
+ void resetSize();
+ bool isActive() const;
+ void pause();
+ void setupMenu(QMenu *goMenu, QAction *playZone, QAction *loopZone, QMenu *markerMenu = NULL, QAction *loopClip = NULL);
+ const QString sceneList();
+ DocClipBase *activeClip();
+ GenTime position();
+ void checkOverlay();
+ void updateTimecodeFormat();
+ void updateMarkers(DocClipBase *source);
+ MonitorEditWidget *getEffectEdit();
+ QWidget *container();
+ QFrame *m_volumePopup;
+
+protected:
+ virtual void mousePressEvent(QMouseEvent * event);
+ virtual void mouseReleaseEvent(QMouseEvent * event);
+ virtual void resizeEvent(QResizeEvent *event);
+
+ /** @brief Move to another position on mouse wheel event.
+ *
+ * Moves towards the end of the clip/timeline on mouse wheel down/back, the
+ * opposite on mouse wheel up/forward.
+ * Ctrl + wheel moves by a second, without Ctrl it moves by a single frame. */
+ virtual void wheelEvent(QWheelEvent * event);
+ virtual void mouseMoveEvent(QMouseEvent *event);
+ virtual QStringList mimeTypes() const;
+ /*virtual void dragMoveEvent(QDragMoveEvent * event);
+ virtual Qt::DropActions supportedDropActions() const;*/
+
+ //virtual void resizeEvent(QResizeEvent * event);
+ //virtual void paintEvent(QPaintEvent * event);
+
+private: