aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/debugger/breakhandler.cpp
diff options
context:
space:
mode:
authorhjk <[email protected]>2012-10-09 22:34:36 +0200
committerhjk <[email protected]>2012-10-12 14:05:07 +0200
commit315a3ebdebc20b91fd509be4f3eca600f716c601 (patch)
tree794fd5e4139ce6fa534caaf9134089d87ee2bce2 /src/plugins/debugger/breakhandler.cpp
parent16c5a1493d6380c0364108ab85fb80a1d1e4d6d4 (diff)
Debugger: make breakpoint markers draggable
Change-Id: I6139badeb8cb8b20e653ce9f6685c0e577123617 Reviewed-by: David Schulz <[email protected]>
Diffstat (limited to 'src/plugins/debugger/breakhandler.cpp')
-rw-r--r--src/plugins/debugger/breakhandler.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/plugins/debugger/breakhandler.cpp b/src/plugins/debugger/breakhandler.cpp
index 2c1327d02fd..f66e8031f18 100644
--- a/src/plugins/debugger/breakhandler.cpp
+++ b/src/plugins/debugger/breakhandler.cpp
@@ -37,6 +37,7 @@
#include "debuggerstringutils.h"
#include "stackframe.h"
+#include <extensionsystem/invoker.h>
#include <utils/hostosinfo.h>
#include <utils/qtcassert.h>
@@ -1258,6 +1259,25 @@ void BreakHandler::updateLineNumberFromMarker(BreakpointModelId id, int lineNumb
emit layoutChanged();
}
+void BreakHandler::changeLineNumberFromMarker(BreakpointModelId id, int lineNumber)
+{
+ // We need to delay this as it is called from a marker which will be destroyed.
+ ExtensionSystem::InvokerBase invoker;
+ invoker.addArgument(id);
+ invoker.addArgument(lineNumber);
+ invoker.setConnectionType(Qt::QueuedConnection);
+ invoker.invoke(this, "changeLineNumberFromMarkerHelper");
+ QTC_CHECK(invoker.wasSuccessful());
+}
+
+void BreakHandler::changeLineNumberFromMarkerHelper(BreakpointModelId id, int lineNumber)
+{
+ BreakpointParameters data = breakpointData(id);
+ data.lineNumber = lineNumber;
+ removeBreakpoint(id);
+ appendBreakpoint(data);
+}
+
BreakpointModelIds BreakHandler::allBreakpointIds() const
{
BreakpointModelIds ids;