]> git.lyx.org Git - lyx.git/blobdiff - src/debug.h
make frontend::Application a bit slimmer
[lyx.git] / src / debug.h
index 5e7d9a1d39514124a4ab3ecd870f529cca2b3c6e..64aa1d207b9c15fb6282be267f3c9251980b9abc 100644 (file)
@@ -1,6 +1,11 @@
 // -*- C++ -*-
 /**
  * \file debug.h
+ *
+ * FIXME: It would be nice if, in lyx::use_gui mode, instead of
+ * outputting to the console, we would pipe all messages onto a file
+ * and visualise the contents dynamically in a Qt window if needed.
+ *
  * This file is part of LyX, the document processor.
  * Licence details can be found in the file COPYING.
  *
@@ -14,7 +19,7 @@
 #define LYXDEBUG_H
 
 #include "support/debugstream.h"
-#include "support/docstring.h"
+#include "support/strfwd.h"
 
 
 namespace lyx {
@@ -85,9 +90,7 @@ public:
                ANY = 0xffffffff
        };
 
-       static bool match(type a, type b) {
-               return (a & b);
-       }
+       static bool match(type a, type b) { return (a & b); }
 
        /** A function to convert symbolic string names on debug levels
            to their numerical value.
@@ -113,14 +116,17 @@ void operator|=(lyx_debug_trait::type & d1, lyx_debug_trait::type d2)
 }
 
 
-// std::ostream & operator<<(std::ostream & o, Debug::type t);
-
 typedef basic_debugstream<lyx_debug_trait> LyXErr;
 typedef LyXErr::debug Debug;
 
 extern LyXErr lyxerr;
 
-
 } // namespace lyx
 
+#define LYXERR(type, msg) \
+       do { \
+               if (!lyx::lyxerr.debugging(type)) {} else lyx::lyxerr << msg << std::endl; \
+       } while (0)
+
+
 #endif