]> git.sesse.net Git - kdenlive/blobdiff - src/geometryval.h
New option in composite transition: double click in rectangle to manually adjust...
[kdenlive] / src / geometryval.h
index 6e9786ab3395aed6b24e55a8c411a2c2d9ededa4..a82ff75c090bfbe12f6804e465fc5f39460f026f 100644 (file)
@@ -28,6 +28,7 @@
 #include "ui_geometryval_ui.h"
 #include "definitions.h"
 #include "keyframehelper.h"
+#include "ui_geometryposition_ui.h"
 
 //class QGraphicsScene;
 class GraphicsSceneRectMove;
@@ -35,26 +36,30 @@ class QGraphicsRectItem;
 class QMouseEvent;
 
 
-class Geometryval : public QWidget {
+class Geometryval : public QWidget
+{
     Q_OBJECT
 public:
-    Geometryval(const MltVideoProfile profile, QWidget* parent = 0);
+    explicit Geometryval(const MltVideoProfile profile, QPoint frame_size, QWidget* parent = 0);
     QDomElement getParamDesc();
 
 private:
-    Ui::Geometryval ui;
+    Ui::Geometryval m_ui;
     MltVideoProfile m_profile;
     //QGraphicsScene* scene;
-    GraphicsSceneRectMove *scene;
-    QDomElement param;
-    QGraphicsRectItem *paramRect;
+    GraphicsSceneRectMove *m_scene;
+    QDomElement m_param;
+    QGraphicsRectItem *m_paramRect;
     Mlt::Geometry *m_geom;
     KeyframeHelper *m_helper;
     QGraphicsPathItem *m_path;
     QMenu *m_scaleMenu;
     QMenu *m_alignMenu;
-
+    QAction *m_syncAction;
+    QPoint m_frameSize;
+    bool m_fixedMode;
     void updateTransitionPath();
+    Ui::GeometryPosition_UI *m_view;
 
 public slots:
     void setupParam(const QDomElement&, int, int);
@@ -62,7 +67,7 @@ public slots:
 private slots:
     void slotNextFrame();
     void slotPreviousFrame();
-    void slotPositionChanged(int pos);
+    void slotPositionChanged(int pos, bool seek = true);
     void slotDeleteFrame();
     void slotAddFrame();
     void slotUpdateTransitionProperties();
@@ -70,6 +75,8 @@ private slots:
     void slotResize50();
     void slotResize100();
     void slotResize200();
+    void slotResizeCustom();
+    void slotResizeOriginal();
     void slotAlignRight();
     void slotAlignLeft();
     void slotAlignTop();
@@ -77,9 +84,13 @@ private slots:
     void slotAlignCenter();
     void slotAlignHCenter();
     void slotAlignVCenter();
+    void slotSyncCursor();
+    void slotGeometry();
+    void slotResetPosition();
 
 signals:
     void parameterChanged();
+    void seekToPos(int);
 };
 
 #endif