Commit Graph

64 Commits

Author SHA1 Message Date
ck
911d15a879 Added QDumper auto tests.
Added auto tests for QChar and QFile dumpers.
2009-07-10 14:57:50 +02:00
hjk
56b24aac36 debugger: reduce amount of data produced by the dumpers by removing
predicatable parts.
2009-07-10 13:40:54 +02:00
hjk
ef786bf32e debugger: do not output child type and numchild information if it is equal
to the ones specified in the childtype and childnumchild items
2009-07-10 13:40:54 +02:00
hjk
209037e98f debugger: remove the InnerValueResult enum and handling again.
60 lines of mainly useless code
2009-07-10 11:39:11 +02:00
hjk
206adf2d43 debugger: work on dumper auto tests 2009-07-09 10:26:54 +02:00
Friedemann Kleint
842540d9c0 Dump QObjects for CDB 2009-07-09 09:11:22 +02:00
hjk
de6fda2020 debugger: add auto tests for QList 2009-07-08 18:28:49 +02:00
Friedemann Kleint
7b15d12300 Dumper fixing, dump some common std::map, std::set types with CDB.
- std::set/map: Introduce templates to iterate the MSVC STL
  implementation depending on type (since it inherits some
  basic set_traits that depend on the key/value size.
- Retrieve types correctly in CDB (buffer too short for STL-types)
- Fix std::map in GDB broken by previous commit.
- Introduce a dumper version check in GDB/CDB.
- Make GDB parse sizes in initial dumper call as well
- Fix special sizes to work with namespaced Qt (watchutils)
2009-07-07 16:00:45 +02:00
Friedemann Kleint
61afdf6d1e Polish dumpers to show enumeration values, Polish CDB locals output. 2009-07-07 11:38:01 +02:00
Friedemann Kleint
5bd1d2a028 Fix up Debugger helpers to be able to dump QObject's with CDB.
- Make container dumper routines set "childnumchild" when known
  in order to avoid roundtrips; avoid repeated invocations of
  container.end().
- Completed dumper information in some places to avoid roundtrips.
- Extended QVariant helpers by dumpers for common GUI types
  (rectangles, points, sizes, fonts, size policies).
- Introduced artificial QObjectChildList/QObjectProperty types to
  be able to dump QObject children and properties without using
  gdb expressions.
- Fixed dumping of Signal/Slot list to pass on correct types. Avoid
  recursions if signal is connected to self.
- Replaced expressions by addresses in the dumpers to it make work
  for CDB.
- Reworked dumper test program to have -a, making it usable for tests,
  add further types.
- Gdb: Clear output buffer before calling dumpers, avoiding mixups
  in case evaluation of expression fails.
- Fix the dumper parser used by CDB, do not be fooled by
  "<synthetic>" addresses, etc.
- Pass on a "dumperVersion" in initial query.
2009-07-06 17:36:50 +02:00
Friedemann Kleint
5a8b61b2ee Great debugger helper bug fixing spree.
- Fix extractTemplate() not to kill blanks in case there is no
  blank after a comma, fix hardcoded types accordingly.
- Make niceType()'s regexps ignore blanks after commas, add
  unsigned short as char_type and cache the mappings, making
  them work for CDB.
- CDB: Parse map output of dumpers correctly, generally don't
  confuse the parser by unknown keywords encountered when
  parsing children, thus enabling simple QMap types.
- Make dumpInnerValueHelper output std::string types.
2009-07-03 13:56:27 +02:00
Friedemann Kleint
6e93f4544d Display Q<>Pointers/Work towards displaying maps/QMaps in CDB.
Make dumpers pass on more size information initially, namely the
various Q<>Pointers. Introduce enum for those special template types
whose size does not vary with the arguments (Q<>Pointer,
std::allocators...) to make it more easily extensible.
Pass on some common QMapNode<> sizes as well.
Introduce an expression cache to the common QtDumperHelper
class and make dumpers pass some common expression values
(value offsets of common QMapNode<> incarnations).
Make CDBDumperHelper use the expression cache.
Extend dumper tester.
2009-07-02 16:38:15 +02:00
hjk
ffee3f98af debugger: fix regression in QVariant dumper 2009-07-01 14:15:44 +02:00
hjk
013437cfab debugger: add widget watchers by mouse click in the debugged application.
The option is hidden in the context menu.
Currently the application must be stopped.
2009-07-01 14:15:44 +02:00
hjk
6edbc900b9 debugger: refactoring 2009-06-26 13:18:17 +02:00
hjk
fc145c2c02 debugger: reduce use of macros in dumper code 2009-06-26 10:52:19 +02:00
hjk
b295aec1ad debugger: fix several small issues in the dumper code
Fix typo in QChar helper.
Add a auto tests for some of the dumpers.
Make the dumpers compilable for Qt < 4.5 for better regression tests.
Make manual tests compile with Qt < 4.5.
2009-06-26 10:51:27 +02:00
hjk
6ea24c6e65 debugger: better dumper support for QChar and unsigned short. 2009-06-24 14:37:29 +02:00
hjk
69f58777c2 debugger: also simplify diplayed type of nested std::containers 2009-06-23 10:25:06 +02:00
hjk
a4d2666b8d debugger: fix dumper for QList<T*> 2009-06-19 15:13:26 +02:00
hjk
d8b589ceff debugger: remove QtGui dependency from debugging helpers
It was only used for the watch-QImage-while-it-is-being-drawn-on feature,
which does not seem overly useful.
2009-06-18 13:39:19 +02:00
Jason McDonald
884b7af769 Update license headers and sales contact details.
Reviewed-by: Trust Me
2009-06-17 00:01:27 +10:00
Daniel Molkentin
6b919043bf Partitial revert of d7af85a097.
broke at least cdb.

Reviewed-By: hjk <qtc-committer@nokia.com>
2009-06-08 12:12:36 +02:00
hjk
d7af85a097 debugger: implement a dumper for QAbstractItemModel
This also squashes a namespace related bug introduced by the watchutils
refactoring.
2009-06-03 12:48:48 +02:00
hjk
ee5fb31f11 debugger: re-start work on image dumper 2009-05-29 16:25:12 +02:00
Friedemann Kleint
3ba72d0e1e Stabilized the QString debug dumper a bit on Windows.
Try to prevent dumper crashes on
unitialized variables that slow down the debugger.
Acked-by: hjk <qtc-committer@nokia.com>
2009-05-20 16:59:40 +02:00
hjk
158e5ee82c debugger: refactoring of the QObject dumper
signal lists still broken for 4.6
2009-05-13 16:12:10 +02:00
hjk
6b9f9c6086 debugger: alsways use the copied qobject_p.h for the QObject dumper 2009-05-13 14:50:49 +02:00
con
6264ba4f59 Make QString dumper fail faster in case of uninitialized variables
Reviewed-by: hjk <qtc-committer@nokia.com>
2009-05-12 16:47:56 +02:00
Friedemann Kleint
63384fbdc3 Made std::vector/std::list work with CDB dumpers. 2009-05-06 09:22:05 +02:00
Oswald Buddenhagen
0b802b31c8 less inefficient
still quite some potential ...
2009-05-05 21:00:24 +02:00
Oswald Buddenhagen
0368b2134a fix typos 2009-05-05 21:00:24 +02:00
Friedemann Kleint
bae6525976 Started on QObject dumping for CDB, make it smarter.
Try to find qobject_p.h, if it exists and use its structures
to determine the child offset.
2009-05-05 16:39:51 +02:00
hjk
14321e675d debugger: add dumper for QWeakPointer 2009-04-29 17:48:04 +02:00
Friedemann Kleint
1c56388945 Make dumpers output size information. 2009-04-29 16:52:14 +02:00
hjk
0428a109e8 debugger: fix output of weak and strong reference counts in
QSharedPointer dumper
2009-04-29 15:09:42 +02:00
Friedemann Kleint
4ca60701da Use void() funcs in the dumpers for simplicity. 2009-04-29 14:31:11 +02:00
Friedemann Kleint
72a183777e Initial work on dumpers for CDB.
Add dumper calls, parser etc. Catch crashes
in the dumper functions.
2009-04-29 14:15:09 +02:00
hjk
8f4ae5fa53 debugger: use 4.5 features in dumpers only if compiled under 4.5+ 2009-04-28 11:21:46 +02:00
hjk
462a20461a debugger: add a dumper for QSharedPointer 2009-04-28 10:59:32 +02:00
Friedemann Kleint
52915776cd Make CDB load custom dumpers.
Load in a 'well-defined' (temporary) breakpoint
at main().
2009-04-22 17:28:26 +02:00
hjk
3c7b1f4a80 debugger: return the address of the output buffer from the dumpers 2009-04-16 08:57:34 +02:00
hjk
5cb0a3cb72 debugger: put the address of the loaded helpers into the debugger log 2009-04-15 16:48:46 +02:00
hjk
353025f37f debugger: potential fix for cases where the std:: namespace is not
reported properly
2009-04-09 13:49:22 +02:00
hjk
47995286b5 debugger: show non-ASCII in QString, too 2009-04-02 10:58:52 +02:00
hjk
5c9fd00d35 debugger: fix QStringList-in-QVariant dumper 2009-03-26 12:36:04 +01:00
hjk
95c0b1c130 debugger: cosmetical improvements of QVariant dumper output 2009-03-26 12:36:04 +01:00
hjk
1562193bf6 Fixes: debugger: compile fix for dumpers on naked Windows XP
Details:  <unistd.h> does not seem to be present there
2009-03-12 11:49:04 +01:00
hjk
a331218e9c Fixes: debugger: fix std::wstring dumper 2009-03-12 08:16:07 +01:00
hjk
8958a079b5 Fixes: debugger: also show the original address in a tooltip when
auto-dereferencing contents
2009-03-11 15:09:33 +01:00