X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fgeometryval.h;h=9cab925fda883028e7611a269acf1f682a3e14ae;hb=a9dba70224dbabb7de8bcfa824829013197a481b;hp=cd4757029d460a4836223a771e4df82d3020dff3;hpb=86f48752dddaf2157dc7cf94a2ef96ae53049c1e;p=kdenlive diff --git a/src/geometryval.h b/src/geometryval.h index cd475702..9cab925f 100644 --- a/src/geometryval.h +++ b/src/geometryval.h @@ -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,38 +36,65 @@ 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); + virtual ~Geometryval(); QDomElement getParamDesc(); + void setFrameSize(QPoint p); 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_configMenu; + QMenu *m_scaleMenu; + QMenu *m_alignMenu; + QAction *m_syncAction; + QAction *m_editGeom; + bool m_fixedMode; + QPoint m_frameSize; + Ui::GeometryPosition_UI m_view; void updateTransitionPath(); public slots: - void setupParam(const QDomElement&, int, int); + void setupParam(const QDomElement, int, int); private slots: void slotNextFrame(); void slotPreviousFrame(); - void slotPositionChanged(int pos); - void slotDeleteFrame(); - void slotAddFrame(); + void slotPositionChanged(int pos, bool seek = true); + void slotDeleteFrame(int pos = -1); + void slotAddFrame(int pos = -1); void slotUpdateTransitionProperties(); void slotTransparencyChanged(int transp); + void slotResize50(); + void slotResize100(); + void slotResize200(); + void slotResizeCustom(); + void slotResizeOriginal(); + void slotAlignRight(); + void slotAlignLeft(); + void slotAlignTop(); + void slotAlignBottom(); + void slotAlignCenter(); + void slotAlignHCenter(); + void slotAlignVCenter(); + void slotSyncCursor(); + void slotGeometry(); + void slotResetPosition(); + void slotKeyframeMoved(int); signals: void parameterChanged(); + void seekToPos(int); }; #endif