]> git.sesse.net Git - kdenlive/commitdiff
usable window now, now get the params
authorMarco Gittler <marco@gitma.de>
Mon, 4 Aug 2008 18:43:27 +0000 (18:43 +0000)
committerMarco Gittler <marco@gitma.de>
Mon, 4 Aug 2008 18:43:27 +0000 (18:43 +0000)
svn path=/branches/KDE4/; revision=2361

src/geometryval.cpp
src/geometryval.h

index bf01ff524d69f18edc539aa2a0a7877689cfcb28..5bde4d11b2f3e73e589b77588f5a4a073d0bdd22 100644 (file)
 #include <QGraphicsScene>
 #include "graphicsscenerectmove.h"
 #include <QGraphicsRectItem>
+#include <QMouseEvent>
+#include <KDebug>
 
 Geometryval::Geometryval(QWidget* parent): QWidget(parent) {
     ui.setupUi(this);
     QVBoxLayout* vbox = new QVBoxLayout(this);
     ui.widget->setLayout(vbox);
     QGraphicsView *view = new QGraphicsView(this);
-    //view->setBackgroundBrush(QBrush(QColor(0,0,0)));
+    view->setBackgroundBrush(QBrush(QColor(0, 0, 0)));
     vbox->addWidget(view);
 
     ui.frame->setTickPosition(QSlider::TicksBelow);
@@ -36,22 +38,34 @@ Geometryval::Geometryval(QWidget* parent): QWidget(parent) {
     scene = new GraphicsSceneRectMove(this);
     scene->setTool(TITLE_SELECT);
     view->setScene(scene);
-
-    QGraphicsRectItem *m_frameBorder = new QGraphicsRectItem(QRectF(-40, -30, 40, 30));
+    double aspect = 4.0 / 3.0; //change to project val
+    QGraphicsRectItem *m_frameBorder = new QGraphicsRectItem(QRectF(0, 0, 100.0*aspect, 100));
     m_frameBorder->setZValue(-1100);
-    m_frameBorder->setBrush(QColor(255, 255, 255, 0));
-
+    //m_frameBorder->setBrush(QColor(255, 255, 0, 255));
+    m_frameBorder->setPen(QPen(QBrush(QColor(255, 255, 255, 255)), 1.0, Qt::DashLine));
     scene->addItem(m_frameBorder);
 
-    QGraphicsRectItem *m_frameBorder1 = new QGraphicsRectItem(QRectF(-30, -20, 30, 20));
+    paramRect = new QGraphicsRectItem(QRectF(20.0*aspect, 20, 80*aspect, 80));
 
-    m_frameBorder1->setZValue(0);
-    m_frameBorder1->setBrush(QColor(255, 0, 0, 0));
+    paramRect->setZValue(0);
+    //m_frameBorder1->setBrush(QColor(255, 0, 0, 0));
+    paramRect->setPen(QPen(QBrush(QColor(255, 0, 0, 255)), 1.0));
 
-    scene->addItem(m_frameBorder1);
+    scene->addItem(paramRect);
+
+    scene->setSceneRect(-100.0*aspect, -100, 300.0*aspect, 300);
+}
 
-    scene->setSceneRect(-80, -60, 80, 60);
+void Geometryval::mouseMoveEvent(QMouseEvent *event) {
+    //if (event->button())
+    kDebug() << paramRect->rect();
 }
-QDomElement Geometryval::getParamDesc() {}
 
-void Geometryval::setupParam(const QDomElement&, const QString& paramName, int, int) {}
+QDomElement Geometryval::getParamDesc() {
+    return param;
+}
+
+void Geometryval::setupParam(const QDomElement& par, const QString& paramName, int minFrame, int maxFrame) {
+    param = par;
+    ui.frame->setRange(minFrame, maxFrame);
+}
index 7189269a0dbe81aee829344e9fee5bad74dc323b..c254d054c26af2080081631d2bc8454ba2497847 100644 (file)
@@ -25,6 +25,9 @@
 
 //class QGraphicsScene;
 class GraphicsSceneRectMove;
+class QGraphicsRectItem;
+class QMouseEvent;
+
 class Geometryval : public QWidget {
 public:
     Geometryval(QWidget* parent = 0);
@@ -33,8 +36,12 @@ private:
     Ui::Geometryval ui;
     //QGraphicsScene* scene;
     GraphicsSceneRectMove *scene;
+    QDomElement param;
+    QGraphicsRectItem *paramRect;
 public slots:
     void setupParam(const QDomElement&, const QString& paramName, int, int);
+protected:
+    virtual void mouseMoveEvent(QMouseEvent *event);
 signals:
     void parameterChanged();
 };