I’ve thought of some improvements regarding logging. Currently logger objects are named like tlog[1-6]. What about changing it to more readable and comprehensible names? I would also remove some logger levels as they’re barerly different when I think about major/minor warning. My proposal:
tlog0 -> logInfo
tlog1 -> logError
tlog2 -> logWarn
tlog3 -> remove (belongs to logWarn)
tlog4 -> remove (belongs to logDebug)
tlog5 -> logDebug
tlog6 -> remove (belongs to logDebug)
So we would have four different logger objects/levels. Refactoring should be relatively easy with find/replace.
My next point is colored logging. Many IDEs(qtcreator, eclipse) have problems in interpreting color codes, so they are represented as raw text in the console output window which makes it mostly unreadable. Is there anyone who wants to keep it as it is? We could make color output optional as well. (settings.json). To see the different better between warning and debug then, the log level could be printed before the actual log message.
e.g.: DEBUG: This is a very boring debug message:)
Printing the log level on your own becomes unnecessary e.g. tlog3 << "Warn: …"
Errors could be directed to std::cerr insted of std::cout. Most editors can interpret this and display error texts in red.
PS: Sorry, what I forgot to say is that if I will do that refactoring/changes then not before 0.9.1 release. It will change mostly every source file, so I’ll say you the exact date. After a release there aren’t so many SC updates, this will probably the best time.