Commit Graph

200 Commits

Author SHA1 Message Date
hjk
8ae541b36f debugger: Refactor breakpoint handling.
The breakpoints are now (fairly) tightly guarded by the BreakpointHandler.
Engines and Views are only supposed to refer to them by id. They also have
individual states now. The breakpoint data is split into a "user requested"
"fixed" part in BreakpointData and the engines' acknowledged data in a new
struct BreakpointResponse.

TODO: Move m_state and m_engine members to BreakpointResponse. Fix regressions
in the marker handling.
2010-11-15 12:09:25 +01:00
hjk
89eb27d231 debugger: remove some dead code 2010-11-10 14:36:53 +01:00
hjk
2161e0f6d9 debugger: refactoring of the plugin interface
There's  some 'external' and some 'internal' part now. Other plugins
are only supposed the external interface.
2010-11-10 12:08:23 +01:00
hjk
1afea78c7d debugger: convert register handler/window architecture 2010-11-05 13:51:02 +01:00
hjk
8e62715130 debugger: move logical ownership of breakhandler from engines to plugin 2010-11-04 09:55:05 +01:00
Friedemann Kleint
22f03cbde6 ProjectExplor/Debugger: Header cleanup 2010-11-02 16:14:00 +01:00
hjk
0afb34d5eb debugger: refactor breakpoint type, add function name to resolved jsbreakpoints 2010-10-29 14:31:16 +02:00
Arvid Ephraim Picciani
2a569ce073 Clean up BreakPoint
Reviewed-by: Friedemann Kleint
Reviewed-by: hjk
2010-10-29 11:29:37 +02:00
Friedemann Kleint
923c907d2e Debugger: Fix slashes in breakpoint display.
Reviewed-by: Arvid Ephraim Picciani <arvid.picciani@nokia.com>
2010-10-18 14:54:42 +02:00
Robert Loehning
d74c4f8aeb Fixed warning about unused parameter in BreakHandler
Reviewed-by: hjk
2010-10-15 15:33:34 +02:00
hjk
cc0e37cec5 debugger: replace n breakpoint lists of which n-1 are invalid by a single one 2010-10-13 17:44:23 +02:00
hjk
b0852c28db debugger: fix re-appearing zombie breakpoint markers
Reviewed-by: con
2010-10-13 17:44:23 +02:00
hjk
3cb91a1427 debugger: Fix state of breakpoint marker when disabling it using the breakpoint view
There was not updated cached state within the marker object.

Reviewed-by: Friedemann Kleint

Task: QTCREATORBUG-2544
2010-10-11 11:54:01 +02:00
hjk
6f35c937ca debugger: fix breakpoint marker drawing after session ends
This is a stop-gap measure to make breakpoints usable again.
Proper fix is still needed.

Reviewed-by: Friedemann Kleint
2010-10-06 15:00:47 +02:00
Friedemann Kleint
90872c632d Debugger[CDB]: Fix breakpoints.
Reviewed-by: hjk
Reviewed-by: aep <arvid.picciani@nokia.com>
Task-number: QTCREATORBUG-2612
2010-10-06 13:39:21 +02:00
hjk
7ad324feb3 debugger: more breakpoint fixes 2010-10-06 11:05:40 +02:00
Friedemann Kleint
ec6b90aac6 Debugger[CDB]: Make breakpoints work again.
Reviewed-by: hjk
2010-10-05 16:39:07 +02:00
hjk
d0848ee29a debugger: fix breakpoint cleanup to allow subsequent runs
Reviewed-by: Friedemann Kleint
2010-10-05 16:06:41 +02:00
Christiaan Janssen
24912c3f2e QmlObserver: breakpoint list is shared between engines
Reviewed by:  Kai Koehne, Andre Poenitz
2010-10-05 11:01:14 +02:00
Friedemann Kleint
d5596bf169 Debugger: Remove unused 'precise breakpoints' setting.
Remove break window menu action to toggle 'Full path'.
Remove gdb setting 'Use full path'.
Clean up break dialog:
- Set PathChooser::ExpectedKind before value (showed up in red).
- Use PathChooser::setPath()/path() instead of lineedit text
- Return thread spec
- Add validator for ignorecount as for breakcondition.ui
Remove unused fields from breakcondition.ui

Reviewed-by: hjk
Task-number: QTCREATORBUG-2593
2010-10-04 16:04:38 +02:00
hjk
b8d5f256a0 debugger: add missing 'Use full path' toggle in recently added 'Add Breakpoints' dialog
Reviewed-by: Friedemann Kleint
2010-09-28 13:15:36 +02:00
hjk
718433d27e debugger: add a somewhat more generic breakpoint creation dialog 2010-09-21 16:33:14 +02:00
Friedemann Kleint
332889aec2 Debugger: Sanitize Datatypes, part 1: Breakpoints.
Make address a quint64, linnumber and ignoreCounts int.

Reviewed-by: hjk
2010-09-21 14:26:45 +02:00
Friedemann Kleint
f7b19f8114 Debugger: Move DebuggerEngine/QmlEngine/QmlCppEngine into Debugger{}
namespace (from Debugger::Internal) as they are exported classes.
Introduce private classes to avoid exposing private JS debugger
headers.
2010-09-13 13:30:35 +02:00
hjk
7528b3b022 debugger: fix editing of breakpoint conditions 2010-09-08 12:18:04 +02:00
hjk
15fc9396b5 debugger: allow breakpoint removal also at the original position, not the "acknolegdged" one
Task-number: QTCREATORBUG-2264
2010-09-08 09:54:40 +02:00
hjk
18d14b5367 debugger: remove unused code. 2010-09-08 09:10:05 +02:00
hjk
6f0a50beef debugger: synchronize breakpoints also at enable/disable operations
Task-number: QTCREATORBUG-2272
2010-09-08 08:16:44 +02:00
hjk
b4ce60b193 debugger: show pending breakpoints using there original icon
The 'eye' was for debugging only. Seems to be stable now.
2010-09-01 17:19:55 +02:00
hjk
2effcaeb2e debugger: tell engine about removed breakpoints 2010-08-12 15:39:12 +02:00
hjk
4f4167a310 debugger: move BreakpointData into file of its own 2010-07-14 17:49:17 +02:00
hjk
bcd2146db1 debugger: don't stop at disabled breakpoints in script engine 2010-07-07 13:26:32 +02:00
con
ede2a7c975 Merge remote branch 'origin/2.0'
Conflicts:
	doc/qtcreator.qdoc
	share/qtcreator/gdbmacros/dumper.py
	src/libs/qmljs/qmljs-lib.pri
	src/plugins/debugger/breakhandler.cpp
	src/plugins/projectexplorer/projectexplorer.h
	src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.cpp
	src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.h
2010-06-30 14:25:09 +02:00
hjk
2bdf10ce10 debugger: reenable disabling of breakpoints in editor context menu 2010-06-25 17:38:25 +02:00
hjk
f3d38de913 debugger: fix breakpoint toggling of "moved" breakpoints 2010-06-25 17:38:25 +02:00
hjk
03be40ddcd debugger: remove unused code 2010-06-25 14:38:44 +02:00
Robert Loehning
11a08a250a Commented switch to avoid warning from MSVC.
Reviewed-by: Thorbjørn Lindeijer <thorbjorn.lindeijer@nokia.com>
2010-06-25 12:57:03 +02:00
hjk
6493b4853d debugger: adjust loading/saving of watched expressions to recent changes 2010-06-25 10:21:39 +02:00
hjk
fadac8009c debugger: more breakpoint management related fixes 2010-06-22 15:37:27 +02:00
hjk
c5c0dc76a0 debugger: restore session breakpoints if RunControl finishes 2010-06-22 15:14:44 +02:00
hjk
b01a622fa3 debugger: properly clone breakpoints 2010-06-22 14:52:50 +02:00
hjk
6a6cba5518 debugger: The DebuggerEngine refactoring.
This replaces the (de facto) singleton engines and data handlers by classes
that are instantiated per run. The DebuggerRunControl will now create an
object of (a class derived from) DebuggerEngine that contains all the relevant
"dynamic" data.

DebuggerManager is no more. The "singleton" bits are merged into DebuggerPlugin,
whereas the data bits went to DebuggerEngine.

There is no formal notion of a "current" DebuggerEngine. However, as there's
only one DebuggerEngine at a time that has its data models connected to the
view, there's still some "de facto" notion of a "current" engine. Calling
SomeModel::setData(int role, QVariant data) with custom role is used as the
primary dispatch mechanism from the views to the "current" data models
(and the engine, as all data models know their engine).
2010-06-22 10:59:57 +02:00
hjk
3b4b2c3ef6 debugger: fix variable initialization 2010-06-11 10:44:29 +02:00
Bill King
9e7d91a519 Fix missing breaks which lead to invalid fallthroughs. 2010-06-11 13:39:47 +10:00
Robert Loehning
e2e495a116 Debugger: Enabled removing watchpoints using context menu 2010-05-20 20:25:54 +02:00
Robert Loehning
e40c28cc2f Debbuger: Checking menu action if watchpoint is set 2010-05-20 19:49:52 +02:00
Friedemann Kleint
9af9c91f93 Debugger/WatchWindow: Add menu options to show pointed to addresses.
Change the WatchWindow handling to be based on quint64 addresses to
ensure proper function. Changed roles and added one role to the
watchmodel to obtain addresses and pointed-to addresses. Add some
fiddling to parse out addresses from debugger values.
Add menu options. Make sure only one watchpoint per address is added.
2010-05-19 17:34:47 +02:00
hjk
d8318a9502 debugger: refactor breakpoint handling
Use BreakpointData objects for communicaition instead of random
collection of some of their attributes.
2010-05-17 15:41:59 +02:00
hjk
3795539e0a debugger: fix scheduling of deletion of data watch points 2010-05-10 15:39:41 +02:00
hjk
01aabbda82 debugger: rename some breakpoint related functions 2010-05-10 15:39:41 +02:00