Skip to content

Commit ce5ad2f

Browse files
committed
move toggleBreakpoint to view
1 parent 3bf674e commit ce5ad2f

File tree

3 files changed

+13
-8
lines changed

3 files changed

+13
-8
lines changed

lib/breakpoint-store.coffee

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,14 @@ class BreakpointStore
2222
d = editor.decorateMarker(marker, type: "line-number", class: "line-number-red")
2323
d.setProperties(type: "line-number", class: "line-number-red")
2424
breakpoint.decoration = d
25+
return "b"
2526
else
2627
editor = atom.workspace.getActiveTextEditor()
2728
ds = editor.getLineNumberDecorations(type: "line-number", class: "line-number-red")
2829
for d in ds
2930
marker = d.getMarker()
3031
marker.destroy() if marker.getBufferRange().start.row == breakpoint.lineNumber-1
32+
return "cl"
3133

3234
containsBreakpoint: (bp) ->
3335
for breakpoint in @breakpoints

lib/python-debugger-view.coffee

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,16 @@ class PythonDebuggerView extends View
4949
@div class: "panel-body", outlet: "outputContainer", =>
5050
@pre class: "command-output", outlet: "output"
5151

52+
toggleBreakpoint: ->
53+
editor = atom.workspace.getActiveTextEditor()
54+
filename = editor.getTitle()
55+
lineNumber = editor.getCursorBufferPosition().row + 1
56+
# add to or remove breakpoint from internal list
57+
cmd = @breakpointStore.toggle(new Breakpoint(filename, lineNumber))
58+
# instruct debugger to add or clear breakpoint (cmd is "b" or "cl")
59+
debuggerCmd = cmd + " " + @getCurrentFilePath() + ":" + lineNumber + "\n"
60+
@backendDebugger.stdin.write(debuggerCmd) if @backendDebugger
61+
@output.append(debuggerCmd)
5262
stepOverBtnPressed: ->
5363
@backendDebugger?.stdin.write("n\n")
5464

lib/python-debugger.coffee

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,7 @@ module.exports = PythonDebugger =
2727

2828
@subscriptions.add atom.commands.add "atom-workspace",
2929
"python-debugger:toggle": => @createDebuggerView().toggle()
30-
"python-debugger:breakpoint": => @toggleBreakpoint()
31-
32-
toggleBreakpoint: ->
33-
editor = atom.workspace.getActiveTextEditor()
34-
filename = editor.getTitle()
35-
lineNumber = editor.getCursorBufferPosition().row + 1
36-
breakpoint = new Breakpoint(filename, lineNumber)
37-
@breakpointStore.toggle(breakpoint)
30+
"python-debugger:breakpoint": => @pythonDebuggerView?.toggleBreakpoint()
3831

3932
deactivate: ->
4033
@backendDebuggerInputView.destroy()

0 commit comments

Comments
 (0)