On Monday 20 February 2012 12:25:07 Lincoln Ramsay wrote: > On 02/17/2012 06:23 PM, ext David Faure wrote: > > Yes, end users don't like debug statements polluting their terminals and > > session log file. With the above reasoning, we could just keep saying "do > > not use qDebug in committed code" and the problem would be fixed. But in > > the case where developers don't follow that rule, users will appreciate > > an off switch :). > > Ok... I think I'm convinced. > > You can of course always drop these messages from the message handler.
No, users cannot do that ;) Application developers can, but not library developers nor users. Especially in the open source world, where libraries and apps are developed by different people, and the app developers have little control over the code in the libs they are using. Well, I suspect this happens in commercial setups too :-). Proper usage of qLog with areas solves the "lib issue", but there's also the case of using 20 different apps, which use qDebug without an area (that's what qDebug is for), and users then need to be able to switch it off. > Turning off qDebugs using the "if (!enabled); else" pattern would make > these ignored debugs cheaper so it makes sense to do that in the macro. Yep. > Where I'm a bit less clear is how the API for this would look. > > Do you imagine something in the qLog config file? An environment > variable? A C++ API? I think "something in the qLog config file" is the best option. It allows to provide a GUI tool that toggles the configuration, for users. An env var would be my second favorite, a C++ API is definitely a no since the goal is to let users toggle it. -- David Faure | david.fa...@kdab.com | KDE/Qt Senior Software Engineer KDAB (France) S.A.S., a KDAB Group company Tel. France +33 (0)4 90 84 08 53, Sweden (HQ) +46-563-540090 KDAB - Qt Experts - Platform-independent software solutions _______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development