CCIMXDesktop
 
Loading...
Searching...
No Matches
ConsoleColorDecorator.h
1#ifndef CONSOLECOLORDECORATOR_H
2#define CONSOLECOLORDECORATOR_H
3
4#include "core/loggers/base_components/format_factory/FormativeFactory.h"
5
14 static constexpr const char* RESET = "\033[0m";
15 static constexpr const char* RED = "\033[31m";
16 static constexpr const char* GREEN = "\033[32m";
17 static constexpr const char* YELLOW = "\033[33m";
18 static constexpr const char* BLUE = "\033[34m";
19 static constexpr const char* CYAN = "\033[36m";
21public:
27
31 ~ConsoleColorDecorator() override = default;
32
40 QString formativeFactory(QtMsgType type, const QMessageLogContext& context, const QString& msg) override;
41
42private:
43 std::shared_ptr<FormativeFactory> decorated_factory;
50 QString from_msgType(QtMsgType type) const;
51
59 inline const QString get_default_type(QtMsgType type, const QMessageLogContext& context, const QString& msg) const {
60 return msg;
61 }
62};
63
64#endif // CONSOLECOLORDECORATOR_H
Decorator pattern implementation for adding ANSI color codes to log messages.
Definition ConsoleColorDecorator.h:13
~ConsoleColorDecorator() override=default
Default destructor.
QString formativeFactory(QtMsgType type, const QMessageLogContext &context, const QString &msg) override
Formats and colors a log message based on its type.
Definition ConsoleColorDecorator.cpp:8
Definition FormativeFactory.h:5