]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
Debug
authorouv <ouv@opencascade.com>
Thu, 10 Dec 2009 15:11:55 +0000 (15:11 +0000)
committerouv <ouv@opencascade.com>
Thu, 10 Dec 2009 15:11:55 +0000 (15:11 +0000)
src/SalomeApp/SalomeApp_DataObject.cxx

index a9caeaadf81208f9a9fab7fa70d8047dc8a3f7af..7b31a375b0920530507ad659e19861e42dad8035 100644 (file)
@@ -484,38 +484,43 @@ QString SalomeApp_DataObject::value( const _PTR(SObject)& obj ) const
     _PTR(AttributeString) strAttr = attr;
     std::string str = strAttr->Value();
     QString aStrings = QString( str.c_str() );
-    
-    //Special case to show NoteBook variables in the "Value" column of the OB 
-    if ( LightApp_RootObject* aRoot = dynamic_cast<LightApp_RootObject*>( root() ) )
+
+    // Special case to show NoteBook variables in the "Value" column of the OB 
+    if( aStrings.contains( ":" ) ) // old format ('var1::var2|var1')
     {
-      if ( SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>( aRoot->study() ) )
+      if ( LightApp_RootObject* aRoot = dynamic_cast<LightApp_RootObject*>( root() ) )
       {
-        SalomeApp_Notebook aNb( aStudy );
-
-       bool ok = false;
-       QStringList aSectionList = aStrings.split( "|" );
-       if ( !aSectionList.isEmpty() )
-       {
-         QString aLastSection = aSectionList.last();
-         QStringList aStringList = aLastSection.split( ":" );
-         if ( !aStringList.isEmpty() )
-         {
-           ok = true;
-           for ( int i = 0, n = aStringList.size(); i < n; i++ )
-           {
-             QString aStr = aStringList[i];
-             if ( aNb.isParameter( aStr ) )
-               val.append( aStr + ", " );
-           }
-
-           if ( !val.isEmpty() )
-             val.remove( val.length() - 2, 2 );
-         }
-       }
-       if( !ok )
-         val = aStrings;
+        if ( SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>( aRoot->study() ) )
+        {
+          SalomeApp_Notebook aNb( aStudy );
+
+          bool ok = false;
+          QStringList aSectionList = aStrings.split( "|" );
+          if ( !aSectionList.isEmpty() )
+          {
+            QString aLastSection = aSectionList.last();
+            QStringList aStringList = aLastSection.split( ":" );
+            if ( !aStringList.isEmpty() )
+            {
+              ok = true;
+              for ( int i = 0, n = aStringList.size(); i < n; i++ )
+              {
+                QString aStr = aStringList[i];
+                if ( aNb.isParameter( aStr ) )
+                  val.append( aStr + ", " );
+              }
+
+              if ( !val.isEmpty() )
+                val.remove( val.length() - 2, 2 );
+            }
+          }
+          if( !ok )
+            val = aStrings;
+        }
       }
     }
+    else // new format ('var1, var2') or single variable in old format
+      val = aStrings;
   }
   else if ( obj->FindAttribute( attr, "AttributeInteger" ) )
   {