{
if ( myModule->deactivateModule( activeStudy() ) )
{
- logUserEvent( tr( "MODULE_DEACTIVATED" ).arg( myModule->moduleName() ) );
+ logStructuredUserEvent( myModule->moduleName(),
+ "",
+ "",
+ "deactivated" );
}
moduleDeactivated( myModule );
}
myModule->connectToStudy( dynamic_cast<CAM_Study*>( activeStudy() ) );
if ( myModule->activateModule( activeStudy() ) )
{
- logUserEvent( tr( "MODULE_ACTIVATED" ).arg( myModule->moduleName() ) );
+ logStructuredUserEvent( myModule->moduleName(),
+ "",
+ "",
+ "activated" );
}
else
{
{
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.
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( ": " ) );
}
}