aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmldesigner/components/curveeditor/detail/graphicsscene.h
diff options
context:
space:
mode:
authorKnud Dollereder <knud.dollereder@qt.io>2020-04-06 11:22:30 +0200
committerKnud Dollereder <knud.dollereder@qt.io>2020-04-06 10:45:28 +0000
commit7e76a764025a9aabfae92830bf78cd748ab4d8a0 (patch)
tree02b1b91b5ed17717f3582dc982df23c5c29447d3 /src/plugins/qmldesigner/components/curveeditor/detail/graphicsscene.h
parent93e788fd196bf90ea10ff8621ae6233f26d44e0e (diff)
Refactor GraphicsScene and Graphicsview
Make sure to deselect keyframes when clicking on an unselected handle Task-number: QDS-1033 Change-Id: I2b98188237f8a0618e6ff3e64280091583112196 Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Diffstat (limited to 'src/plugins/qmldesigner/components/curveeditor/detail/graphicsscene.h')
-rw-r--r--src/plugins/qmldesigner/components/curveeditor/detail/graphicsscene.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/plugins/qmldesigner/components/curveeditor/detail/graphicsscene.h b/src/plugins/qmldesigner/components/curveeditor/detail/graphicsscene.h
index 44936a76bd..3ee50672ba 100644
--- a/src/plugins/qmldesigner/components/curveeditor/detail/graphicsscene.h
+++ b/src/plugins/qmldesigner/components/curveeditor/detail/graphicsscene.h
@@ -45,6 +45,8 @@ signals:
public:
GraphicsScene(QObject *parent = nullptr);
+ ~GraphicsScene() override;
+
bool empty() const;
bool hasActiveKeyframe() const;
@@ -53,6 +55,8 @@ public:
bool hasActiveItem() const;
+ bool hasSelectedKeyframe() const;
+
double minimumTime() const;
double maximumTime() const;
@@ -61,6 +65,28 @@ public:
double maximumValue() const;
+ QRectF rect() const;
+
+ QVector<CurveItem *> curves() const;
+
+ QVector<CurveItem *> selectedCurves() const;
+
+ QVector<KeyframeItem *> keyframes() const;
+
+ QVector<KeyframeItem *> selectedKeyframes() const;
+
+ QVector<HandleItem *> handles() const;
+
+ CurveItem *findCurve(unsigned int id) const;
+
+ SelectableItem *intersect(const QPointF &pos) const;
+
+ void reset();
+
+ void deleteSelectedKeyframes();
+
+ void insertKeyframe(double time, bool all = false);
+
void doNotMoveItems(bool tmp);
void addCurveItem(CurveItem *item);
@@ -85,10 +111,16 @@ protected:
private:
using QGraphicsScene::addItem;
+ using QGraphicsScene::clear;
+
+ using QGraphicsScene::removeItem;
+
GraphicsView *graphicsView() const;
QRectF limits() const;
+ QVector<CurveItem *> m_curves;
+
mutable bool m_dirty;
mutable QRectF m_limits;