Salome HOME
Get rid of compilation warnings. Part II. MSVC warnings.
[modules/shaper.git] / src / CollectionPlugin / CollectionPlugin_WidgetField.cpp
index e7e400d37c13971ad91b57aa62f35f78fc2ea9d5..adf20b11da7b8ea830baea0fa6fc5d1d6a2cc9be 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2014-2017  CEA/DEN, EDF R&D
+// Copyright (C) 2014-2020  CEA/DEN, EDF R&D
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 //
 // You should have received a copy of the GNU Lesser General Public
 // License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or
-// email : webmaster.salome@opencascade.com<mailto:webmaster.salome@opencascade.com>
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 
 #include "CollectionPlugin_WidgetField.h"
@@ -499,7 +498,6 @@ bool CollectionPlugin_WidgetField::storeValueCustom()
       }
     }
   }
-  updateObject(myFeature);
   return true;
 }
 
@@ -600,9 +598,9 @@ bool CollectionPlugin_WidgetField::restoreValueCustom()
       }
     }
     // Restore columns width
-    for (int i = 0; i < aTable->columnCount(); i++) {
-      if (i < aColWidth.size())
-        aTable->setColumnWidth(i, aColWidth.at(i));
+    for (int col = 0; col < aTable->columnCount(); col++) {
+      if (col < aColWidth.size())
+        aTable->setColumnWidth(col, aColWidth.at(col));
     }
 
     aTable->blockSignals(isBlocked);
@@ -968,7 +966,7 @@ void CollectionPlugin_WidgetField::onTableEdited(int theRow, int theCol)
 //**********************************************************************************
 void CollectionPlugin_WidgetField::onShapeTypeChanged(int theType)
 {
-  activateSelectionAndFilters(theType == 5? false:true);
+  updateSelectionModesAndFilters(theType == 5? false:true);
 
   AttributeSelectionListPtr aSelList =
     myFeature->data()->selectionList(CollectionPlugin_Field::SELECTED_ID());
@@ -977,12 +975,16 @@ void CollectionPlugin_WidgetField::onShapeTypeChanged(int theType)
   if (aTypeName == aSelList->selectionType())
     return;
   aSelList->setSelectionType(aTypeName);
+  // Updated event has to be sent here in case if type of shapes
+  // was changed from Part to any other in order to updater Apply button status
+  myFeature->data()->sendAttributeUpdated(aSelList.get());
 
   //Clear old selection
   clearData();
   aSelList->clear();
   AttributeTablesPtr aTablesAttr = myFeature->data()->tables(CollectionPlugin_Field::VALUES_ID());
   aTablesAttr->setSize(1, myNbComponentsSpn->value(), myDataTblList.size());
+  updateObject(myFeature);
   emit valuesChanged();
 }