Commit Graph

53 Commits

Author SHA1 Message Date
Oswald Buddenhagen
dc3c156cac Merge branch '2.2'
Conflicts:
	src/plugins/debugger/gdb/pythongdbengine.cpp
	src/plugins/qt4projectmanager/qt-desktop/qt4desktoptargetfactory.cpp
	src/plugins/qt4projectmanager/qt-desktop/qt4desktoptargetfactory.h
	src/plugins/qt4projectmanager/qt-desktop/qt4simulatortargetfactory.cpp
	src/plugins/qt4projectmanager/qt-desktop/qt4simulatortargetfactory.h
	src/plugins/qt4projectmanager/qt-maemo/maemodeploystep.cpp
	src/plugins/qt4projectmanager/qt-maemo/maemodeviceconfigurations.cpp
	src/plugins/qt4projectmanager/qt-maemo/maemoglobal.cpp
	src/plugins/qt4projectmanager/qt-maemo/qt4maemotargetfactory.cpp
	src/plugins/qt4projectmanager/qt-s60/qt4symbiantargetfactory.cpp
	src/plugins/qt4projectmanager/qt-s60/s60deploystep.cpp
	src/plugins/qt4projectmanager/qt4target.cpp
	src/plugins/qt4projectmanager/qt4target.h
	src/plugins/qt4projectmanager/qtoptionspage.h
	src/plugins/qt4projectmanager/qtversionmanager.cpp
	src/plugins/welcome/welcomemode.cpp
2011-04-14 12:39:31 +02:00
hjk
8397663964 Update license. 2011-04-13 11:49:28 +02:00
Friedemann Kleint
67d391019b Debugger: Have Python dumper print type size information.
For memory views. In the dumper, create a cache of TypeInfo
structs to contain type information and print the new entries
in each call of bb().

Collect the information in the gdb engine.
Replace WatchData::origAddress by WatchData::ReferencingAddress
to be able to correctly handle automatically dereferenced
pointers of the gdb engine. Whereas 'address' of a automatically
dereferenced used to be that of the pointer, it is now that
of the dereferenced item matching the size reported, enabling
memory views. Referencing address is now the address of the pointer.

Reviewed-by: hjk
2011-04-12 15:56:03 +02:00
hjk
63ebdb3623 debugger: cleanup 2011-04-12 08:07:24 +02:00
hjk
e7441dab12 debugger: move not-so-generic stuff to gdb/classicgdbengine.cpp 2011-04-12 08:07:24 +02:00
hjk
7fafe86725 debugger: use an enum for different encoding values 2011-04-08 14:39:56 +02:00
hjk
5f38a26c9e debugger: fix 'Jump To/Run to' when in instruction-wise mode 2011-02-23 11:11:39 +01:00
Friedemann Kleint
c74da9b7c5 Debugger: Reduce tooltip flicker.
Move tooltip-request handling from DebuggerPlugin into
DebuggerToolTipManager.

Request tooltip only if position changed and close
standard tooltip on success.
2011-02-17 10:11:23 +01:00
hjk
75bc676c52 debugger: remove dead enum 2011-01-17 16:27:58 +01:00
hjk
72671f1463 debugger: extract qt namespace before running the inferior. 2011-01-17 15:24:14 +01:00
con
d1023c7614 It's 2011 now.
Reviewed-by: hjk
2011-01-12 09:46:24 +01:00
Friedemann Kleint
a7eccce733 Debugger: Header cleanup 2011-01-10 10:14:23 +01:00
con
b1bcf081d8 Merge branch '2.1'
Conflicts:
	src/plugins/coreplugin/basemode.cpp
	src/plugins/coreplugin/basemode.h
	src/plugins/coreplugin/scriptmanager/qworkbench_wrapper.cpp
	src/plugins/coreplugin/scriptmanager/qworkbench_wrapper.h
	src/plugins/debugger/cdb/cdbsymbolpathlisteditor.cpp
	src/plugins/debugger/debuggeragents.cpp
	src/plugins/debugger/debuggeruiswitcher.cpp
	src/plugins/debugger/debuggeruiswitcher.h
	src/plugins/projectexplorer/buildconfigdialog.cpp
	src/plugins/qmldesigner/components/propertyeditor/colorwidget.cpp
	src/plugins/qmldesigner/components/propertyeditor/colorwidget.h
	src/plugins/qmldesigner/designercore/include/enumeratormetainfo.h
	src/plugins/qmldesigner/designercore/include/modelutilities.h
	src/plugins/qmldesigner/designercore/include/nodeinstance.h
	src/plugins/qmldesigner/designercore/include/propertymetainfo.h
	src/plugins/qmldesigner/designercore/instances/graphicsscenenodeinstance.cpp
	src/plugins/qmldesigner/designercore/instances/graphicsscenenodeinstance.h
	src/plugins/qmldesigner/designercore/instances/graphicsviewnodeinstance.cpp
	src/plugins/qmldesigner/designercore/instances/graphicswidgetnodeinstance.cpp
	src/plugins/qmldesigner/designercore/instances/graphicswidgetnodeinstance.h
	src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp
	src/plugins/qmldesigner/designercore/instances/qmlviewnodeinstance.cpp
	src/plugins/qmldesigner/designercore/instances/widgetnodeinstance.cpp
	src/plugins/qmldesigner/designercore/instances/widgetnodeinstance.h
	src/plugins/qmldesigner/designercore/metainfo/enumeratormetainfo.cpp
	src/plugins/qmldesigner/designercore/metainfo/propertymetainfo.cpp
	src/plugins/qmldesigner/designercore/model/modelutilities.cpp
	src/plugins/snippets/inputwidget.cpp
	src/plugins/snippets/snippetscompletion.cpp
	src/plugins/snippets/snippetscompletion.h
	src/plugins/snippets/snippetspec.cpp
	src/plugins/snippets/snippetsplugin.cpp
	src/plugins/snippets/snippetswindow.cpp
	src/plugins/snippets/snippetswindow.h
	src/plugins/texteditor/snippetsparser.cpp
	src/tools/qml/qmldom/main.cpp
	tests/manual/trk/runner.cpp
	tests/manual/trk/trkolddevice.cpp
	tests/manual/trk/trkolddevice.h
	tests/manual/trk/trkserver.cpp
2010-12-17 17:00:53 +01:00
con
04e32b0049 License headers. 2010-12-17 16:03:42 +01:00
Friedemann Kleint
3d1f23b78b Debugger: Add Run to/Jump to Line to text editor context menu.
Remove actions from debugger plugin as they are not directly usable.
Create additional actions in context menu.

Move some code around to find the current editor.
2010-11-04 11:46:16 +01:00
Friedemann Kleint
edeccf7307 Debugger: Fix dumpers in case alphabetical sorting is off.
No longer change iname to obtain sorting.

Reviewed-by: hjk
2010-10-08 14:57:39 +02:00
hjk
034bb72dc4 debugger: make alphabetic sorting of struct members optional.
Task-number: QTCREATORBUG-1608
2010-09-23 11:17:01 +02:00
Friedemann Kleint
ca808cc7b4 Debugger: Add special widgets for editing watch values.
Create delegate widgets with validation for bool/int/float
types, using a QVariant-type modelData property.
Also fix register editing to be validated for quint64 values
and editing longer values as hex bigints. Anything else is not
editable.
2010-09-22 17:30:22 +02:00
Robert Loehning
491c8e1334 debugger: compile fix msvc. done by hjk. 2010-09-01 18:02:56 +02:00
hjk
4cbbe366af debugger: make a 'type' a QByteArray, not a QString
Saves lots of conversion.
2010-09-01 17:36:09 +02:00
hjk
7b5b60ff8a debugger: code cosmetics 2010-08-27 17:24:22 +02:00
hjk
9a8ac49c2c debugger: new files for WatchData; move potentially shared code to watchutils.cpp 2010-04-27 15:33:22 +02:00
hjk
9595504bda Long live the king! 2010-03-05 11:28:13 +01:00
hjk
e3712f9687 debugger: refactoring, use QByteArray instead of QString when appropriate 2010-01-05 18:13:24 +01:00
hjk
32d3db8200 debugger: special handling for char* 2009-12-07 12:07:10 +01:00
Friedemann Kleint
25ee70bb24 Debugger: Use the code model to detect unitialized variables.
This should save debugger round trips and crashes in the debugging
helpers.
Add respective option to debugging helper option page, defaulting to
true.On this occasion, make CDB detect shadowed variables correctly
and display them as "<shadowed n>" as does the Gdb engine by
reversing the direction in which
CdbSymbolGroupContext::populateINameIndexMap works.
Rubber-stamped-by: hjk <qtc-committer@nokia.com>
2009-10-16 16:26:28 +02:00
Friedemann Kleint
0c945597db Debugger: Remove obsolete code. 2009-10-14 14:18:18 +02:00
Friedemann Kleint
8266c366a3 CDB: Make use of the improved debugger expression syntax
CDB can now handle sizeof(Class) and even expressions that
determine the offset of map node values (to some extent), may still
fail with templates). Format expressions accordingly, adapt
cached expressions.
Use gdbQuoteType depending on debugger type only.
Most important, do not evaluate each expression separately before
issuing the call, as ".call" can now do it on its own. Check for syntax
errors there and cache failing types as before.
2009-10-09 14:11:05 +02:00
Friedemann Kleint
caa164a4ab CDB: Use GdbMi parser for everything.
..preparing recursive dumpers. Add recursive parser to
watchutils.cpp Use insertBulkData() within CDB, add sizeof()
information for some Qt containers in order to be able to
dump QList<QList<KnownType> > .
2009-09-21 14:55:39 +02:00
Friedemann Kleint
603630fad6 Debugger: Use Gdbmi parser in CDB for parsing of protocol 1
Change dumper protocol 1 output not to contain type names as
hash keys (might contain blanks), use lists instead.
Start fixing autotests for 4.6.
2009-09-18 16:55:17 +02:00
hjk
91e60257cd debugger: special handling for Symbian TInt and TBool.
We know they don't have nested contents
2009-09-16 11:10:59 +02:00
hjk
452f108ac7 debugger: fixes and improvements related to the Locals display
Split the concepts 'enabled' and 'editable' in the dumper output
Disable "<not in scope>" entries, also fix their type.
Fix glitch in type beautification for display
Find reason for failing bulk updates.
2009-08-31 16:05:55 +02:00
hjk
9a5908bf8c debugger: small improvements to dumpers
Add a dumper for QStack. Also don't crash when accessing an uninitialized
pointer when the pointer looks bad to begin with.
2009-08-28 10:42:55 +02:00
hjk
93cbef8724 long live the king 2009-08-14 09:30:56 +02:00
Friedemann Kleint
894febbadf Debugger: Make use of the "displayedtype" attribute.
Fix "displayedtype" in CDB, display it elsewhere.
Log debugger settings in DebuggerManager startup.
Acked-by: hjk <qtc-committer@nokia.com>
2009-08-12 11:21:44 +02:00
hjk
4bf3d32f61 debugger: assume that not-known-to-be-simple types have children
This might lead to false positives in corner cases like empty structures
but speed up the display of arrays and lists of user-defined types a lot.
2009-07-14 11:23:32 +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
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
hjk
89d49e3b20 debugger: make format for all integer types selectable 2009-07-03 13:26:08 +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
3d9c65f2ee debugger: clear more status variables in initializeVariables() to
prevent inter-session dependencies
2009-06-29 13:54:39 +02:00
hjk
69f58777c2 debugger: also simplify diplayed type of nested std::containers 2009-06-23 10:25:06 +02:00
Jason McDonald
884b7af769 Update license headers and sales contact details.
Reviewed-by: Trust Me
2009-06-17 00:01:27 +10: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
Friedemann Kleint
0e3aa47fcd Added ToolTip support for CDB.
Make debugger tooltip API more general, have the engines check the
correct file type, figure out the expression and context from the text
editor.

Put common functionality in watchutils.cpp. In the CDB engine, check
whether a tooltip expression is a known variable within the stack frame
context. If so, retrieve via symbol group or dumpers. Cache by function
and expression.
Reviewed-by: hjk <qtc-committer@nokia.com>
2009-05-14 14:29:37 +02:00
hjk
cc3f796113 debugger: work on tcf engine. first successful ping pong. 2009-05-08 15:38:34 +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
b72b4142dc debugger: code cosmetics 2009-04-29 18:03:35 +02:00
Friedemann Kleint
1c56388945 Make dumpers output size information. 2009-04-29 16:52:14 +02:00