Salome HOME
Copyright update 2022
[modules/shaper.git] / src / CollectionPlugin / CollectionPlugin_WidgetField.cpp
index 235a45d390528d0a3969b87ccaaa67410a15193d..a868ecae4ea830cc43b1977c9954dea7113cc5ec 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2014-2017  CEA/DEN, EDF R&D
+// Copyright (C) 2014-2022  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"
@@ -579,9 +578,9 @@ bool CollectionPlugin_WidgetField::restoreValueCustom()
           // Add selection names
           AttributeSelectionPtr aAttr = aSelList->value(k - 1);
           if (aItem) {
-            aItem->setText(aAttr->namingName().c_str());
+            aItem->setText(QString::fromStdWString(aAttr->namingName()));
           } else {
-            aItem = new QTableWidgetItem(aAttr->namingName().c_str());
+            aItem = new QTableWidgetItem(QString::fromStdWString(aAttr->namingName()));
             aTable->setItem(k, j, aItem);
           }
         } else if (j > 0) {
@@ -599,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);
@@ -770,8 +769,8 @@ void CollectionPlugin_WidgetField::onAddStep()
           aTable->setItem(j, i, aItem);
         }
         AttributeSelectionPtr aAttr = aSelList->value(j - 1);
-        aItem->setText(aAttr->namingName().c_str());
-        aItem->setToolTip(aAttr->namingName().c_str());
+        aItem->setText(QString::fromStdWString(aAttr->namingName()));
+        aItem->setToolTip(QString::fromStdWString(aAttr->namingName()));
       }
     } else {
       QString aDefVal = aTable->item(0, i)->text();
@@ -886,8 +885,8 @@ bool CollectionPlugin_WidgetField::
               aTable->setItem(j, i, aItem);
             }
             AttributeSelectionPtr aAttr = aSelList->value(j - 1);
-            aItem->setText(aAttr->namingName().c_str());
-            aItem->setToolTip(aAttr->namingName().c_str());
+            aItem->setText(QString::fromStdWString(aAttr->namingName()));
+            aItem->setToolTip(QString::fromStdWString(aAttr->namingName()));
           }
         } else {
           QString aDefVal = aTable->item(0, i)->text();
@@ -905,8 +904,8 @@ bool CollectionPlugin_WidgetField::
       // Update only selection name
       for(int j = 1; j < aNewRows - 1; j++) {
         AttributeSelectionPtr aAttr = aSelList->value(j);
-        aTable->item(j, 0)->setText(aAttr->namingName().c_str());
-        aTable->item(j, 0)->setToolTip(aAttr->namingName().c_str());
+        aTable->item(j, 0)->setText(QString::fromStdWString(aAttr->namingName()));
+        aTable->item(j, 0)->setToolTip(QString::fromStdWString(aAttr->namingName()));
       }
     }
   }
@@ -976,6 +975,9 @@ 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();