YARP
Yet Another Robot Platform
 
Loading...
Searching...
No Matches
builderscene.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2006-2021 Istituto Italiano di Tecnologia (IIT)
3 * SPDX-License-Identifier: LGPL-2.1-or-later
4 */
5
6#ifndef BUILDERSCENE_H
7#define BUILDERSCENE_H
8
9#include <QGraphicsScene>
10#include <QGraphicsSceneDragDropEvent>
11#include <yarp/conf/compiler.h>
12
13class CustomView;
14class BuilderWindow;
15
16class BuilderScene : public QGraphicsScene
17{
18 friend class CustomView;
19 friend class BuilderWindow;
20 Q_OBJECT
21public:
22 explicit BuilderScene(QObject *parent = 0);
23
24
25private:
26 QGraphicsLineItem *currentLine;
27 QPointF startingPoint;
28 QGraphicsItem *startConnectionItem;
29 QGraphicsItem *endConnectionItem;
30
31protected:
32 bool snap;
34
35
36protected:
37 void dragEnterEvent(QGraphicsSceneDragDropEvent *event) override;
38 void dropEvent(QGraphicsSceneDragDropEvent *event) override;
39 void dragMoveEvent(QGraphicsSceneDragDropEvent *event) override;
40 void mouseMoveEvent(QGraphicsSceneMouseEvent *event) override;
41 void mousePressEvent(QGraphicsSceneMouseEvent *event) override;
42 void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) override;
43 //void wheelEvent(QGraphicsSceneWheelEvent *event) override;
44
45signals:
46 void addedApplication(void *app,QPointF);
47 void addedModule(void *mod,QPointF);
48 void addNewConnection(void *start, void *end);
49
50public slots:
51 void snapToGrid(bool snap);
52 void onNewConnectionRequested(QPointF, QGraphicsItem *item);
53 void onNewConnectionAdded(QPointF, QGraphicsItem *item);
54 void onSceneChanged(QList<QRectF> rects);
55
56};
57
58#endif // BUILDERSCENE_H
void dragMoveEvent(QGraphicsSceneDragDropEvent *event) override
void onNewConnectionRequested(QPointF, QGraphicsItem *item)
void dragEnterEvent(QGraphicsSceneDragDropEvent *event) override
void addedModule(void *mod, QPointF)
void mouseMoveEvent(QGraphicsSceneMouseEvent *event) override
void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) override
void dropEvent(QGraphicsSceneDragDropEvent *event) override
void addNewConnection(void *start, void *end)
void snapToGrid(bool snap)
void onSceneChanged(QList< QRectF > rects)
void mousePressEvent(QGraphicsSceneMouseEvent *event) override
void onNewConnectionAdded(QPointF, QGraphicsItem *item)
void addedApplication(void *app, QPointF)