Use logStructuredUserEvent() for log message format consistency.

Also clean-up the operation name to keep only the meaningful
part.
This commit is contained in:
Pascal Obry 2023-05-15 10:25:38 +02:00
parent 221a1f9cef
commit efb533a09c

View File

@ -24,6 +24,8 @@
// File : GEOMBase_Helper.cxx // File : GEOMBase_Helper.cxx
// Author : Sergey ANIKIN, Open CASCADE S.A.S. (sergey.anikin@opencascade.com) // Author : Sergey ANIKIN, Open CASCADE S.A.S. (sergey.anikin@opencascade.com)
#include <QRegExp>
#include "GEOMBase_Helper.h" #include "GEOMBase_Helper.h"
#include "GEOMBase.h" #include "GEOMBase.h"
#include "GEOM_Operation.h" #include "GEOM_Operation.h"
@ -943,13 +945,20 @@ bool GEOMBase_Helper::onAccept( const bool publish, const bool useTransaction, b
} }
if ( nbObjs ) { if ( nbObjs ) {
SalomeApp_Application::logUserEvent( QString( "Geometry") + ": " + QObject::tr( "OPERATION_APPLIED" ) ); const QString anOpName( typeid(*this).name() );
// The operator name may have the following format: 24PrimitiveGUI_CylinderDlg
// clean it up to get the simple operator (here Cylinder) name into the log.
const QRegExp rx("^[^\w]*_(.*)Dlg$");
const int pos = rx.indexIn(anOpName);
SalomeApp_Application::logStructuredUserEvent( "Geom",
"geometry",
pos == -1 ? anOpName : rx.cap(1),
"applied" );
commitCommand(); commitCommand();
updateObjBrowser(); updateObjBrowser();
if( SUIT_Application* anApp = SUIT_Session::session()->activeApplication() ) { if( SUIT_Application* anApp = SUIT_Session::session()->activeApplication() ) {
LightApp_Application* aLightApp = dynamic_cast<LightApp_Application*>( anApp ); LightApp_Application* aLightApp = dynamic_cast<LightApp_Application*>( anApp );
if(aLightApp) { if(aLightApp) {
QString anOpName( typeid(*this).name() );
aLightApp->emitOperationFinished( "Geometry", anOpName, anEntryList ); aLightApp->emitOperationFinished( "Geometry", anOpName, anEntryList );
if ( !isDisableBrowsing() ) if ( !isDisableBrowsing() )