|
@@ -1,18 +1,36 @@
|
|
|
-import { Breakpoints } from './breakpoints';
|
|
|
-import { Signal } from '@phosphor/signaling';
|
|
|
// Copyright (c) Jupyter Development Team.
|
|
|
// Distributed under the terms of the Modified BSD License.
|
|
|
|
|
|
+import { Breakpoints } from './breakpoints';
|
|
|
+import { Signal } from '@phosphor/signaling';
|
|
|
+import { LineInfo } from './notebookTracker';
|
|
|
+
|
|
|
export class BreakpointsService {
|
|
|
constructor() {}
|
|
|
|
|
|
state: any = {};
|
|
|
+ selectedBreakpoints: Breakpoints.IBreakpoint[] = [];
|
|
|
|
|
|
- testSignal = new Signal<this, any>(this);
|
|
|
+ selectedBreakpointsChanged = new Signal<this, Breakpoints.IBreakpoint[]>(
|
|
|
+ this
|
|
|
+ );
|
|
|
+ breakpointChanged = new Signal<this, Breakpoints.IBreakpoint>(this);
|
|
|
|
|
|
- addBreakpoint(session_id: any, editor_id: any, lineInfo: any) {
|
|
|
- console.log('adding');
|
|
|
- this.testSignal.emit('test');
|
|
|
+ addBreakpoint(session_id: string, editor_id: any, lineInfo: LineInfo) {
|
|
|
+ const breakpoint: Breakpoints.IBreakpoint = {
|
|
|
+ line: lineInfo.line,
|
|
|
+ active: true,
|
|
|
+ verified: true,
|
|
|
+ source: {
|
|
|
+ name: session_id
|
|
|
+ }
|
|
|
+ };
|
|
|
+ this.selectedBreakpoints.push(breakpoint);
|
|
|
+ this.breakpointChanged.emit(breakpoint);
|
|
|
+ }
|
|
|
+
|
|
|
+ get breakpoints() {
|
|
|
+ return this.selectedBreakpoints;
|
|
|
}
|
|
|
|
|
|
removeBreakpoint(session_id: any, editor_id: any, lineInfo: any) {}
|
|
@@ -21,6 +39,11 @@ export class BreakpointsService {
|
|
|
|
|
|
setBreakpointState(session_id: any, editor_id: any, lineInfo: any) {}
|
|
|
|
|
|
+ clearSelectedBreakpoints() {
|
|
|
+ this.selectedBreakpoints = [];
|
|
|
+ this.selectedBreakpointsChanged.emit([]);
|
|
|
+ }
|
|
|
+
|
|
|
newLine(session_id: any, editor_id: any, lineInfo: any) {}
|
|
|
|
|
|
protected changeLines(
|