#include "logger.h"
#include "quassel.h"
+#include "types.h"
namespace {
connect(this, SIGNAL(messageLogged(Logger::LogEntry)), this, SLOT(onMessageLogged(Logger::LogEntry)));
-#if QT_VERSION < 0x050000
- qInstallMsgHandler(Logger::messageHandler);
-#else
qInstallMessageHandler(Logger::messageHandler);
-#endif
}
}
-bool Logger::setup(bool keepMessages)
+void Logger::setup(bool keepMessages)
{
_keepMessages = keepMessages;
else if (level == "error")
_outputLevel = LogLevel::Error;
else {
- qCritical() << qPrintable(tr("Invalid log level %1; supported are Debug|Info|Warning|Error").arg(level));
- return false;
+ throw ExitException{EXIT_FAILURE, qPrintable(tr("Invalid log level %1; supported are Debug|Info|Warning|Error").arg(level))};
}
}
if (!_keepMessages) {
_messages.clear();
}
-
- return true;
}
-#if QT_VERSION < 0x050000
-void Logger::messageHandler(QtMsgType type, const char *message)
-#else
void Logger::messageHandler(QtMsgType type, const QMessageLogContext &, const QString &message)
-#endif
{
Quassel::instance()->logger()->handleMessage(type, message);
}
case QtDebugMsg:
handleMessage(LogLevel::Debug, msg);
break;
-#if QT_VERSION >= 0x050500
case QtInfoMsg:
handleMessage(LogLevel::Info, msg);
break;
-#endif
case QtWarningMsg:
handleMessage(LogLevel::Warning, msg);
break;