]> SALOME platform Git repositories - modules/geom.git/commitdiff
Salome HOME
0022825: EDF GUI regression: Issue with accent in the OB
authorvsr <vsr@opencascade.com>
Fri, 12 Dec 2014 15:27:05 +0000 (18:27 +0300)
committervsr <vsr@opencascade.com>
Fri, 12 Dec 2014 15:27:05 +0000 (18:27 +0300)
Introduce UTF-8 support in GEOM GUI

14 files changed:
src/AdvancedGUI/AdvancedGUI_PipeTShapeDlg.cxx
src/EntityGUI/EntityGUI_FieldDlg.cxx
src/GEOMBase/GEOMBase.cxx
src/GEOMBase/GEOMBase_Helper.cxx
src/GEOMGUI/GeometryGUI.cxx
src/GEOMToolsGUI/GEOMToolsGUI_1.cxx
src/GEOMToolsGUI/GEOMToolsGUI_LineWidthDlg.cxx
src/GEOMToolsGUI/GEOMToolsGUI_MarkerDlg.cxx
src/GroupGUI/GroupGUI_GroupDlg.cxx
src/OBJECT/GEOM_AISShape.cxx
src/RepairGUI/RepairGUI_GlueDlg.cxx
src/RepairGUI/RepairGUI_LimitToleranceDlg.cxx
src/RepairGUI/RepairGUI_ShapeProcessDlg.cxx
src/XAOPlugin/XAOPlugin_ImportDlg.cxx

index ee07a99cdcec2663479f4c2295344e6ac0b7f67c..0b22871f583ce9ff5046076af1e8cf144afb84a4 100644 (file)
@@ -1236,7 +1236,8 @@ void AdvancedGUI_PipeTShapeDlg::restoreSubShapes (SALOMEDS::Study_ptr theStudy,
   ObjectList::iterator it = pipeTShapeGroupObjects.begin();
 
   for (int i = 0; it != pipeTShapeGroupObjects.end(); it++, i++) {
-    getGeomEngine()->AddInStudy(theStudy, (*it), tr((*it)->GetName()).toStdString().c_str(), theFather);
+    CORBA::String_var sname = (*it)->GetName();
+    getGeomEngine()->AddInStudy(theStudy, (*it), sname.in(), theFather);
   }
 }
 
index d940f5040604d77624ee311742efc3b8ef49f00b..c53905dee6687a50aa9e0f0d31dbbb94be048737 100644 (file)
@@ -753,7 +753,7 @@ void EntityGUI_FieldDlg::StepTable::setValues(GEOM::GEOM_FieldStep_var& step)
       vals->length( nbRows * nbComps );
       for ( int iV = 0, iR = 0; iR < nbRows; ++iR )
         for ( int iC = 1; iC < nbColumns; ++iC )
-          vals[ iV++ ] = item( iR, iC )->text().toLatin1().constData();
+          vals[ iV++ ] = item( iR, iC )->text().toUtf8().constData();
       ss->SetValues( vals );
     }
   }
@@ -1870,11 +1870,11 @@ bool EntityGUI_FieldDlg::execute()
     GEOM::string_array_var compNames = new GEOM::string_array();
     compNames->length( nbComps );
     for ( int iC = 0; iC < nbComps; ++iC )
-      compNames[ iC ] = columnNames[ iC+1 ].toLatin1().constData();
+      compNames[ iC ] = columnNames[ iC+1 ].toUtf8().constData();
 
     GEOM::GEOM_IFieldOperations_var anOper = GEOM::GEOM_IFieldOperations::_narrow(getOperation());
     myField = anOper->CreateField( myShape,
-                                   aName.toLatin1().constData(),
+                                   aName.toUtf8().constData(),
                                    GEOM::field_data_type( getDataType() ),
                                    CORBA::Short( getDim() ),
                                    compNames );
@@ -1882,7 +1882,7 @@ bool EntityGUI_FieldDlg::execute()
       return false;
     
     SALOMEDS::SObject_wrap aSO =
-      getGeomEngine()->AddInStudy( aStudyDS, myField, aName.toLatin1().constData(), myShape );
+      getGeomEngine()->AddInStudy( aStudyDS, myField, aName.toUtf8().constData(), myShape );
     if ( !aSO->_is_nil() ) {
       myField->UnRegister();
       CORBA::String_var entry = aSO->GetID();
@@ -1891,13 +1891,13 @@ bool EntityGUI_FieldDlg::execute()
   }
   else // update field name
   {
-    myField->SetName( aName.toLatin1().constData() );
+    myField->SetName( aName.toUtf8().constData() );
 
     CORBA::String_var entry = myField->GetStudyEntry();
     if ( entry.in() ) {
       SALOMEDS::SObject_wrap SO = aStudyDS->FindObjectID( entry.in() );
       if ( !SO->_is_nil() ) {
-        aBuilder->SetName(SO, aName.toLatin1().constData());
+        aBuilder->SetName(SO, aName.toUtf8().constData());
       }
     }
   }
@@ -1918,7 +1918,7 @@ bool EntityGUI_FieldDlg::execute()
         step = myField->AddStep( tbl->getStepID(), tbl->getStamp() );
 
         SALOMEDS::SObject_wrap aSO =
-          getGeomEngine()->AddInStudy( aStudyDS, step, stepName.toLatin1().constData(), myField );
+          getGeomEngine()->AddInStudy( aStudyDS, step, stepName.toUtf8().constData(), myField );
         if ( /*!myIsCreation &&*/ !aSO->_is_nil() ) {
           step->UnRegister();
           CORBA::String_var entry = aSO->GetID();
@@ -1933,7 +1933,7 @@ bool EntityGUI_FieldDlg::execute()
       if ( entry.in() ) {
         SALOMEDS::SObject_wrap SO = aStudyDS->FindObjectID( entry.in() );
         if ( !SO->_is_nil() )
-          aBuilder->SetName( SO, stepName.toLatin1().constData() );
+          aBuilder->SetName( SO, stepName.toUtf8().constData() );
       }
     }
 
index 849e433afbc10a34dab3ac0c037039162640d844..c6e8339034aec0cd6e0e9d98c35da2a86bc5d8da 100644 (file)
@@ -144,7 +144,7 @@ int GEOMBase::GetNameOfSelectedIObjects( const SALOME_ListIO& IObjects,
         _PTR(GenericAttribute) anAttr;
         if ( obj && obj->FindAttribute( anAttr, "AttributeName" ) ) {
           _PTR(AttributeName) aNameAttr ( anAttr );
-          name = aNameAttr->Value().c_str();
+          name = QString::fromUtf8( aNameAttr->Value().c_str() );
         }
       }
     }
@@ -626,7 +626,7 @@ bool GEOMBase::SelectionByNameInDialogs( QWidget* widget, const QString& objectU
   /* Create a SALOME_InteractiveObject with a SALOME::SObject */
   Handle(SALOME_InteractiveObject) IO = new SALOME_InteractiveObject( listSO[0]->GetID().c_str(),
                                                                       "GEOM",
-                                                                      objectUserName.toLatin1().constData() );
+                                                                      objectUserName.toUtf8().constData() );
 
   /* Add as a selected object       */
   /* Clear any previous selection : */
@@ -769,7 +769,7 @@ QString GEOMBase::GetName( GEOM::GEOM_Object_ptr object )
       _PTR(GenericAttribute) anAttr;
       if ( aSObj && aSObj->FindAttribute( anAttr, "AttributeName") ) {
         _PTR(AttributeName) aNameAttr( anAttr );
-        name = aNameAttr->Value().c_str();
+        name = QString::fromUtf8( aNameAttr->Value().c_str() );
       }
     }
     
@@ -868,7 +868,7 @@ void GEOMBase::PublishSubObject( GEOM::GEOM_Object_ptr object )
     if ( entry.isEmpty() && !CORBA::is_nil( father ) && !fatherEntry.isEmpty() ) {
       QString name = GetName( object );
       GeometryGUI::GetGeomGen()->AddInStudy( GeometryGUI::ClientStudyToStudy( studyDS ),
-                                             object, name.toLatin1().data(), father.in() );
+                                             object, name.toUtf8().data(), father.in() );
     }
   }
 }
index 93c4c2da6e68edfbf92cda0bc3f6f3a2101310a7..968b28e9d59e73a1be2a235f1d1e814e07a3a9fd 100755 (executable)
@@ -180,7 +180,7 @@ void GEOMBase_Helper::erase( GEOM::GEOM_Object_ptr object, const bool updateView
     QString entry = getEntry( object );
     getDisplayer()->Erase( new SALOME_InteractiveObject(
       entry.toLatin1().constData(), 
-      "GEOM", strdup( GEOMBase::GetName( object ).toLatin1().constData() ) ), true, updateView );
+      "GEOM", strdup( GEOMBase::GetName( object ).toUtf8().constData() ) ), true, updateView );
   }
 }
 
@@ -219,7 +219,7 @@ void GEOMBase_Helper::redisplay( GEOM::GEOM_Object_ptr object,
 
     QString entry = getEntry( object );
     getDisplayer()->Redisplay(new SALOME_InteractiveObject
-                              (entry.toLatin1().constData(), "GEOM", strdup(GEOMBase::GetName(object).toLatin1().constData())), false);
+                              (entry.toLatin1().constData(), "GEOM", strdup(GEOMBase::GetName(object).toUtf8().constData())), false);
   }
 
   if ( withChildren ) {
@@ -237,7 +237,7 @@ void GEOMBase_Helper::redisplay( GEOM::GEOM_Object_ptr object,
             if ( !aChild->_is_nil() ) {
               QString entry = getEntry( aChild );
               getDisplayer()->Redisplay( new SALOME_InteractiveObject(
-                entry.toLatin1().constData(), "GEOM", strdup( GEOMBase::GetName( aChild ).toLatin1().constData() ) ), false );
+                entry.toLatin1().constData(), "GEOM", strdup( GEOMBase::GetName( aChild ).toUtf8().constData() ) ), false );
             }
           }
         }
@@ -476,7 +476,7 @@ void GEOMBase_Helper::localSelection( const ObjectList& theObjs, const int theMo
     QString anEntry = getEntry( anObj );
     if ( anEntry != "" )
       aListOfIO.Append( new SALOME_InteractiveObject(
-        anEntry.toLatin1().constData(), "GEOM", strdup( GEOMBase::GetName( anObj ).toLatin1().constData() ) ) );
+        anEntry.toLatin1().constData(), "GEOM", strdup( GEOMBase::GetName( anObj ).toUtf8().constData() ) ) );
   }
 
   getDisplayer()->LocalSelection( aListOfIO, theMode );
@@ -843,23 +843,23 @@ bool GEOMBase_Helper::onAccept( const bool publish, const bool useTransaction, b
             QString aName = getObjectName(obj);
             if (aName.isEmpty()) {
               aName = getNewObjectName(currObj);
-                   if ( nbObjs > 1 ) {
-                           if (aName.isEmpty())
-                             aName = getPrefix(obj);
-                             if (nbObjs <= 30) {
-                               // Try to find a unique name
-                               aName = GEOMBase::GetDefaultName(aName, extractPrefix());
-                             } else {
-                               // Don't check name uniqueness in case of numerous objects
-                               aName = aName + "_" + QString::number(aNumber++);
-                             }
-                   } else {
-                           // PAL6521: use a prefix, if some dialog box doesn't reimplement getNewObjectName()
-                           if ( aName.isEmpty() )
-                             aName = GEOMBase::GetDefaultName( getPrefix( obj ) );
-                   }
+              if ( nbObjs > 1 ) {
+                if (aName.isEmpty())
+                  aName = getPrefix(obj);
+                if (nbObjs <= 30) {
+                  // Try to find a unique name
+                  aName = GEOMBase::GetDefaultName(aName, extractPrefix());
+                } else {
+                  // Don't check name uniqueness in case of numerous objects
+                  aName = aName + "_" + QString::number(aNumber++);
+                }
+              } else {
+                // PAL6521: use a prefix, if some dialog box doesn't reimplement getNewObjectName()
+                if ( aName.isEmpty() )
+                  aName = GEOMBase::GetDefaultName( getPrefix( obj ) );
+              }
             }
-            anEntryList << addInStudy( obj, aName.toLatin1().constData() );
+            anEntryList << addInStudy( obj, aName.toUtf8().constData() );
             // updateView=false
             if( isDisplayResult() )
               display( obj, false );
index 1ac42576eef27acd952da19d57694f100f1d4ee4..4cad485d92536d2cfc28877e235199e7936f590e 100644 (file)
@@ -3202,10 +3202,10 @@ bool GeometryGUI::renameObject( const QString& entry, const QString& name)
     if ( obj->FindAttribute(anAttr, "AttributeName") ) {
       _PTR(AttributeName) aName (anAttr);
 
-      aName->SetValue( name.toLatin1().data() ); // rename the SObject
+      aName->SetValue( name.toUtf8().data() ); // rename the SObject
       GEOM::GEOM_Object_var anObj = GEOM::GEOM_Object::_narrow(GeometryGUI::ClientSObjectToObject(obj));
       if (!CORBA::is_nil(anObj)) {
-        anObj->SetName( name.toLatin1().data() );  // Rename the corresponding GEOM_Object
+        anObj->SetName( name.toUtf8().data() );  // Rename the corresponding GEOM_Object
         emit SignalDependencyTreeRenameObject( anObj->GetEntry() );
       }
       result = true;
index 9a5ce23eaecf1c4f5633542ff56d14d56036942d..e730627165188bfe506e44babdfbc5c0f1ea39ca 100644 (file)
@@ -668,7 +668,7 @@ void GEOMToolsGUI::OnEdgeWidth()
   int aMgrId = dynamic_cast< SUIT_ViewModel* >( window )->getViewManager()->getGlobalId();
 
   GEOMToolsGUI_LineWidthDlg* Dlg =
-    new GEOMToolsGUI_LineWidthDlg( SUIT_Session::session()->activeApplication()->desktop(), "EDGE_WIDTH_TLT" );
+    new GEOMToolsGUI_LineWidthDlg( SUIT_Session::session()->activeApplication()->desktop(), tr("EDGE_WIDTH_TLT") );
 
   QVariant v = appStudy->getObjectProperty( aMgrId, selected.First()->getEntry(), GEOM::propertyName( GEOM::LineWidth ), QVariant() );
   int aWidth = v.isValid() ? v.toInt() : SUIT_Session::session()->resourceMgr()->integerValue( "Geometry", "edge_width", 1 );
@@ -711,7 +711,7 @@ void GEOMToolsGUI::OnIsosWidth() {
   int aMgrId = dynamic_cast< SUIT_ViewModel* >( window )->getViewManager()->getGlobalId();
 
   GEOMToolsGUI_LineWidthDlg* Dlg =
-    new GEOMToolsGUI_LineWidthDlg( SUIT_Session::session()->activeApplication()->desktop(), "ISOS_WIDTH_TLT" );
+    new GEOMToolsGUI_LineWidthDlg( SUIT_Session::session()->activeApplication()->desktop(), tr("ISOS_WIDTH_TLT") );
 
   QVariant v = appStudy->getObjectProperty( aMgrId, selected.First()->getEntry(), GEOM::propertyName( GEOM::IsosWidth ), QVariant() );
   int aWidth = v.isValid() ? v.toInt() : SUIT_Session::session()->resourceMgr()->integerValue( "Geometry", "isolines_width", 1 );
@@ -851,7 +851,7 @@ void GEOMToolsGUI::OnCreateFolder()
   _PTR(SObject) aFatherSO(aStudy->FindObjectID(anIObject->getEntry()));
   if ( !aFatherSO ) return;
 
-  GeometryGUI::GetGeomGen()->CreateFolder( tr("NEW_FOLDER_NAME").toLatin1().constData(), 
+  GeometryGUI::GetGeomGen()->CreateFolder( tr("NEW_FOLDER_NAME").toUtf8().constData(), 
                                           _CAST(SObject, aFatherSO)->GetSObject() );
   app->updateObjectBrowser( false );
 }
index d8748d41b2429dfbbbccefd0450c82dcd59f56ef..9beb27f653446a8ded9d4337f480694d72d9680d 100644 (file)
@@ -53,7 +53,7 @@ GEOMToolsGUI_LineWidthDlg::GEOMToolsGUI_LineWidthDlg (QWidget* parent, const QSt
   setObjectName("GEOMToolsGUI_LineWidthDlg");
   setModal(true);
 
-  setWindowTitle(tr(title.toLatin1().constData()));
+  setWindowTitle(title);
   setSizeGripEnabled(TRUE);
   QGridLayout* MyDialogLayout = new QGridLayout(this);
   MyDialogLayout->setSpacing(6);
index 3d8686c7dadd25b7ef140a9b80cd61c50a1c10ea..88150a261298f06dc63f41a8fca3f4d794d00b46 100644 (file)
@@ -375,7 +375,7 @@ void GEOMToolsGUI_MarkerDlg::browse()
   filters << tr( "Texture files (*.dat)" ) << tr( "All files (*)" );
   QString aFileName = SUIT_Session::session()->activeApplication()->getFileName( true, QString(), filters.join( ";;" ), tr( "LOAD_TEXTURE_TLT" ), this );
   if ( !aFileName.isEmpty() ) {
-    addTexture( myOperation->LoadTexture( aFileName.toLatin1().constData() ), true );
+    addTexture( myOperation->LoadTexture( aFileName.toUtf8().constData() ), true );
   }
 }
 
index a34a137d427e28795587b15c5a4f813c32640971..4339f751e134041fadd9c96bcbb11f0842252fe5 100644 (file)
@@ -1293,7 +1293,7 @@ bool GroupGUI_GroupDlg::execute(ObjectList& objects)
       _PTR(SObject) SO (study->studyDS()->FindObjectIOR(objIOR.toLatin1().constData()));
       if (SO) {
         _PTR(StudyBuilder) aBuilder (study->studyDS()->NewBuilder());
-        aBuilder->SetName(SO, getNewObjectName().toLatin1().constData());
+        aBuilder->SetName(SO, getNewObjectName().toUtf8().constData());
       }
     }
   }
index a41490235cdac8ce75bb398605b6f587eca0c060..59a5c9fa2dcc493e0710117916f002ae53d07933 100644 (file)
@@ -562,7 +562,7 @@ void GEOM_AISShape::drawField( const Handle(Prs3d_Presentation)& thePrs,
           anAspectText3d->SetStyle( Aspect_TOST_ANNOTATION );
           aGroup->SetPrimitivesAspect( anAspectText3d );
 
-          aGroup->Text( aString.toLatin1().constData(), aVertex, 14 );
+          aGroup->Text( aString.toUtf8().constData(), aVertex, 14 );
         }
       }
       else
index 55a1bb27ac054381c34b5bf62ecdf0a08f36335a..6692b23ac0b729a8efe9a949b6c9460cf685b144 100644 (file)
@@ -640,7 +640,7 @@ bool RepairGUI_GlueDlg::onAcceptLocal()
             if (aName.isEmpty())
               aName = GEOMBase::GetDefaultName(getPrefix(*it));
           }
-          addInStudy(*it, aName.toLatin1().data());
+          addInStudy(*it, aName.toUtf8().data());
           display(*it, false);
         }
 
index 69b37b9f6ab49e9bfbcab61bd8abf109344d6519..11411f8a76fc83b5be3dacb6fdf1e8ce5f33870a 100644 (file)
@@ -361,7 +361,7 @@ bool RepairGUI_LimitToleranceDlg::onAcceptLocal()
             if (aName.isEmpty())
               aName = GEOMBase::GetDefaultName(getPrefix(*it));
           }
-          addInStudy(*it, aName.toLatin1().data());
+          addInStudy(*it, aName.toUtf8().data());
           display(*it, false);
         }
 
index 926f1eb80514c853f3895b1baafab9dd4cc0fa09..2dab2b996ebeb2dfe10321933302de53f9f5867c 100755 (executable)
@@ -658,7 +658,7 @@ bool RepairGUI_ShapeProcessDlg::execute( ObjectList& objects )
   }
 
   if ( !anErrorObjNames.empty() )
-    MESSAGE( "ERRORS occured while processing the following objects: " << anErrorObjNames.join( " " ).toLatin1().data() );
+    MESSAGE( "ERRORS occured while processing the following objects: " << anErrorObjNames.join( " " ).toUtf8().data() );
     
   return anErrorObjNames.size() < myObjects->length(); // true if at least one object was OK, false if ALL objects were nil after Healing.
 }
index 6acce2f5e6b9b23b1ffc03e2eeb79a4e06581fa9..d41331ea9b97249b51b7fe0cce0940f8d44ef970 100644 (file)
@@ -330,7 +330,7 @@ QString XAOPlugin_ImportDlg::addFieldInStudy( GEOM::GEOM_Field_ptr theField, GEO
     GEOM::GEOM_FieldStep_ptr step = theField->GetStep(steps[i]);
     QString stepName = (tr("XAOPLUGIN_STEP") + " %1 %2").arg( step->GetID() ).arg( step->GetStamp() );
     SALOMEDS::SObject_wrap aSOField =
-      getGeomEngine()->AddInStudy( aStudyDS, step, stepName.toLatin1().constData(), theField );
+      getGeomEngine()->AddInStudy( aStudyDS, step, stepName.toUtf8().constData(), theField );
   }
 
   aSO->UnRegister();