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

Private GIT Repository
add clk/rst to groups
[blast.git] / GroupWidget.cpp
index 1446a137536f1fff029935bbb83e9a4e0c0ae2f5..54cdfc13dd62d31465e0d6a747c9e44d9bf5b7ab 100644 (file)
@@ -41,7 +41,13 @@ GroupWidget::GroupWidget(GroupWidget *_upperGroup, Dispatcher *_dispatcher,
 
 }
 
-GroupWidget::~GroupWidget(){}
+GroupWidget::~GroupWidget(){
+  static QString fctName = "GroupWidget::~GroupWidget()";
+#ifdef DEBUG_FCTNAME
+  cout << "call to " << qPrintable(fctName) << endl;
+#endif  
+  // delete scene; // TO DO: must check if it is needed
+}
 
 void GroupWidget::changeConnectionMode(int mode) {
   /*
@@ -95,6 +101,7 @@ void GroupWidget::focusInEvent(QFocusEvent *e) {
 void GroupWidget::closeEvent(QCloseEvent *e) {
   clearFocus();
   focusNextChild();
+
 }
 
 
@@ -147,28 +154,28 @@ void GroupWidget::createActions() {
 void GroupWidget::createToolbar() {
   toolbarEditMode = new QToolBar(tr("Mode"));
   toolbarAdd = new QToolBar(tr("Group"));
-  toolbarTools = new QToolBar(tr("Tools"));
+  //toolbarTools = new QToolBar(tr("Tools"));
 
   toolbarEditMode->addWidget(new QLabel("Mode"));
-  toolbarTools->addWidget(new QLabel("Tools"));
+  //toolbarTools->addWidget(new QLabel("Tools"));
 
   toolbarEditMode->addSeparator();
-  toolbarTools->addSeparator();
+  //toolbarTools->addSeparator();
 
   toolbarEditMode->addWidget(butAddConnection);
   toolbarEditMode->addWidget(butEdit);
 
-  toolbarAdd->addAction(copyBlockAct);
+  //toolbarAdd->addAction(copyBlockAct);
   toolbarAdd->addAction(newEmptyGroupAct);
   toolbarAdd->addAction(newGroupAct);
 
-  toolbarTools->addAction(deleteAct);
-  toolbarTools->addAction(selectAllAct);
-  toolbarTools->addAction(unselectAllAct);
+  //toolbarTools->addAction(deleteAct);
+  //toolbarTools->addAction(selectAllAct);
+  //toolbarTools->addAction(unselectAllAct);
 
   layout->addWidget(toolbarEditMode,0,0);
   layout->addWidget(toolbarAdd,0,1);
-  layout->addWidget(toolbarTools,0,2);
+  //layout->addWidget(toolbarTools,0,2);
 }
 
 void GroupWidget::slotEdit() {
@@ -178,9 +185,9 @@ void GroupWidget::slotEdit() {
 }
 
 void GroupWidget::slotCopyBlock() {
-  foreach (BoxItem *item, params->getCurrentScene()->getBlockItems()) {
+  foreach (BoxItem *item, params->getCurrentScene()->getBoxItems()) {
     if(item->isSelected()){
-      dispatcher->duplicateBlock(item);
+      dispatcher->duplicateBoxItem(item);
     }
   }
 }
@@ -222,13 +229,8 @@ void GroupWidget::updateBlockButton() {
 
 void GroupWidget::slotNewEmptyGroup() {
 
-  // creating the GroupBlock in graph model
-  GroupBlock* groupBlock = params->addGroupBlock();
-  // creating the BlockItem in the inner scene
-  BoxItem* block = new BoxItem(groupBlock, dispatcher, params, scene->getGroupItem());
+  dispatcher->addNewEmptyGroup(scene);
 
-  GroupWidget* child = dispatcher->createChildScene(this,block);
-  child->show();
 }
 
 void GroupWidget::slotNewGroup()
@@ -237,9 +239,9 @@ void GroupWidget::slotNewGroup()
 }
 
 void GroupWidget::slotDeleteItems() {
-  foreach (BoxItem *item, scene->getBlockItems()) {
+  foreach (BoxItem *item, scene->getBoxItems()) {
     if(item->isSelected()){
-      dispatcher->removeBlock(item);
+      dispatcher->removeBoxItem(item);
     }
   }
   foreach (ConnectionItem *item, scene->getConnectionItems()) {