1 #ifndef CTL_MESSAGEHANDLER_H 2 #define CTL_MESSAGEHANDLER_H 4 #include <QMessageLogContext> 54 static void qInstaller(QtMsgType type,
const QMessageLogContext& context,
const QString &msg);
57 const QStringList&
log()
const;
65 template<
class ... QString>
68 template<
class ... QString>
84 void squelch(
bool enabled =
true);
95 template<
class ... QString>
97 template<
class ... QString>
106 void processMessage(QtMsgType type,
const QMessageLogContext &context,
const QString &msg);
109 void newLogEntry()
const;
110 void messagePrinted()
const;
119 QString _logfileName = QStringLiteral(
"ctllog.txt");
121 bool _blacklistAll =
false;
122 bool _blacklistMsgType[5] = {};
123 bool _logBlacklistedMsg =
false;
124 bool _showDateTag =
false;
125 bool _showMsgOrig =
false;
126 bool _showTimeTag =
true;
127 bool _showTypeTag =
true;
128 bool _squelched =
false;
130 QStringList _blacklistClassFct;
131 QStringList _blacklistFiles;
133 QStringList _whitelistClassFct;
134 QStringList _whitelistFiles;
136 bool isBlacklisted(QtMsgType type,
const QMessageLogContext& context)
const;
137 bool isBlacklistedClassOrFct(
const QMessageLogContext& context)
const;
138 bool isBlacklistedFile(
const QMessageLogContext& context)
const;
139 bool isBlacklistedMessageType(QtMsgType type)
const;
141 bool isWhitelisted(
const QMessageLogContext& context)
const;
142 bool isWhitelistedClassOrFct(
const QMessageLogContext& context)
const;
143 bool isWhitelistedFile(
const QMessageLogContext& context)
const;
145 QString dateTimeTag()
const;
146 static QString messageOriginString(
const QMessageLogContext& context);
147 static QString typeTag(QtMsgType type);
149 void printMessage(
const QString& finalMsg, QtMsgType type)
const;
151 static bool screenList(
const QStringList& list,
const char* str);
176 template<
class ... QString>
179 _blacklistClassFct.append(QStringList{ names... });
208 template<
class ... QString>
211 _blacklistFiles.append(QStringList{ names... });
244 template<
class ... QString>
247 _whitelistClassFct.append(QStringList{ names... });
269 template<
class ... QString>
272 _whitelistFiles.append(QStringList{ names... });
278 #endif // CTL_MESSAGEHANDLER_H void messageFromSignal(QString msg)
Definition: messagehandler.cpp:282
void toggleDateTag(bool show)
Definition: messagehandler.cpp:212
void toggleAllTags(bool show)
Definition: messagehandler.cpp:237
static void qInstaller(QtMsgType type, const QMessageLogContext &context, const QString &msg)
Definition: messagehandler.cpp:296
void toggleTimeTag(bool show)
Definition: messagehandler.cpp:217
void toggleMessageOriginTag(bool show)
Definition: messagehandler.cpp:227
void whitelistClassOrFunction(const QString &... names)
Definition: messagehandler.h:245
void squelch(bool enabled=true)
Definition: messagehandler.cpp:207
void blacklistMessageType(QtMsgType type)
Definition: messagehandler.cpp:151
void toggleTypeTag(bool show)
Definition: messagehandler.cpp:222
void enforceLoggingOfBlacklistMsg(bool enabled=true)
Definition: messagehandler.cpp:182
bool writeLogFile() const
Definition: messagehandler.cpp:250
void setQuiet(bool enabled=true)
Definition: messagehandler.cpp:200
void blacklistFile(const QString &... names)
Definition: messagehandler.h:209
bool writeLogFileAndClear()
Definition: messagehandler.cpp:268
void clearAllBlacklists()
Definition: messagehandler.cpp:162
void whitelistFile(const QString &... names)
Definition: messagehandler.h:270
const QStringList & log() const
Definition: messagehandler.cpp:104
The MessageHandler class provides a means to control the message output of the CTL and allows saving ...
Definition: messagehandler.h:39
void blacklistAll(bool blacklist=true)
Definition: messagehandler.cpp:136
QString lastMessage() const
Definition: messagehandler.cpp:113
static MessageHandler & instance()
Definition: messagehandler.cpp:55
void blacklistClassOrFunction(const QString &... names)
Definition: messagehandler.h:177
void setLogFileName(const QString &fileName)
Definition: messagehandler.cpp:192
void clearAllWhitelists()
Definition: messagehandler.cpp:172