]> git.siccegge.de Git - frida/frida.git/blobdiff - src/gui/widgets/LogDockAppender.cxx
Make LogDock and LogDockAppender communicate by signals
[frida/frida.git] / src / gui / widgets / LogDockAppender.cxx
index 5003139d1f3c269b4fc5426f6f8838252ac7ab96..a0db7a4140f8fe9319706e681c4bd32ebef26ef7 100644 (file)
@@ -2,6 +2,7 @@
 #include "LogDock.hxx"
 
 #include <log4cxx/patternlayout.h>
+#include <QTimer>
 
 using namespace log4cxx::helpers;
 
@@ -41,20 +42,9 @@ void LogDockAppender::append(const spi::LoggingEventPtr& event, Pool& p) {
        } else if (log4cxx::Level::getTrace() == event->getLevel()) {
                rowcolor.setRgb(0xee, 0xff, 0xee);
        }
-
-       int rowcount = target->rowCount();
-       target->insertRow(rowcount);
-       target->setItem(rowcount, 0, new QTableWidgetItem(timestampencode.c_str()));
-       target->setItem(rowcount, 1, new QTableWidgetItem(event->getLevel()->toString().c_str()));
-       target->setItem(rowcount, 2, new QTableWidgetItem(messageencode.c_str()));
-       target->item(rowcount, 0)->setBackground(rowcolor);
-       target->item(rowcount, 1)->setBackground(rowcolor);
-       target->item(rowcount, 2)->setBackground(rowcolor);
-       target->resizeColumnsToContents();
-}
-
-void LogDockAppender::setTarget(LogDock *target) {
-       this->target = target;
+       emit newLogEntry(rowcolor, timestampencode.c_str(),
+                        event->getLevel()->toString().c_str(),
+                        messageencode.c_str());
 }
 
 void LogDockAppender::close() {