]> git.sesse.net Git - kdenlive/blobdiff - src/monitoreditwidget.h
Const'ref
[kdenlive] / src / monitoreditwidget.h
index 843a2bb13e31d6ca80d117d86e971f22dd28b03a..30ce7b6ada6fc78b8c4434dc8f2a64f2cd72c786 100644 (file)
 
 #include <QWidget>
 
+class QIcon;
 class MonitorScene;
 class Render;
 class QGraphicsView;
-class QToolButton;
 class QVBoxLayout;
 
 
-
 class MonitorEditWidget : public QWidget
 {
     Q_OBJECT
 
 public:
-    MonitorEditWidget(Render *renderer, QWidget* parent = 0);
-    virtual ~MonitorEditWidget();
+    explicit MonitorEditWidget(Render *renderer, QWidget* parent = 0);
+    ~MonitorEditWidget();
 
     /** @brief Updates the necessary settings on a profile change. */
     void resetProfile(Render *renderer);
 
     /** @brief Returns the on-monitor scene. */
-    MonitorScene *getScene();
+    MonitorScene *getScene() const;
 
     /** @brief Returns the action toggling between the normal monitor and the editor. */
     QAction *getVisibilityAction();
@@ -52,13 +51,15 @@ public:
 
     /** @brief Adds a custom widget to the controls. */
     void addCustomControl(QWidget *widget);
+    void addCustomButton(const QIcon &icon, const QString &text, const QObject *receiver, const char *member, bool checkable = true, bool checked = true);
     /** @brief Empties the list of custom controls. */
     void removeCustomControls();
 
 private slots:
     /** @brief Sets the KdenliveSetting directupdate with true = update parameters (rerender frame) during mouse move (before mouse button is released) */
     void slotSetDirectUpdate(bool directUpdate);
-
+    /** @brief Update zoom slider value */
+    void slotZoom(int value);
 private:
     Ui::MonitorEditWidget_UI m_ui;
     MonitorScene *m_scene;
@@ -68,7 +69,7 @@ private:
 
 signals:
     /** true = show edit monitor, false = show normal monitor */
-    void showEdit(bool show);
+    void showEdit(bool show, bool manuallyTriggered = true);
 };