X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/blast.git/blobdiff_plain/0d3590739ff5a4ca9e87c052ac142f5d1d3a68ab..2bdaa0aa3fab52f0808f60d9bbdabcd56d0efae9:/GroupScene.h?ds=sidebyside diff --git a/GroupScene.h b/GroupScene.h index 19185a1..211d9d7 100644 --- a/GroupScene.h +++ b/GroupScene.h @@ -10,6 +10,7 @@ class Parameters; class AbstractBlock; class GroupWidget; class GroupItem; +#include "BoxItem.h" class BoxItem; class SourceItem; class AbstractBoxItem; @@ -42,14 +43,18 @@ public: - AddGroup: while a new group (empty or from selected blocks) is created - ItemEdtion: can move/resize blocks/interfaces, remove blocks/interface/group, ... */ - enum EditMode { InitState, AddBlock, AddConnection, AddGroup, ItemEdition }; + enum EditMode { InitState, AddConnection, ItemEdition }; + GroupScene(GroupScene* _parentScene, GroupWidget* _window, Dispatcher* _dispatcher, Parameters* _params, bool topScene = false, QObject *parent = 0); ~GroupScene(); + //void mouseMoveEvent(QGraphicsSceneMouseEvent *event); + // attributes getters inline GroupItem* getGroupItem() {return groupItem;} inline QList getBoxItems() { return boxItems; } + inline QList getSourceItems() { return sourceItems; } inline QList getConnectionItems() { return connectionItems; } inline QList getChildrenScene() { return childrenScene; } inline GroupScene* getParentScene() { return parentScene; } @@ -71,12 +76,12 @@ public: // others // BoxItem related - BoxItem* createBoxItem(AbstractBlock* block); //! create a new BoxItem and place it at the center of the scene + BoxItem* createBoxItem(AbstractBlock* block, BoxItem::Position position = BoxItem::Free, int lock = AbstractBoxItem::NoLock, BoxItem::SpanType span = BoxItem::NoSpan); //! create a new BoxItem and place it at the center of the scene void addBoxItem(BoxItem* item); //! add an already configured BoxItem in the scene. void removeBoxItem(BoxItem* item); // ConnectionItem related - void createConnectionItem(InterfaceItem* iface1, InterfaceItem* iface2, bool withinGroup = true); + void createConnectionItem(InterfaceItem* iface1, InterfaceItem* iface2, bool visible = true); ConnectionItem* searchConnectionItem(InterfaceItem* iface1, InterfaceItem* iface2); void addConnectionItem(ConnectionItem* item); void removeConnectionItem(ConnectionItem* item);