Simplify MessageLevel::Enum -> MessageLevel
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
This commit is contained in:
@@ -241,7 +241,7 @@ void appDebugOutput(QtMsgType type, const QMessageLogContext& context, const QSt
|
|||||||
|
|
||||||
QString out = qFormatLogMessage(type, context, msg);
|
QString out = qFormatLogMessage(type, context, msg);
|
||||||
if (APPLICATION->logModel) {
|
if (APPLICATION->logModel) {
|
||||||
APPLICATION->logModel->append(MessageLevel::getLevel(type), out);
|
APPLICATION->logModel->append(messageLevelFromQtMsgType(type), out);
|
||||||
}
|
}
|
||||||
|
|
||||||
out += QChar::LineFeed;
|
out += QChar::LineFeed;
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ class LoggedProcess : public QProcess {
|
|||||||
void setDetachable(bool detachable);
|
void setDetachable(bool detachable);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void log(QStringList lines, MessageLevel::Enum level);
|
void log(QStringList lines, MessageLevel level);
|
||||||
void stateChanged(LoggedProcess::State state);
|
void stateChanged(LoggedProcess::State state);
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#include "MessageLevel.h"
|
#include "MessageLevel.h"
|
||||||
|
|
||||||
MessageLevel::Enum MessageLevel::getLevel(const QString& levelName)
|
MessageLevel messageLevelFromName(const QString& levelName)
|
||||||
{
|
{
|
||||||
QString name = levelName.toUpper();
|
QString name = levelName.toUpper();
|
||||||
if (name == "LAUNCHER")
|
if (name == "LAUNCHER")
|
||||||
@@ -25,7 +25,7 @@ MessageLevel::Enum MessageLevel::getLevel(const QString& levelName)
|
|||||||
return MessageLevel::Unknown;
|
return MessageLevel::Unknown;
|
||||||
}
|
}
|
||||||
|
|
||||||
MessageLevel::Enum MessageLevel::getLevel(QtMsgType type)
|
MessageLevel messageLevelFromQtMsgType(QtMsgType type)
|
||||||
{
|
{
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case QtDebugMsg:
|
case QtDebugMsg:
|
||||||
@@ -43,19 +43,19 @@ MessageLevel::Enum MessageLevel::getLevel(QtMsgType type)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
MessageLevel::Enum MessageLevel::fromLine(QString& line)
|
MessageLevel messageLevelFromLine(QString& line)
|
||||||
{
|
{
|
||||||
// Level prefix
|
// Level prefix
|
||||||
int endmark = line.indexOf("]!");
|
int endmark = line.indexOf("]!");
|
||||||
if (line.startsWith("!![") && endmark != -1) {
|
if (line.startsWith("!![") && endmark != -1) {
|
||||||
auto level = MessageLevel::getLevel(line.left(endmark).mid(3));
|
auto level = messageLevelFromName(line.left(endmark).mid(3));
|
||||||
line = line.mid(endmark + 2);
|
line = line.mid(endmark + 2);
|
||||||
return level;
|
return level;
|
||||||
}
|
}
|
||||||
return MessageLevel::Unknown;
|
return MessageLevel::Unknown;
|
||||||
}
|
}
|
||||||
|
|
||||||
MessageLevel::Enum MessageLevel::fromLauncherLine(QString& line)
|
MessageLevel messageLevelFromLauncherLine(QString& line)
|
||||||
{
|
{
|
||||||
// Level prefix
|
// Level prefix
|
||||||
int startMark = 0;
|
int startMark = 0;
|
||||||
@@ -63,7 +63,7 @@ MessageLevel::Enum MessageLevel::fromLauncherLine(QString& line)
|
|||||||
++startMark;
|
++startMark;
|
||||||
int endmark = line.indexOf(":");
|
int endmark = line.indexOf(":");
|
||||||
if (startMark < line.size() && endmark != -1) {
|
if (startMark < line.size() && endmark != -1) {
|
||||||
auto level = MessageLevel::getLevel(line.left(endmark).mid(startMark));
|
auto level = messageLevelFromName(line.left(endmark).mid(startMark));
|
||||||
line = line.mid(endmark + 2);
|
line = line.mid(endmark + 2);
|
||||||
return level;
|
return level;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,8 +7,7 @@
|
|||||||
* @brief the MessageLevel Enum
|
* @brief the MessageLevel Enum
|
||||||
* defines what level a log message is
|
* defines what level a log message is
|
||||||
*/
|
*/
|
||||||
namespace MessageLevel {
|
enum class MessageLevel {
|
||||||
enum Enum {
|
|
||||||
Unknown, /**< No idea what this is or where it came from */
|
Unknown, /**< No idea what this is or where it came from */
|
||||||
StdOut, /**< Undetermined stderr messages */
|
StdOut, /**< Undetermined stderr messages */
|
||||||
StdErr, /**< Undetermined stdout messages */
|
StdErr, /**< Undetermined stdout messages */
|
||||||
@@ -21,12 +20,11 @@ enum Enum {
|
|||||||
Error, /**< Errors */
|
Error, /**< Errors */
|
||||||
Fatal, /**< Fatal Errors */
|
Fatal, /**< Fatal Errors */
|
||||||
};
|
};
|
||||||
MessageLevel::Enum getLevel(const QString& levelName);
|
MessageLevel messageLevelFromName(const QString& levelName);
|
||||||
MessageLevel::Enum getLevel(QtMsgType type);
|
MessageLevel messageLevelFromQtMsgType(QtMsgType type);
|
||||||
|
|
||||||
/* Get message level from a line. Line is modified if it was successful. */
|
/* Get message level from a line. Line is modified if it was successful. */
|
||||||
MessageLevel::Enum fromLine(QString& line);
|
MessageLevel messageLevelFromLine(QString& line);
|
||||||
|
|
||||||
/* Get message level from a line from the launcher log. Line is modified if it was successful. */
|
/* Get message level from a line from the launcher log. Line is modified if it was successful. */
|
||||||
MessageLevel::Enum fromLauncherLine(QString& line);
|
MessageLevel messageLevelFromLauncherLine(QString& line);
|
||||||
} // namespace MessageLevel
|
|
||||||
|
|||||||
@@ -28,8 +28,8 @@ class LaunchStep : public Task {
|
|||||||
virtual ~LaunchStep() = default;
|
virtual ~LaunchStep() = default;
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void logLines(QStringList lines, MessageLevel::Enum level);
|
void logLines(QStringList lines, MessageLevel level);
|
||||||
void logLine(QString line, MessageLevel::Enum level);
|
void logLine(QString line, MessageLevel level);
|
||||||
void readyForLaunch();
|
void readyForLaunch();
|
||||||
void progressReportingRequest();
|
void progressReportingRequest();
|
||||||
|
|
||||||
|
|||||||
@@ -214,7 +214,7 @@ shared_qobject_ptr<LogModel> LaunchTask::getLogModel()
|
|||||||
return m_logModel;
|
return m_logModel;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool LaunchTask::parseXmlLogs(QString const& line, MessageLevel::Enum level)
|
bool LaunchTask::parseXmlLogs(QString const& line, MessageLevel level)
|
||||||
{
|
{
|
||||||
LogParser* parser;
|
LogParser* parser;
|
||||||
switch (level) {
|
switch (level) {
|
||||||
@@ -254,7 +254,7 @@ bool LaunchTask::parseXmlLogs(QString const& line, MessageLevel::Enum level)
|
|||||||
} else if (std::holds_alternative<LogParser::PlainText>(item)) {
|
} else if (std::holds_alternative<LogParser::PlainText>(item)) {
|
||||||
auto msg = std::get<LogParser::PlainText>(item).message;
|
auto msg = std::get<LogParser::PlainText>(item).message;
|
||||||
|
|
||||||
MessageLevel::Enum newLevel = MessageLevel::fromLine(msg);
|
MessageLevel newLevel = messageLevelFromLine(msg);
|
||||||
|
|
||||||
if (newLevel == MessageLevel::Unknown)
|
if (newLevel == MessageLevel::Unknown)
|
||||||
newLevel = LogParser::guessLevel(line);
|
newLevel = LogParser::guessLevel(line);
|
||||||
@@ -271,14 +271,14 @@ bool LaunchTask::parseXmlLogs(QString const& line, MessageLevel::Enum level)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void LaunchTask::onLogLines(const QStringList& lines, MessageLevel::Enum defaultLevel)
|
void LaunchTask::onLogLines(const QStringList& lines, MessageLevel defaultLevel)
|
||||||
{
|
{
|
||||||
for (auto& line : lines) {
|
for (auto& line : lines) {
|
||||||
onLogLine(line, defaultLevel);
|
onLogLine(line, defaultLevel);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void LaunchTask::onLogLine(QString line, MessageLevel::Enum level)
|
void LaunchTask::onLogLine(QString line, MessageLevel level)
|
||||||
{
|
{
|
||||||
if (parseXmlLogs(line, level)) {
|
if (parseXmlLogs(line, level)) {
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -106,8 +106,8 @@ class LaunchTask : public Task {
|
|||||||
void requestLogging();
|
void requestLogging();
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void onLogLines(const QStringList& lines, MessageLevel::Enum defaultLevel = MessageLevel::Launcher);
|
void onLogLines(const QStringList& lines, MessageLevel defaultLevel = MessageLevel::Launcher);
|
||||||
void onLogLine(QString line, MessageLevel::Enum defaultLevel = MessageLevel::Launcher);
|
void onLogLine(QString line, MessageLevel defaultLevel = MessageLevel::Launcher);
|
||||||
void onReadyForLaunch();
|
void onReadyForLaunch();
|
||||||
void onStepFinished();
|
void onStepFinished();
|
||||||
void onProgressReportingRequested();
|
void onProgressReportingRequested();
|
||||||
@@ -116,7 +116,7 @@ class LaunchTask : public Task {
|
|||||||
void finalizeSteps(bool successful, const QString& error);
|
void finalizeSteps(bool successful, const QString& error);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
bool parseXmlLogs(QString const& line, MessageLevel::Enum level);
|
bool parseXmlLogs(QString const& line, MessageLevel level);
|
||||||
|
|
||||||
protected: /* data */
|
protected: /* data */
|
||||||
MinecraftInstancePtr m_instance;
|
MinecraftInstancePtr m_instance;
|
||||||
|
|||||||
@@ -24,13 +24,13 @@ QVariant LogModel::data(const QModelIndex& index, int role) const
|
|||||||
return m_content[realRow].line;
|
return m_content[realRow].line;
|
||||||
}
|
}
|
||||||
if (role == LevelRole) {
|
if (role == LevelRole) {
|
||||||
return m_content[realRow].level;
|
return static_cast<int>(m_content[realRow].level);
|
||||||
}
|
}
|
||||||
|
|
||||||
return QVariant();
|
return QVariant();
|
||||||
}
|
}
|
||||||
|
|
||||||
void LogModel::append(MessageLevel::Enum level, QString line)
|
void LogModel::append(MessageLevel level, QString line)
|
||||||
{
|
{
|
||||||
if (m_suspended) {
|
if (m_suspended) {
|
||||||
return;
|
return;
|
||||||
@@ -167,7 +167,7 @@ bool LogModel::isOverFlow()
|
|||||||
return m_numLines >= m_maxLines && m_stopOnOverflow;
|
return m_numLines >= m_maxLines && m_stopOnOverflow;
|
||||||
}
|
}
|
||||||
|
|
||||||
MessageLevel::Enum LogModel::previousLevel()
|
MessageLevel LogModel::previousLevel()
|
||||||
{
|
{
|
||||||
if (m_numLines > 0) {
|
if (m_numLines > 0) {
|
||||||
return m_content[m_numLines - 1].level;
|
return m_content[m_numLines - 1].level;
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ class LogModel : public QAbstractListModel {
|
|||||||
int rowCount(const QModelIndex& parent = QModelIndex()) const;
|
int rowCount(const QModelIndex& parent = QModelIndex()) const;
|
||||||
QVariant data(const QModelIndex& index, int role) const;
|
QVariant data(const QModelIndex& index, int role) const;
|
||||||
|
|
||||||
void append(MessageLevel::Enum, QString line);
|
void append(MessageLevel, QString line);
|
||||||
void clear();
|
void clear();
|
||||||
|
|
||||||
void suspend(bool suspend);
|
void suspend(bool suspend);
|
||||||
@@ -31,13 +31,13 @@ class LogModel : public QAbstractListModel {
|
|||||||
void setColorLines(bool state);
|
void setColorLines(bool state);
|
||||||
bool colorLines() const;
|
bool colorLines() const;
|
||||||
|
|
||||||
MessageLevel::Enum previousLevel();
|
MessageLevel previousLevel();
|
||||||
|
|
||||||
enum Roles { LevelRole = Qt::UserRole };
|
enum Roles { LevelRole = Qt::UserRole };
|
||||||
|
|
||||||
private /* types */:
|
private /* types */:
|
||||||
struct entry {
|
struct entry {
|
||||||
MessageLevel::Enum level = MessageLevel::Enum::Unknown;
|
MessageLevel level = MessageLevel::Unknown;
|
||||||
QString line;
|
QString line;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
#include "TextPrint.h"
|
#include "TextPrint.h"
|
||||||
|
|
||||||
TextPrint::TextPrint(LaunchTask* parent, const QStringList& lines, MessageLevel::Enum level) : LaunchStep(parent)
|
TextPrint::TextPrint(LaunchTask* parent, const QStringList& lines, MessageLevel level) : LaunchStep(parent)
|
||||||
{
|
{
|
||||||
m_lines = lines;
|
m_lines = lines;
|
||||||
m_level = level;
|
m_level = level;
|
||||||
}
|
}
|
||||||
TextPrint::TextPrint(LaunchTask* parent, const QString& line, MessageLevel::Enum level) : LaunchStep(parent)
|
TextPrint::TextPrint(LaunchTask* parent, const QString& line, MessageLevel level) : LaunchStep(parent)
|
||||||
{
|
{
|
||||||
m_lines.append(line);
|
m_lines.append(line);
|
||||||
m_level = level;
|
m_level = level;
|
||||||
|
|||||||
@@ -26,8 +26,8 @@
|
|||||||
class TextPrint : public LaunchStep {
|
class TextPrint : public LaunchStep {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
explicit TextPrint(LaunchTask* parent, const QStringList& lines, MessageLevel::Enum level);
|
explicit TextPrint(LaunchTask* parent, const QStringList& lines, MessageLevel level);
|
||||||
explicit TextPrint(LaunchTask* parent, const QString& line, MessageLevel::Enum level);
|
explicit TextPrint(LaunchTask* parent, const QString& line, MessageLevel level);
|
||||||
virtual ~TextPrint() {};
|
virtual ~TextPrint() {};
|
||||||
|
|
||||||
virtual void executeTask();
|
virtual void executeTask();
|
||||||
@@ -36,5 +36,5 @@ class TextPrint : public LaunchStep {
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
QStringList m_lines;
|
QStringList m_lines;
|
||||||
MessageLevel::Enum m_level;
|
MessageLevel m_level;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ std::optional<LogParser::LogEntry> LogParser::parseAttributes()
|
|||||||
entry.timestamp = QDateTime::fromSecsSinceEpoch(value.trimmed().toLongLong());
|
entry.timestamp = QDateTime::fromSecsSinceEpoch(value.trimmed().toLongLong());
|
||||||
} else if (name == "level"_L1) {
|
} else if (name == "level"_L1) {
|
||||||
entry.levelText = value.trimmed().toString();
|
entry.levelText = value.trimmed().toString();
|
||||||
entry.level = MessageLevel::getLevel(entry.levelText);
|
entry.level = messageLevelFromName(entry.levelText);
|
||||||
} else if (name == "thread"_L1) {
|
} else if (name == "thread"_L1) {
|
||||||
entry.thread = value.trimmed().toString();
|
entry.thread = value.trimmed().toString();
|
||||||
}
|
}
|
||||||
@@ -320,7 +320,7 @@ std::optional<LogParser::ParsedItem> LogParser::parseLog4J()
|
|||||||
throw std::runtime_error("unreachable: already verified this was a complete log4j:Event");
|
throw std::runtime_error("unreachable: already verified this was a complete log4j:Event");
|
||||||
}
|
}
|
||||||
|
|
||||||
MessageLevel::Enum LogParser::guessLevel(const QString& line)
|
MessageLevel LogParser::guessLevel(const QString& line)
|
||||||
{
|
{
|
||||||
static const QRegularExpression LINE_WITH_LEVEL("^\\[(?<timestamp>[0-9:]+)\\] \\[[^/]+/(?<level>[^\\]]+)\\]");
|
static const QRegularExpression LINE_WITH_LEVEL("^\\[(?<timestamp>[0-9:]+)\\] \\[[^/]+/(?<level>[^\\]]+)\\]");
|
||||||
auto match = LINE_WITH_LEVEL.match(line);
|
auto match = LINE_WITH_LEVEL.match(line);
|
||||||
@@ -329,7 +329,7 @@ MessageLevel::Enum LogParser::guessLevel(const QString& line)
|
|||||||
QString timestamp = match.captured("timestamp");
|
QString timestamp = match.captured("timestamp");
|
||||||
QString levelStr = match.captured("level");
|
QString levelStr = match.captured("level");
|
||||||
|
|
||||||
return MessageLevel::getLevel(levelStr);
|
return messageLevelFromName(levelStr);
|
||||||
} else {
|
} else {
|
||||||
// Old style forge logs
|
// Old style forge logs
|
||||||
if (line.contains("[INFO]") || line.contains("[CONFIG]") || line.contains("[FINE]") || line.contains("[FINER]") ||
|
if (line.contains("[INFO]") || line.contains("[CONFIG]") || line.contains("[FINE]") || line.contains("[FINER]") ||
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ class LogParser {
|
|||||||
public:
|
public:
|
||||||
struct LogEntry {
|
struct LogEntry {
|
||||||
QString logger;
|
QString logger;
|
||||||
MessageLevel::Enum level;
|
MessageLevel level;
|
||||||
QString levelText;
|
QString levelText;
|
||||||
QDateTime timestamp;
|
QDateTime timestamp;
|
||||||
QString thread;
|
QString thread;
|
||||||
@@ -59,7 +59,7 @@ class LogParser {
|
|||||||
std::optional<Error> getError();
|
std::optional<Error> getError();
|
||||||
|
|
||||||
/// guess log level from a line of game log
|
/// guess log level from a line of game log
|
||||||
static MessageLevel::Enum guessLevel(const QString& line);
|
static MessageLevel guessLevel(const QString& line);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
std::optional<LogEntry> parseAttributes();
|
std::optional<LogEntry> parseAttributes();
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ LauncherPartLaunch::LauncherPartLaunch(LaunchTask* parent)
|
|||||||
static const QRegularExpression s_settingUser(".*Setting user.+", QRegularExpression::CaseInsensitiveOption);
|
static const QRegularExpression s_settingUser(".*Setting user.+", QRegularExpression::CaseInsensitiveOption);
|
||||||
std::shared_ptr<QMetaObject::Connection> connection{ new QMetaObject::Connection };
|
std::shared_ptr<QMetaObject::Connection> connection{ new QMetaObject::Connection };
|
||||||
*connection = connect(&m_process, &LoggedProcess::log, this,
|
*connection = connect(&m_process, &LoggedProcess::log, this,
|
||||||
[connection](const QStringList& lines, [[maybe_unused]] MessageLevel::Enum level) {
|
[connection](const QStringList& lines, [[maybe_unused]] MessageLevel level) {
|
||||||
qDebug() << lines;
|
qDebug() << lines;
|
||||||
if (lines.filter(s_settingUser).length() != 0) {
|
if (lines.filter(s_settingUser).length() != 0) {
|
||||||
APPLICATION->closeAllWindows();
|
APPLICATION->closeAllWindows();
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ QVariant LogFormatProxyModel::data(const QModelIndex& index, int role) const
|
|||||||
case Qt::FontRole:
|
case Qt::FontRole:
|
||||||
return m_font;
|
return m_font;
|
||||||
case Qt::ForegroundRole: {
|
case Qt::ForegroundRole: {
|
||||||
auto level = static_cast<MessageLevel::Enum>(QIdentityProxyModel::data(index, LogModel::LevelRole).toInt());
|
auto level = static_cast<MessageLevel>(QIdentityProxyModel::data(index, LogModel::LevelRole).toInt());
|
||||||
QColor result = colors.foreground.value(level);
|
QColor result = colors.foreground.value(level);
|
||||||
|
|
||||||
if (result.isValid())
|
if (result.isValid())
|
||||||
@@ -69,7 +69,7 @@ QVariant LogFormatProxyModel::data(const QModelIndex& index, int role) const
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case Qt::BackgroundRole: {
|
case Qt::BackgroundRole: {
|
||||||
auto level = static_cast<MessageLevel::Enum>(QIdentityProxyModel::data(index, LogModel::LevelRole).toInt());
|
auto level = static_cast<MessageLevel>(QIdentityProxyModel::data(index, LogModel::LevelRole).toInt());
|
||||||
QColor result = colors.background.value(level);
|
QColor result = colors.background.value(level);
|
||||||
|
|
||||||
if (result.isValid())
|
if (result.isValid())
|
||||||
|
|||||||
@@ -274,18 +274,18 @@ void OtherLogsPage::reload()
|
|||||||
showTooBig();
|
showTooBig();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
MessageLevel::Enum last = MessageLevel::Unknown;
|
MessageLevel last = MessageLevel::Unknown;
|
||||||
|
|
||||||
auto handleLine = [this, &last](QString line) {
|
auto handleLine = [this, &last](QString line) {
|
||||||
if (line.isEmpty())
|
if (line.isEmpty())
|
||||||
return false;
|
return false;
|
||||||
if (line.back() == '\n')
|
if (line.back() == '\n')
|
||||||
line = line.remove(line.size() - 1, 1);
|
line = line.remove(line.size() - 1, 1);
|
||||||
MessageLevel::Enum level = MessageLevel::Unknown;
|
MessageLevel level = MessageLevel::Unknown;
|
||||||
|
|
||||||
QString lineTemp = line; // don't edit out the time and level for clarity
|
QString lineTemp = line; // don't edit out the time and level for clarity
|
||||||
if (!m_instance) {
|
if (!m_instance) {
|
||||||
level = MessageLevel::fromLauncherLine(lineTemp);
|
level = messageLevelFromLauncherLine(lineTemp);
|
||||||
} else {
|
} else {
|
||||||
level = LogParser::guessLevel(line);
|
level = LogParser::guessLevel(line);
|
||||||
|
|
||||||
|
|||||||
@@ -229,7 +229,7 @@ bool CustomTheme::read(const QString& path, bool& hasCustomLogColors)
|
|||||||
hasCustomLogColors = true;
|
hasCustomLogColors = true;
|
||||||
|
|
||||||
auto logColorsRoot = Json::requireObject(root, "logColors");
|
auto logColorsRoot = Json::requireObject(root, "logColors");
|
||||||
auto readAndSetLogColor = [this, readColor, logColorsRoot](MessageLevel::Enum level, bool fg, const QString& colorName) {
|
auto readAndSetLogColor = [this, readColor, logColorsRoot](MessageLevel level, bool fg, const QString& colorName) {
|
||||||
auto color = readColor(logColorsRoot, colorName);
|
auto color = readColor(logColorsRoot, colorName);
|
||||||
if (color.isValid()) {
|
if (color.isValid()) {
|
||||||
if (fg)
|
if (fg)
|
||||||
|
|||||||
@@ -42,8 +42,8 @@
|
|||||||
class QStyle;
|
class QStyle;
|
||||||
|
|
||||||
struct LogColors {
|
struct LogColors {
|
||||||
QMap<MessageLevel::Enum, QColor> background;
|
QMap<MessageLevel, QColor> background;
|
||||||
QMap<MessageLevel::Enum, QColor> foreground;
|
QMap<MessageLevel, QColor> foreground;
|
||||||
};
|
};
|
||||||
|
|
||||||
// TODO: rename to Theme; this is not an interface as it contains method implementations
|
// TODO: rename to Theme; this is not an interface as it contains method implementations
|
||||||
|
|||||||
@@ -232,7 +232,7 @@ void AppearanceWidget::updateConsolePreview()
|
|||||||
m_ui->consolePreview->clear();
|
m_ui->consolePreview->clear();
|
||||||
m_defaultFormat.setFont(QFont(fontFamily, fontSize));
|
m_defaultFormat.setFont(QFont(fontFamily, fontSize));
|
||||||
|
|
||||||
auto print = [this, colors](const QString& message, MessageLevel::Enum level) {
|
auto print = [this, colors](const QString& message, MessageLevel level) {
|
||||||
QTextCharFormat format(m_defaultFormat);
|
QTextCharFormat format(m_defaultFormat);
|
||||||
|
|
||||||
QColor bg = colors.background.value(level);
|
QColor bg = colors.background.value(level);
|
||||||
|
|||||||
@@ -47,10 +47,10 @@ class XmlLogParseTest : public QObject {
|
|||||||
QStringList shortTextLevels_s = QString::fromUtf8(FS::read(FS::PathCombine(source, "vanilla-1.21.5-levels.txt")))
|
QStringList shortTextLevels_s = QString::fromUtf8(FS::read(FS::PathCombine(source, "vanilla-1.21.5-levels.txt")))
|
||||||
.split(QRegularExpression("\n|\r\n|\r"), Qt::SkipEmptyParts);
|
.split(QRegularExpression("\n|\r\n|\r"), Qt::SkipEmptyParts);
|
||||||
|
|
||||||
QList<MessageLevel::Enum> shortTextLevels;
|
QList<MessageLevel> shortTextLevels;
|
||||||
shortTextLevels.reserve(24);
|
shortTextLevels.reserve(24);
|
||||||
std::transform(shortTextLevels_s.cbegin(), shortTextLevels_s.cend(), std::back_inserter(shortTextLevels),
|
std::transform(shortTextLevels_s.cbegin(), shortTextLevels_s.cend(), std::back_inserter(shortTextLevels),
|
||||||
[](const QString& line) { return MessageLevel::getLevel(line.trimmed()); });
|
[](const QString& line) { return messageLevelFromName(line.trimmed()); });
|
||||||
|
|
||||||
QString longXml = QString::fromUtf8(FS::read(FS::PathCombine(source, "TerraFirmaGreg-Modern-forge.xml.log")));
|
QString longXml = QString::fromUtf8(FS::read(FS::PathCombine(source, "TerraFirmaGreg-Modern-forge.xml.log")));
|
||||||
QString longText = QString::fromUtf8(FS::read(FS::PathCombine(source, "TerraFirmaGreg-Modern-forge.text.log")));
|
QString longText = QString::fromUtf8(FS::read(FS::PathCombine(source, "TerraFirmaGreg-Modern-forge.text.log")));
|
||||||
@@ -59,18 +59,18 @@ class XmlLogParseTest : public QObject {
|
|||||||
QStringList longTextLevelsXml_s = QString::fromUtf8(FS::read(FS::PathCombine(source, "TerraFirmaGreg-Modern-xml-levels.txt")))
|
QStringList longTextLevelsXml_s = QString::fromUtf8(FS::read(FS::PathCombine(source, "TerraFirmaGreg-Modern-xml-levels.txt")))
|
||||||
.split(QRegularExpression("\n|\r\n|\r"), Qt::SkipEmptyParts);
|
.split(QRegularExpression("\n|\r\n|\r"), Qt::SkipEmptyParts);
|
||||||
|
|
||||||
QList<MessageLevel::Enum> longTextLevelsPlain;
|
QList<MessageLevel> longTextLevelsPlain;
|
||||||
longTextLevelsPlain.reserve(974);
|
longTextLevelsPlain.reserve(974);
|
||||||
std::transform(longTextLevels_s.cbegin(), longTextLevels_s.cend(), std::back_inserter(longTextLevelsPlain),
|
std::transform(longTextLevels_s.cbegin(), longTextLevels_s.cend(), std::back_inserter(longTextLevelsPlain),
|
||||||
[](const QString& line) { return MessageLevel::getLevel(line.trimmed()); });
|
[](const QString& line) { return messageLevelFromName(line.trimmed()); });
|
||||||
QList<MessageLevel::Enum> longTextLevelsXml;
|
QList<MessageLevel> longTextLevelsXml;
|
||||||
longTextLevelsXml.reserve(896);
|
longTextLevelsXml.reserve(896);
|
||||||
std::transform(longTextLevelsXml_s.cbegin(), longTextLevelsXml_s.cend(), std::back_inserter(longTextLevelsXml),
|
std::transform(longTextLevelsXml_s.cbegin(), longTextLevelsXml_s.cend(), std::back_inserter(longTextLevelsXml),
|
||||||
[](const QString& line) { return MessageLevel::getLevel(line.trimmed()); });
|
[](const QString& line) { return messageLevelFromName(line.trimmed()); });
|
||||||
|
|
||||||
QTest::addColumn<QString>("log");
|
QTest::addColumn<QString>("log");
|
||||||
QTest::addColumn<int>("num_entries");
|
QTest::addColumn<int>("num_entries");
|
||||||
QTest::addColumn<QList<MessageLevel::Enum>>("entry_levels");
|
QTest::addColumn<QList<MessageLevel>>("entry_levels");
|
||||||
|
|
||||||
QTest::newRow("short-vanilla-plain") << shortText << 25 << shortTextLevels;
|
QTest::newRow("short-vanilla-plain") << shortText << 25 << shortTextLevels;
|
||||||
QTest::newRow("short-vanilla-xml") << shortXml << 25 << shortTextLevels;
|
QTest::newRow("short-vanilla-xml") << shortXml << 25 << shortTextLevels;
|
||||||
@@ -82,9 +82,9 @@ class XmlLogParseTest : public QObject {
|
|||||||
{
|
{
|
||||||
QFETCH(QString, log);
|
QFETCH(QString, log);
|
||||||
QFETCH(int, num_entries);
|
QFETCH(int, num_entries);
|
||||||
QFETCH(QList<MessageLevel::Enum>, entry_levels);
|
QFETCH(QList<MessageLevel>, entry_levels);
|
||||||
|
|
||||||
QList<std::pair<MessageLevel::Enum, QString>> entries = {};
|
QList<std::pair<MessageLevel, QString>> entries = {};
|
||||||
|
|
||||||
QBENCHMARK
|
QBENCHMARK
|
||||||
{
|
{
|
||||||
@@ -93,10 +93,10 @@ class XmlLogParseTest : public QObject {
|
|||||||
|
|
||||||
QCOMPARE(entries.length(), num_entries);
|
QCOMPARE(entries.length(), num_entries);
|
||||||
|
|
||||||
QList<MessageLevel::Enum> levels = {};
|
QList<MessageLevel> levels = {};
|
||||||
|
|
||||||
std::transform(entries.cbegin(), entries.cend(), std::back_inserter(levels),
|
std::transform(entries.cbegin(), entries.cend(), std::back_inserter(levels),
|
||||||
[](std::pair<MessageLevel::Enum, QString> entry) { return entry.first; });
|
[](std::pair<MessageLevel, QString> entry) { return entry.first; });
|
||||||
|
|
||||||
QCOMPARE(levels, entry_levels);
|
QCOMPARE(levels, entry_levels);
|
||||||
}
|
}
|
||||||
@@ -104,10 +104,10 @@ class XmlLogParseTest : public QObject {
|
|||||||
private:
|
private:
|
||||||
LogParser m_parser;
|
LogParser m_parser;
|
||||||
|
|
||||||
QList<std::pair<MessageLevel::Enum, QString>> parseLines(const QStringList& lines)
|
QList<std::pair<MessageLevel, QString>> parseLines(const QStringList& lines)
|
||||||
{
|
{
|
||||||
QList<std::pair<MessageLevel::Enum, QString>> out;
|
QList<std::pair<MessageLevel, QString>> out;
|
||||||
MessageLevel::Enum last = MessageLevel::Unknown;
|
MessageLevel last = MessageLevel::Unknown;
|
||||||
|
|
||||||
for (const auto& line : lines) {
|
for (const auto& line : lines) {
|
||||||
m_parser.appendLine(line);
|
m_parser.appendLine(line);
|
||||||
|
|||||||
Reference in New Issue
Block a user