]> git.sesse.net Git - kdenlive/blobdiff - src/beziercurve/beziersplineeditor.h
Bezier Spline:
[kdenlive] / src / beziercurve / beziersplineeditor.h
index 1c8229d0b8b17bc7ed5e848fba48677c72707a99..cccb47aa91f18f3a485b3b08a5e3fc0379a947e2 100644 (file)
@@ -30,6 +30,7 @@ class BezierSplineEditor : public QWidget
 
 public:
     BezierSplineEditor(QWidget* parent = 0);
+    virtual ~BezierSplineEditor();
 
     CubicBezierSpline spline();
     void setSpline(const CubicBezierSpline &spline);
@@ -37,6 +38,15 @@ public:
     BPoint getCurrentPoint();
     void updateCurrentPoint(const BPoint &p);
 
+    int gridLines();
+    void setGridLines(int lines);
+
+    void setPixmap(const QPixmap &pixmap);
+
+public slots:
+    void slotZoomIn();
+    void slotZoomOut();
+
 protected:
     //void keyPressEvent(QKeyEvent *event);
     void paintEvent(QPaintEvent *event);
@@ -51,12 +61,19 @@ private:
     enum modes { ModeDrag, ModeNormal };
     enum point_types { PTypeH1, PTypeP, PTypeH2 };
     modes m_mode;
+    int m_zoomLevel;
+    int m_gridLines;
+    QPixmap m_pixmap;
+    QPixmap *m_pixmapCache;
+    bool m_pixmapIsDirty;
+
     int m_currentPointIndex;
     point_types m_currentPointType;
     double m_grabOffsetX;
     double m_grabOffsetY;
-    double m_grabOriginalX;
-    double m_grabOriginalY;
+    BPoint m_grabPOriginal;
+    BPoint m_grabPNext;
+    BPoint m_grabPPrevious;
     //QPointF m_draggedAwayPoint;
     //int m_draggedAwayPointIndex;