]> git.saurik.com Git - wxWidgets.git/blobdiff - misc/gdb/print.py
add a custom printer for wxString to use with Python-enabled gdb
[wxWidgets.git] / misc / gdb / print.py
diff --git a/misc/gdb/print.py b/misc/gdb/print.py
new file mode 100755 (executable)
index 0000000..46a71d0
--- /dev/null
@@ -0,0 +1,21 @@
+###############################################################################
+# Name:         misc/gdb/print.py
+# Purpose:      pretty-printers for wx data structures: this file is meant to
+#               be sourced from gdb using "source -p" (or, better, autoloaded
+#               in the future...)
+# Author:       Vadim Zeitlin
+# Created:      2009-01-04
+# RCS-Id:       $Id:$
+# Copyright:    (c) 2009 Vadim Zeitlin
+# License:      wxWindows licence
+###############################################################################
+
+# shamelessly stolen from std::string example
+class wxStringPrinter:
+    def __init__(self, val):
+        self.val = val
+
+    def to_string(self):
+        return '"' + self.val['m_impl']['_M_dataplus']['_M_p'].string() + '"'
+
+gdb.pretty_printers['^wxString$'] = wxStringPrinter