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

Private GIT Repository
correct relative positionning of source/group
[blast.git] / GroupWidget.cpp
index 1446a137536f1fff029935bbb83e9a4e0c0ae2f5..0705632c241d51757658fd6768a23567f79e0607 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();
+
 }
 
 
@@ -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()) {