]> SALOME platform Git repositories - modules/shaper.git/blobdiff - src/ModelAPI/ModelAPI_Expression.cpp
Salome HOME
Issue #3237: Allow usage of accented characters in ObjectBrowser
[modules/shaper.git] / src / ModelAPI / ModelAPI_Expression.cpp
index 3359e598859d2618b46d8214122df7670955b4d6..026c9c0f42eecd59852e9af28425d4e0f21ef6d4 100644 (file)
@@ -19,6 +19,8 @@
 
 #include "ModelAPI_Expression.h"
 
+#include <Locale_Convert.h>
+
 ModelAPI_Expression::ModelAPI_Expression()
 {
 
@@ -49,17 +51,23 @@ ModelAPI_ExpressionInteger::ModelAPI_ExpressionInteger()
 
 
 }
+
 bool ModelAPI_Expression::isVariable(const std::string& theString)
+{
+  return isVariable(Locale::Convert::toWString(theString));
+}
+
+bool ModelAPI_Expression::isVariable(const std::wstring& theString)
 {
   if (theString.empty())
     return false;
   try {
-    std::string::const_iterator it = theString.begin();
-    if (!(isalpha(*it) || (*it) == '_') || it == theString.end())
+    std::wstring::const_iterator it = theString.begin();
+    if (!(iswalpha(*it) || (*it) == L'_') || it == theString.end())
       return false;
     it++;
     for ( ; it != theString.end(); ++it ) {
-      if(!(isalnum(*it) || (*it) == '_')) {
+      if(!(iswalnum(*it) || (*it) == L'_')) {
         return false;
       }
     }