USING: accessors arrays hashtables io kernel math models
colors.constants namespaces sequences words continuations
debugger prettyprint help editors fonts ui ui.commands
-ui.debugger ui.gestures ui.gadgets ui.pens.solid
+ui.debugger ui.gestures ui.gadgets ui.gadgets.lines ui.pens.solid
ui.gadgets.worlds ui.gadgets.packs ui.gadgets.buttons
ui.gadgets.labels ui.gadgets.presentations ui.gadgets.panes
-ui.gadgets.viewports ui.gadgets.tables ui.gadgets.tracks
+ui.gadgets.viewports ui.gadgets.tables ui.gadgets.tracks ui.gadgets.toolbar
ui.gadgets.scrollers ui.gadgets.borders ui.gadgets.status-bar
ui.tools.traceback ui.tools.inspector ui.tools.browser ;
IN: ui.tools.debugger
PRIVATE>
: <debugger> ( error continuation restarts restart-hook -- debugger )
- vertical debugger new-track
- { 3 3 } >>gap
+ vertical debugger new-track with-lines
swap >>restart-hook
swap >>restarts
swap >>continuation
swap >>error
- add-toolbar
dup <restart-list> >>restart-list
- dup <error-display> f track-add
- COLOR: white <solid> >>interior ;
+ dup <error-display> margins white-interior f track-add
+ add-toolbar ;
M: debugger focusable-child*
dup restart-hook>> [ restart-list>> ] [ drop t ] if ;
parse-lines-interactive ;
: <debugger-popup> ( error continuation -- popup )
- over compute-restarts [ hide-glass ] <debugger> "Error" <labeled-gadget> ;
+ over compute-restarts [ hide-glass ] <debugger> "Error" <framed-labeled-gadget> ;
: debugger-popup ( interactor error continuation -- )
[ one-line-elt ] 2dip <debugger-popup> show-listener-popup ;