void CSystemLog::postLog(LogSeverity::Severity severity, Components::Component component, QString message) { static LogSeverity::Severity lastSeverity = LogSeverity::Information; static Components::Component lastComponent = Components::None; static QString lastMessage; static int suppressed = 0; static bool bCheck = true; if ( bCheck ) { if ( severity == lastSeverity && component == lastComponent && message == lastMessage ) { ++suppressed; return; } else { if ( suppressed > 0 ) { bCheck = false; postLog( lastSeverity, lastComponent, tr( "Suppressed %n identical message(s).", 0, suppressed ) ); bCheck = true; } lastMessage = message; lastSeverity = severity; lastComponent = component; suppressed = 0; } } message = msgFromComponent( component ) + message; switch ( severity ) { case LogSeverity::Debug: case LogSeverity::Warning: case LogSeverity::Critical: case LogSeverity::Error: qCritical() << qPrintable(message); break; default: break; } emit logPosted( message, severity ); }
void SystemLog::postLog(QString message, LogSeverity::Severity severity) { switch(severity) { case LogSeverity::Debug: qDebug() << message; break; case LogSeverity::Warning: qWarning() << message; break; case LogSeverity::Critical: qCritical() << message; break; default: break; } emit logPosted(message, severity); }