Debugger: Handle throw/catch/main as BreakpointType enum values.

Remove BreakHandler::hasPendingBreakpoints, handle new types
in CDB and gdb. Start fixing Breakpoint-Dialog.
Add assignment of Breakpointresponse from BreakpointParameters.

Reviewed-by: hjk
This commit is contained in:
Friedemann Kleint
2010-11-16 10:23:20 +01:00
parent 3f366ef54b
commit 29beabd5a4
11 changed files with 187 additions and 144 deletions

View File

@@ -62,8 +62,9 @@ enum BreakpointType
BreakpointByFileAndLine,
BreakpointByFunction,
BreakpointByAddress,
//BreakpointAtThrow, // FIXME: actually use this
//BreakpointAtCatch, // FIXME: actually use this
BreakpointAtThrow,
BreakpointAtCatch,
BreakpointAtMain,
Watchpoint,
};
@@ -135,9 +136,6 @@ public:
bool isWatchpoint() const { return type() == Watchpoint; }
bool isBreakpoint() const { return type() != Watchpoint; } // Enough for now.
// Generic name for function to break on 'throw'
static const char *throwFunction;
static const char *catchFunction;
private:
// All setters return true on change.
@@ -173,6 +171,8 @@ public:
QString toString() const;
public:
void fromParameters(const BreakpointParameters &p);
int number; // Breakpoint number assigned by the debugger engine.
QString fullName; // Full file name acknowledged by the debugger engine.
bool multiple; // Happens in constructors/gdb.