summaryrefslogtreecommitdiff
path: root/src/printutils.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/printutils.cc')
-rw-r--r--src/printutils.cc16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/printutils.cc b/src/printutils.cc
index a75cf14..3d909c4 100644
--- a/src/printutils.cc
+++ b/src/printutils.cc
@@ -1,7 +1,14 @@
#include "printutils.h"
-#include "MainWindow.h"
QList<QString> print_messages_stack;
+OutputHandlerFunc *outputhandler = NULL;
+void *outputhandler_data = NULL;
+
+void set_output_handler(OutputHandlerFunc *newhandler, void *userdata)
+{
+ outputhandler = newhandler;
+ outputhandler_data = userdata;
+}
void print_messages_push()
{
@@ -35,10 +42,9 @@ void PRINT_NOCACHE(const QString &msg)
{
if (msg.isNull())
return;
- if (MainWindow::current_win.isNull()) {
- fprintf(stderr, "%s\n", msg.toAscii().data());
+ if (!outputhandler) {
+ fprintf(stderr, "%s\n", msg.toUtf8().data());
} else {
- MainWindow::current_win->console->append(msg);
+ outputhandler(msg, outputhandler_data);
}
}
-
contact: Jan Huwald // Impressum