1 /***************************************************************************
2 geomeytrval.h - description
5 copyright : (C) 2008 by Marco Gittler
6 email : g.marco@freenet.de
7 ***************************************************************************/
9 /***************************************************************************
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
16 ***************************************************************************/
23 #include <QDomElement>
24 #include <QGraphicsPathItem>
25 #include <QGraphicsView>
27 #include <mlt++/Mlt.h>
29 #include "ui_geometryval_ui.h"
30 #include "definitions.h"
31 #include "keyframehelper.h"
32 #include "ui_geometryposition_ui.h"
34 //class QGraphicsScene;
35 class GraphicsSceneRectMove;
36 class QGraphicsRectItem;
40 class Geometryval : public QWidget, public Ui::Geometryval
44 explicit Geometryval(const MltVideoProfile profile, QPoint frame_size, QWidget* parent = 0);
45 virtual ~Geometryval();
46 QDomElement getParamDesc();
47 QString getValue() const;
48 void setFrameSize(QPoint p);
51 MltVideoProfile m_profile;
53 GraphicsSceneRectMove *m_scene;
54 QGraphicsRectItem *m_paramRect;
55 Mlt::Geometry *m_geom;
56 KeyframeHelper *m_helper;
57 QGraphicsPathItem *m_path;
61 QAction *m_syncAction;
65 Ui::GeometryPosition_UI m_view;
66 void updateTransitionPath();
68 QGraphicsView *m_sceneview;
71 void setupParam(const QDomElement, int, int);
75 void slotPreviousFrame();
76 void slotPositionChanged(int pos, bool seek = true);
77 void slotDeleteFrame(int pos = -1);
78 void slotAddFrame(int pos = -1);
79 void slotUpdateTransitionProperties();
80 void slotTransparencyChanged(int transp);
84 void slotResizeCustom();
85 void slotResizeOriginal();
86 void slotAlignRight();
89 void slotAlignBottom();
90 void slotAlignCenter();
91 void slotAlignHCenter();
92 void slotAlignVCenter();
93 void slotSyncCursor();
95 void slotResetPosition();
96 void slotKeyframeMoved(int);
99 void parameterChanged();