aboutsummaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authorhjk <hjk@theqtcompany.com>2016-04-04 18:26:07 +0200
committerhjk <hjk@theqtcompany.com>2016-04-06 06:20:04 +0000
commitb7d8d9ba3a4705d845aac86400e2538f93c94b39 (patch)
tree00d34ed254701d0b54869e7e7f5f6815fb935f51 /share
parent0408aee321d2ac413e85ff137e32905921a0210f (diff)
Debugger: Add a QBitArray dumper
Task-number: QTCREATORBUG-15974 Change-Id: Iafb0d94f5d780b3165d8bb749429754a5de051e3 Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com> Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
Diffstat (limited to 'share')
-rw-r--r--share/qtcreator/debugger/qttypes.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/share/qtcreator/debugger/qttypes.py b/share/qtcreator/debugger/qttypes.py
index 0d8908730a..ce475385a0 100644
--- a/share/qtcreator/debugger/qttypes.py
+++ b/share/qtcreator/debugger/qttypes.py
@@ -82,6 +82,22 @@ def qdump__QByteArrayData(d, value):
d.putIntItem("size", size)
d.putIntItem("alloc", alloc)
+
+def qdump__QBitArray(d, value):
+ data, basize, alloc = d.byteArrayDataHelper(d.extractPointer(value["d"]))
+ unused = d.extractByte(data)
+ size = basize * 8 - unused
+ d.putItemCount(size)
+ if d.isExpanded():
+ with Children(d, size, maxNumChild=10000):
+ for i in d.childRange():
+ q = data + 1 + int(i / 8)
+ with SubItem(d, i):
+ d.putValue((int(d.extractPointer(q)) >> (i % 8)) & 1)
+ d.putType("bool")
+ d.putNumChild(0)
+
+
def qdump__QChar(d, value):
d.putValue(int(value["ucs"]))
d.putNumChild(0)