Commit Graph

155 Commits

Author SHA1 Message Date
hjk
5f16194870 Debugger: Add test for dynamic QObject property dumper
Change-Id: I3216a8f891b76a5e9d342aa97540fcb73c590531
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-03-25 16:59:15 +01:00
hjk
f7a05780d2 Debugger: Fix QObject property dumper for Qt4
Change-Id: I5aa28a3c1fb5847b758f5f1a27359cab3e38ff5c
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-03-20 15:44:49 +01:00
hjk
484bacdd51 Debugger: Robustify QMetaObject extraction.
LLDB manages to extract a QAction metaobject from any
plain int and classes without any bases.

Change-Id: I22cdd8e5c73d21d837772be83087dc065698db30
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-03-19 17:07:32 +01:00
hjk
5d1bc3859d Debugger: Add simple QV4::String dumper
Change-Id: Ide277128d30c4dcc5c396441ebd6e40aa3fc8b51
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-18 10:32:31 +01:00
hjk
af43f684bd Debugger: Consolidate metaObject recognition
Same code can be used for LLDB and GDB...

Change-Id: I07aae10fec28f01425cc13285504f57aef3afd25
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-03-12 14:31:36 +01:00
hjk
b7ebfd274f Debugger: Move some common bridge code to dumper base
Change-Id: I9fd988c84bff5e02bc45478994f27a7bddb3358b
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-03-07 13:14:13 +01:00
hjk
d14676dc10 Debugger: Remove glitch in QObject property reporting.
There was a spurious item named [10] (or similar) at the end
of the list.

Change-Id: I9bfd41325f47206c11e26161f6b0838778f8c306
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-02-28 17:16:36 +01:00
hjk
cd35d16983 Debugger: Also display dynamic QObject properties
Also, don't pre-compute the property count for performance
reasons. This leaves us with not too much information before
actually expanding the note, but better than waiting a
minute before seeing anything from a qwidget or such.

Change-Id: Ia39a01ec053ca821bb6cc76f09b3e836fa0d1b03
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-02-13 11:33:46 +01:00
hjk
b9834e4092 Debugger: Move special argv display to DumperBase and use for LLDB, too
Change-Id: Ie1913f5a5062d230e02a4f1738ca14bd6cebc55c
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-02-04 17:02:38 +01:00
hjk
357598059d Debugger: Consolidate ways to dereference in dumpers
Change-Id: I513123a1b5564ff2beee13b5d0264f1fa8fc698e
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-30 16:17:40 +01:00
hjk
d40ee224d4 Debugger: Handle extraction of data from temporary SBValue
Change-Id: I5d79b59e971933fef8ef94c20333035188d33a57
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-30 16:01:43 +01:00
hjk
d37e890a1d Debugger: Show name also for QObject subclasses without Q_OBJECT macro
Change-Id: Ifabf3cc68751a06c15fc1a5a05cad5e5a64c8775
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-29 13:56:01 +01:00
hjk
ea8107339f Debugger: Fix long standing regression of property display with Qt 4
Change-Id: Ic4ed92a00d2084b63f79da764377ccde42475ac6
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-29 13:55:02 +01:00
hjk
717e384bb5 Debugger: Handle $xmm0 etc in watchers
Change-Id: Ic2d2bd88da6b773b72518d6058c3be2ca389d73a
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-25 22:32:28 +01:00
hjk
51b743a2d1 Debugger: Some dumper robustification
Change-Id: Id0af97ed54dd936a68696e66c3fcf4dcbf2645e8
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-25 15:39:37 +01:00
hjk
392123388a Debugger: Some qobject dumper speedup
Slight change in behavior: Only classes with Q_OBJECT
macro are now recognized as QObjects.

Change-Id: If2df6c31ef6d098944e317e27dfcbc21d60f61ee
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-24 18:27:00 +01:00
hjk
cc3facd944 Debugger: Enable QObject property display with LLDB
Finally.

Change-Id: I3257ffbb23ca2ea4eec9a97335a95580c9c4482b
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-24 17:36:27 +01:00
hjk
2e7479aef0 Debugger: Add data extraction for dumper inferior call results.
Change-Id: I868be727c48cb3aa570f196dadde71706df01596
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-24 16:46:51 +01:00
hjk
2b9a00f172 Debugger: Streamline encoding handling
Replace base64 with hex encoding, centralize
conversions, drop dependency on binascii module.

Task-number: QTCREATORBUG-11317

Change-Id: Id3d419d4fe8f75710352f4bc0e6310be849426bd
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-23 16:50:08 +01:00
hjk
a1e7bae417 Debugger: More workarounds for LLDB child object address reports
Change-Id: I33ae39b3bd347c296626c03636775f6057faf385
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-22 14:46:40 +01:00
hjk
8cb5f1547d Debugger: Prefer hex values for pointers in transport
Doesn't change the result, but makes debugging the
protocol easier.

Change-Id: I8fae79bfbd647c296626c03636775f6057faf385
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-22 14:04:10 +01:00
hjk
d6a2d0967f Debugger: Better QObject display with LLDB
Change-Id: Ide88fd07e077a158223a68cc504fff5a5b9391ac
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-21 18:20:43 +01:00
hjk
376f58df34 Debugger: Fix QObject/property dumper
Change-Id: Ied68fd07e077a185223a68cc504fff5a5b9391ac
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-20 17:08:53 +01:00
hjk
44374dde75 Debugger: Also handle LLDB in compact map item display
Change-Id: I5a3f8915f2b6eb52e706d344b9e7998e1f96ab1f
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-15 16:50:30 +01:00
hjk
c959fc5fd5 Debugger: Use Dumper.putPair in Q{Multi,}Map dumper
Change-Id: I4c9abdc1d14823b35a8cbf3b375acc4a45274193
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-15 15:20:34 +01:00
hjk
ef4e417b0c Debugger: Improve some libc++ dumper.
Change-Id: I18f2ad9e46c88302d523b879558f65b4a86b0e2c
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-14 18:52:41 +01:00
hjk
df7d9eb8b6 Debugger: Add some convenience to display "paired" data
The switch between compact/full display was so far part of the
individual dumpers, there's some potential for code-reuse here.

Change-Id: I47e3308cfd2209948adbf70fca617908e793c0fc
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-14 15:06:53 +01:00
hjk
345221d738 Debugger: Add dumper for libc++'s std::unordered_map
Change-Id: I15bf32c1f77c17f42ee1da39f1353cff580fa6eb
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-13 16:12:09 +01:00
hjk
8ebb6aa9f6 Debugger: Extend use of Dumper.putPlotData
Make backend-agnostic and use it for QFiniteStack and
std::{array,vector}

Change-Id: I1702d4290ee24c957f77b539591313ac83021003
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-08 18:02:29 +01:00
Eike Ziller
236ea9efb9 Merge remote-tracking branch 'origin/3.0'
Conflicts:
	share/qtcreator/debugger/dumper.cpp
	share/qtcreator/debugger/dumper_p.h
	share/qtcreator/debugger/test/main.cpp
	src/plugins/debugger/gdb/classicgdbengine.cpp
	src/plugins/debugger/gdb/pythongdbengine.cpp
	src/plugins/debugger/lldblib/guest/lldbengineguest.cpp
	src/plugins/debugger/lldblib/guest/lldbengineguest.h
	src/plugins/debugger/lldblib/guest/main.cpp
	src/plugins/debugger/lldblib/ipcengineguest.cpp
	src/plugins/debugger/lldblib/ipcengineguest.h
	src/plugins/debugger/lldblib/ipcenginehost.cpp
	src/plugins/debugger/lldblib/ipcenginehost.h
	src/plugins/debugger/lldblib/lldbenginehost.cpp
	src/plugins/debugger/lldblib/lldboptionspage.cpp
	src/plugins/qbsprojectmanager/qbsstep.cpp
	src/plugins/qbsprojectmanager/qbsstep.h
	src/plugins/qmlprofiler/canvas/qdeclarativecanvas.cpp
	src/plugins/qmlprofiler/canvas/qdeclarativecanvas_p.h
	src/plugins/qmlprofiler/canvas/qdeclarativecontext2d.cpp
	src/plugins/qmlprofiler/canvas/qdeclarativecontext2d_p.h
	src/plugins/qmlprofiler/canvas/qmlprofilercanvas.cpp
	src/plugins/qnx/blackberrycheckdevmodestep.cpp
	src/plugins/qtsupport/debugginghelper.cpp

Change-Id: Ie9fd0a885fb6264a6a8a72daee071b75bcbd2e9d
2014-01-08 11:01:06 +01:00
Robert Loehning
746c5d8863 Incremented year in copyright info
Change-Id: Ib5423fdd064e4546f848c0b640b0ed0514c26d3a
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2014-01-08 08:29:47 +01:00
Eike Ziller
e035ae6df1 Merge remote-tracking branch 'origin/3.0'
Conflicts:
	share/qtcreator/debugger/stdtypes.py
	src/plugins/qmlprofiler/qmlprofilereventsmodelproxy.cpp

Change-Id: I5d86746d58960e41e01e725ccb2a6c00890f0dfd
2013-12-18 11:02:16 +01:00
hjk
23d6a1a23e Debugger: Add dumper for QTimeZone
Change-Id: I1b20529d7ecdcbf5480e95d6e7be89a2fdb6a8b7
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-12-16 13:42:03 +01:00
Eike Ziller
0a893fc6b4 Merge remote-tracking branch 'origin/3.0' 2013-12-02 15:33:56 +01:00
hjk
242cb17919 Debugger: Adjust QDateTime dumper for Qt 5.2
Change-Id: I53a5701c9d1791e2705eafb258ff440f97e53b87
Reviewed-by: John Layt <jlayt@kde.org>
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-12-02 15:14:42 +01:00
hjk
8f1fc056e9 Debugger: Fix regression in pointer display
'None' is not in a range...

Change-Id: I2df534556ab811dbd285d94ec14021d8597fe226
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-11-27 15:24:27 +01:00
hjk
848af02753 Debugger: Add more options for pointer display
Change-Id: Iaceefc5da11a03052e5a2eb50dab7a85588813b0
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Reviewed-by: David Schulz <david.schulz@digia.com>
2013-11-27 10:42:24 +01:00
hjk
20eba776da Debugger: Show more information for raw pointers
Task-number: QTCREATORBUG-7550

Change-Id: Ic4bdf6cdb402aac4aa0245568a0d6f1eb7a9e259
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2013-11-27 10:15:26 +01:00
Eike Ziller
4538ccb46c Merge remote-tracking branch 'origin/3.0'
Conflicts:
	share/qtcreator/debugger/gdbbridge.py

Change-Id: I32d8158c475f927b50ef06fde9ab8189ebdbcbbc
2013-11-15 10:26:57 +01:00
Martin Bohacek
c4648e9797 Debugger: Python dumper support for QNX targets on arm/x86.
gdbbridge.py + dumper.py:
    added detection on QNX target and ARM arch
    added detection of Qt 3 support
    fixed detection of Qt version

qttypes.py:
    fixes of different memory alignment

stdtypes.py:
    support of different libstdc++ internal structures on QNX

Change-Id: I808ee048c66c73c38bf5a8403e9cf881e767442e
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-11-11 10:53:07 +01:00
hjk
5be208bc03 Debugger: Move more common GDB and LLDB dumper code to base
Change-Id: I798396014256afc3845ccdae6e740bbf6059bbf3
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-11-07 14:46:10 +01:00
hjk
cc80da536d Debugger: Move basic C-style array handling to dumper base class
Just cosmetics. Function was oddly named, in an odd place.

Change-Id: I8bfb33f7f41f01309f4b2be8a802d4093ae25e41
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-11-07 14:46:01 +01:00
hjk
a9db8d9318 Debugger: Consolidate pointer display
Pretty much the same code for GDB and LLDB, no reason to duplicate.

Change-Id: I4df4ba55e3b6bdfb6422179050f9a31bd1ebe082
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-11-07 11:11:58 +01:00
hjk
a8dece0b99 Debugger: Move some generic helper function to base dumper
Change-Id: I78dea9af7d397d49ce2b54086d275413f2477626
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-11-01 14:25:11 +01:00
hjk
e176013140 Debugger: Move some global variables to the Dumper class
Change-Id: I5c8fd8a48f27ac70e6e39f645d64dcd788752e73
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-30 17:22:14 +01:00
Eike Ziller
bc16e88288 dumpers: share the code for extractTemplateArgument
Change-Id: Ic1b03d2dffdfb7ba6ead191601127b54af38b3cd
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-29 12:25:26 +01:00
Eike Ziller
c6faedf1c7 debugger: generalize is32bit() through ptrSize()
That also makes lldb dumper actually test for bitness instead of
assuming 64bit

Change-Id: I6207bac04817e1f4700247dc00d2dfdace1e5100
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-28 11:27:47 +01:00
hjk
e94e403052 Debugger: Fix QList<QStringList> dumper for LLDB
QStringList is movable in Qt 5

Change-Id: I5b0bee9c55e54f62c93a8515af0f56cdafed78bf
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-23 16:34:09 +02:00
hjk
a590f8de05 Debugger: Fix some of the array dumpers with LLDB
Change-Id: Ie2b12a526ff7199bcadfc21a3deb5354063a3e3b
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-23 12:41:17 +02:00
hjk
4c35310cec Debugger: Adjust QDateTime dumper after Qt 5.2 changes
Task-number: QTCREATORBUG-10232
Change-Id: I10551a258edb9456c4a9f93a3bfb374a8f07fc7d
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-22 19:12:31 +02:00