]> AND Private Git Repository - blast.git/blobdiff - AbstractBoxItem.h
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
nearly finished GroupBlock VHDL gen
[blast.git] / AbstractBoxItem.h
index 132adc996f7f1ef979c4d97932adbff30713841e..fb2bdcc594feb1278af6ad9635ec84f131bac452 100644 (file)
@@ -14,6 +14,10 @@ class AbstractBlock;
 class GroupScene;
 class ConnectedInterface;
 
 class GroupScene;
 class ConnectedInterface;
 
+#define ABI_TO_BI(ptr) ((BoxItem*)ptr)
+#define ABI_TO_GI(ptr) ((GroupItem*)ptr)
+#define ABI_TO_SI(ptr) ((SourceItem*)ptr)
+
 class AbstractBoxItem : public QGraphicsItem {
 
 public:  
 class AbstractBoxItem : public QGraphicsItem {
 
 public:  
@@ -59,11 +63,11 @@ public:
   bool isInterfaces(int orientation) const;
 
   // others
   bool isInterfaces(int orientation) const;
 
   // others
-
+  QRectF boundingRectInScene();
   virtual void nameChanged() = 0; // called when an interface or box name have changed
   virtual void nameChanged() = 0; // called when an interface or box name have changed
-  void addInterface(InterfaceItem* i, bool resetPosition = false);
-  void removeInterface(InterfaceItem* i);
-  void resetInterfacesPosition();
+  void addInterfaceItem(InterfaceItem* i, bool resetPosition = false);
+  void removeInterfaceItem(InterfaceItem* i);
+  void resetInterfaceItemsPosition();
   /*!
    * \brief moveInterfaceTo
    * \param pos the new position (in scene) of the interface
   /*!
    * \brief moveInterfaceTo
    * \param pos the new position (in scene) of the interface
@@ -71,7 +75,7 @@ public:
    * This method is called when user moves an InterfaceItem.
    * see BoxItem::mouseMoveEvent() and GroupItem::mouseMoveEvent()
    */
    * This method is called when user moves an InterfaceItem.
    * see BoxItem::mouseMoveEvent() and GroupItem::mouseMoveEvent()
    */
-  void moveInterfaceTo(QPointF pos);
+  void moveInterfaceItemTo(QPointF pos);
   /*!
    * \brief updateInterfacesAndConnections
    *
   /*!
    * \brief updateInterfacesAndConnections
    *
@@ -86,11 +90,11 @@ public:
    * that is called in this method. Thus, there is no need to call update() after the termination of
    * this method.
    */
    * that is called in this method. Thus, there is no need to call update() after the termination of
    * this method.
    */
-  void updateInterfacesAndConnections();
+  void updateInterfaceAndConnectionItems();
 
 
-  InterfaceItem *searchInterfaceByName(QString name);
-  InterfaceItem *searchInterfaceByRef(ConnectedInterface* ref);
-  InterfaceItem* getInterfaceFromCursor(qreal x, qreal y);  
+  InterfaceItem *searchInterfaceItemByName(QString name);
+  InterfaceItem *searchInterfaceItemByRef(ConnectedInterface* ref);
+  InterfaceItem* getInterfaceItemFromCursor(qreal x, qreal y);  
 
 protected: 
   Dispatcher *dispatcher;
 
 protected: 
   Dispatcher *dispatcher;
@@ -132,8 +136,9 @@ protected:
   /* pure virtual method inherited from QGraphicsItem :
     virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0) =0;
     virtual QRectF boundingRect() const =0;
   /* pure virtual method inherited from QGraphicsItem :
     virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0) =0;
     virtual QRectF boundingRect() const =0;
-  */
-  void initInterfaces();
+  */   
+  
+  void initInterfaceItems();
   int nbInterfacesByOrientation(int orientation);
 };
 
   int nbInterfacesByOrientation(int orientation);
 };