]> git.siccegge.de Git - frida/frida.git/blobdiff - src/gui/widgets/LogDockAppender.hxx
Add log widget to lower dock
[frida/frida.git] / src / gui / widgets / LogDockAppender.hxx
diff --git a/src/gui/widgets/LogDockAppender.hxx b/src/gui/widgets/LogDockAppender.hxx
new file mode 100644 (file)
index 0000000..bfe702f
--- /dev/null
@@ -0,0 +1,33 @@
+#ifndef INCLUDE__LogDockAppender_hxx_
+#define INCLUDE__LogDockAppender_hxx_
+
+#include <log4cxx/appenderskeleton.h>
+#include <log4cxx/spi/loggingevent.h>
+#include <log4cxx/helpers/strftimedateformat.h>
+
+class LogDock;
+
+using namespace log4cxx;
+
+class LogDockAppender : public AppenderSkeleton {
+public:
+       LogDockAppender();
+
+       void setTarget(LogDock* target);
+       void append(const spi::LoggingEventPtr& event, helpers::Pool& p);
+       void close();
+       bool requiresLayout() const;
+
+       DECLARE_LOG4CXX_OBJECT(LogDockAppender)
+       BEGIN_LOG4CXX_CAST_MAP()
+       LOG4CXX_CAST_ENTRY(LogDockAppender)
+       LOG4CXX_CAST_ENTRY_CHAIN(AppenderSkeleton)
+       END_LOG4CXX_CAST_MAP()
+private:
+       LogDock* target;
+       helpers::StrftimeDateFormat timeformat;
+};
+
+LOG4CXX_PTR_DEF(LogDockAppender);
+
+#endif /* INCLUDE__LogDockAppender_hxx_ */