]> SALOME platform Git repositories - modules/shaper.git/commitdiff
Salome HOME
Update of actions in the tool bar by click in the viewer when the sketch is active...
authornds <natalia.donis@opencascade.com>
Tue, 14 Jul 2015 12:52:37 +0000 (15:52 +0300)
committernds <natalia.donis@opencascade.com>
Tue, 14 Jul 2015 12:53:18 +0000 (15:53 +0300)
src/PartSet/PartSet_Validators.cpp
src/XGUI/XGUI_ActionsMgr.cpp

index 36606361e985b666f2598f202dad6cab3816ddff..29afcf8d0af7e8346b5a40d0f7556e8158351e86 100644 (file)
@@ -36,7 +36,7 @@
 
 int shapesNbPoints(const ModuleBase_ISelection* theSelection)
 {
-  QList<ModuleBase_ViewerPrs> aList = theSelection->getSelected();  
+  QList<ModuleBase_ViewerPrs> aList = theSelection->getSelected(ModuleBase_ISelection::Viewer);
   int aCount = 0;
   foreach (ModuleBase_ViewerPrs aPrs, aList) {
     const TopoDS_Shape& aShape = aPrs.shape();
@@ -50,7 +50,7 @@ int shapesNbPoints(const ModuleBase_ISelection* theSelection)
 
 int shapesNbLines(const ModuleBase_ISelection* theSelection)
 {
-  QList<ModuleBase_ViewerPrs> aList = theSelection->getSelected();
+  QList<ModuleBase_ViewerPrs> aList = theSelection->getSelected(ModuleBase_ISelection::Viewer);
   int aCount = 0;
   foreach(ModuleBase_ViewerPrs aPrs, aList) {
     const TopoDS_Shape& aShape = aPrs.shape();
@@ -94,7 +94,7 @@ bool PartSet_ParallelSelection::isValid(const ModuleBase_ISelection* theSelectio
 
 bool PartSet_RadiusSelection::isValid(const ModuleBase_ISelection* theSelection) const
 {
-  QList<ModuleBase_ViewerPrs> aList = theSelection->getSelected();
+  QList<ModuleBase_ViewerPrs> aList = theSelection->getSelected(ModuleBase_ISelection::Viewer);
   ModuleBase_ViewerPrs aPrs;
   int aCount = 0;
   foreach (ModuleBase_ViewerPrs aPrs, aList) {
@@ -115,7 +115,7 @@ bool PartSet_RadiusSelection::isValid(const ModuleBase_ISelection* theSelection)
 
 bool PartSet_RigidSelection::isValid(const ModuleBase_ISelection* theSelection) const
 {
-  QList<ModuleBase_ViewerPrs> aList = theSelection->getSelected();  
+  QList<ModuleBase_ViewerPrs> aList = theSelection->getSelected(ModuleBase_ISelection::Viewer);
   return (aList.count() == 1);
 }
 
@@ -140,7 +140,7 @@ bool PartSet_FilletSelection::isValid(const ModuleBase_ISelection* theSelection)
 
 bool PartSet_TangentSelection::isValid(const ModuleBase_ISelection* theSelection) const
 {
-  QList<ModuleBase_ViewerPrs> aList = theSelection->getSelected();
+  QList<ModuleBase_ViewerPrs> aList = theSelection->getSelected(ModuleBase_ISelection::Viewer);
   if ((aList.size() == 0) || (aList.size() > 2))
     return false;
 
index beb901ee024620513e23f4df25c9aefc733c84c4..83d3e09b0b02d854ee2033be34a3819cbf703e77 100644 (file)
@@ -140,7 +140,8 @@ void XGUI_ActionsMgr::updateOnViewSelection()
 
   //QString aFeatureId = QString::fromStdString(anActiveFeature->getKind());
   XGUI_Selection* aSelection = myWorkshop->selector()->selection();
-  if (aSelection->getSelected().size() == 0) {
+  // only viewer selection is processed
+  if (aSelection->getSelected(ModuleBase_ISelection::Viewer).size() == 0) {
     // it seems that this code is not nesessary anymore. It leads to incorrect case:
     // sketch operation start, click in any place in the viewer. The result is all nested
     // entities are enabled(but the sketch plane is not selected yet). Any sketch operation