Salome HOME
Use logStructuredUserEvent() for log message format consistency.
[modules/gui.git] / src / CAM / CAM_Application.cxx
index edcc4968eae071cbbd14e71c3803d8503fe5180a..d524028f4828139ae872d6d3ae761dabeafc39eb 100644 (file)
@@ -467,7 +467,10 @@ bool CAM_Application::activateModule( CAM_Module* mod )
   {
     if ( myModule->deactivateModule( activeStudy() ) )
     {
-      logUserEvent( tr( "MODULE_DEACTIVATED" ).arg( myModule->moduleName() ) );
+      logStructuredUserEvent( myModule->moduleName(),
+                              "",
+                              "",
+                              "deactivated" );
     }
     moduleDeactivated( myModule );
   }
@@ -479,7 +482,10 @@ bool CAM_Application::activateModule( CAM_Module* mod )
     myModule->connectToStudy( dynamic_cast<CAM_Study*>( activeStudy() ) );
     if ( myModule->activateModule( activeStudy() ) )
     {
-      logUserEvent( tr( "MODULE_ACTIVATED" ).arg( myModule->moduleName() ) );
+      logStructuredUserEvent( myModule->moduleName(),
+                              "",
+                              "",
+                              "activated" );
     }
     else
     {
@@ -1034,12 +1040,29 @@ void CAM_Application::logUserEvent( const QString& eventDescription )
     {
       QDateTime current = QDateTime::currentDateTime();
       QTextStream stream( &file );
-      stream << current.toString("yyyyMMdd-hhmmss") << ": " << eventDescription << endl;
+      stream << current.toString("yyyyMMdd-hhmmss")
+             << "," << eventDescription
+             << endl;
       file.close();
     }
   }
 }
 
+void CAM_Application::logStructuredUserEvent( const QString& module,
+                                              const QString& section,
+                                              const QString& action,
+                                              const QString& event,
+                                              const QString& message )
+{
+  const QStringList mes = (QStringList() << module
+                           << section
+                           << action
+                           << event
+                           << message);
+
+  logUserEvent( mes.join( "," ) );
+}
+
 /*!
   \brief Log given action.
   \param action GUI action being logged.
@@ -1052,21 +1075,24 @@ void CAM_Application::logAction( QAction* action, const QString& moduleName )
     text = action->text();
   if ( text.isEmpty() )
     text = action->iconText();
+
   if ( !text.isEmpty() )
   {
-    QStringList message;
-    if ( !moduleName.isEmpty() )
-      message << moduleName;
     if ( action->isCheckable() )
     {
-      message << tr( "ACTION_TOGGLED" );
-      message << ( action->isChecked() ? tr( "ACTION_ON" ) : tr( "ACTION_OFF" ) );
+      logStructuredUserEvent ( moduleName,
+                               "",
+                               tr( "ACTION_TOGGLED" ),
+                               action->isChecked() ? tr( "ACTION_ON" ) : tr( "ACTION_OFF" ),
+                               text );
     }
     else
     {
-      message << tr( "ACTION_TRIGGERED" );
+      logStructuredUserEvent ( moduleName,
+                               "",
+                               tr( "ACTION_TRIGGERED" ),
+                               "",
+                               text );
     }
-    message << text;
-    logUserEvent( message.join( ": " ) );
   }
 }