summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhjk <qtc-committer@nokia.com>2010-08-13 09:50:14 +0200
committerhjk <qtc-committer@nokia.com>2010-08-13 09:57:35 +0200
commitae55b43c3782a06d625805e2135f2a0c3b7754b2 (patch)
treecf52d34ca7d58cd474a4e2d305fbabe4cad246ca
parentc5b027cd1f27cc23936a79429d2efed76ee72e83 (diff)
downloadqt-creator-ae55b43c3782a06d625805e2135f2a0c3b7754b2.tar.gz
debugger: fix display of QObject properties
This is a backport of 5d645bfdfe87b22315997847191ac7d45b243e99
-rw-r--r--share/qtcreator/gdbmacros/dumper.py11
-rw-r--r--share/qtcreator/gdbmacros/gdbmacros.py9
2 files changed, 14 insertions, 6 deletions
diff --git a/share/qtcreator/gdbmacros/dumper.py b/share/qtcreator/gdbmacros/dumper.py
index 317224d52f..d49e1682fe 100644
--- a/share/qtcreator/gdbmacros/dumper.py
+++ b/share/qtcreator/gdbmacros/dumper.py
@@ -1326,6 +1326,13 @@ class Dumper:
nsStrippedType = self.stripNamespaceFromType(
typedefStrippedType).replace("::", "__")
+ # Is this derived from QObject?
+ try:
+ item.value['staticMetaObject']
+ hasMetaObject = True
+ except:
+ hasMetaObject = False
+
#warn(" STRIPPED: %s" % nsStrippedType)
#warn(" DUMPERS: %s" % self.dumpers)
#warn(" DUMPERS: %s" % (nsStrippedType in self.dumpers))
@@ -1336,6 +1343,10 @@ class Dumper:
self.putValue(value)
self.putNumChild(0)
+ elif hasMetaObject and self.useFancy:
+ self.putType(item.value.type)
+ qdump__QObject(self, item)
+
elif nsStrippedType in self.dumpers:
#warn("IS DUMPABLE: %s " % type)
self.putType(item.value.type)
diff --git a/share/qtcreator/gdbmacros/gdbmacros.py b/share/qtcreator/gdbmacros/gdbmacros.py
index 60869f6e8d..4db5d3850c 100644
--- a/share/qtcreator/gdbmacros/gdbmacros.py
+++ b/share/qtcreator/gdbmacros/gdbmacros.py
@@ -578,9 +578,6 @@ def extractCString(table, offset):
return result
-def qdump__QWidget(d, item):
- qdump__QObject(d, item)
-
def qdump__QObject(d, item):
#warn("OBJECT: %s " % item.value)
staticMetaObject = item.value["staticMetaObject"]
@@ -617,15 +614,15 @@ def qdump__QObject(d, item):
d.putNumChild(4)
if d.isExpanded(item):
with Children(d):
+ d.putFields(item)
# Parent and children.
d.putItem(Item(d_ptr["parent"], item.iname, "parent", "parent"))
d.putItem(Item(d_ptr["children"], item.iname, "children", "children"))
# Properties.
with SubItem(d):
- #propertyCount = metaData[6]
- # FIXME: Replace with plain memory accesses.
- propertyCount = call(mo, "propertyCount()")
+ propertyCount = metaData[6]
+ #propertyCount = call(mo, "propertyCount()")
#warn("PROPERTY COUNT: %s" % propertyCount)
propertyData = metaData[7]
d.putName("properties")