]> SALOME platform Git repositories - modules/shaper.git/blobdiff - src/ModuleBase/ModuleBase_Operation.cpp
Salome HOME
Merge branch 'Dev_0.6.1' of newgeom:newgeom into Dev_0.6.1
[modules/shaper.git] / src / ModuleBase / ModuleBase_Operation.cpp
index 516430bd04270fdf20b6874a86eb30022d7cb6b5..301fbcca5f8da76c26bc5b829f0f55d7f810870c 100644 (file)
@@ -171,6 +171,7 @@ void ModuleBase_Operation::start()
 
   startOperation();
   emit started();
+
 }
 
 void ModuleBase_Operation::postpone()
@@ -232,16 +233,16 @@ void ModuleBase_Operation::setRunning(bool theState)
   }
 }
 
-bool ModuleBase_Operation::activateByPreselection()
+void ModuleBase_Operation::activateByPreselection()
 {
   if (!myPropertyPanel || myPreSelection.empty()) {
     myPropertyPanel->activateNextWidget(NULL);
-    return false;
+    return;
   }
   const QList<ModuleBase_ModelWidget*>& aWidgets = myPropertyPanel->modelWidgets();
   if (aWidgets.empty()) {
     myPropertyPanel->activateNextWidget(NULL);
-    return false;
+    return;
   }
   
   ModuleBase_ModelWidget* aWgt, *aFilledWgt = 0;
@@ -266,14 +267,10 @@ bool ModuleBase_Operation::activateByPreselection()
     }
   }
 
-  if (aFilledWgt) {
-    myPropertyPanel->activateNextWidget(aFilledWgt);
+  myPropertyPanel->activateNextWidget(aFilledWgt);
+  if (aFilledWgt)
     emit activatedByPreselection();
-    return true;
-  }
-  else
-    myPropertyPanel->activateNextWidget(NULL);
-  return false;
+
 }
 
 void ModuleBase_Operation::initSelection(ModuleBase_ISelection* theSelection,
@@ -357,6 +354,11 @@ void ModuleBase_Operation::setPropertyPanel(ModuleBase_IPropertyPanel* theProp)
   myPropertyPanel->setEditingMode(isEditOperation());
   //connect(myPropertyPanel, SIGNAL(widgetActivated(ModuleBase_ModelWidget*)), this,
   //        SLOT(onWidgetActivated(ModuleBase_ModelWidget*)));
+
+  // Do not activate widgets by default if the current operation is editing operation
+  // Because we don't know which widget is going to be edited. 
+  if (!isEditOperation())
+    activateByPreselection();
 }
 
 bool ModuleBase_Operation::isGranted(QString theId) const