! Copyright (C) 2006, 2009 Slava Pestov. ! See http://factorcode.org/license.txt for BSD license. USING: accessors arrays hashtables io kernel math models namespaces sequences sequences words continuations debugger prettyprint help editors fonts ui ui.commands ui.gestures ui.gadgets ui.gadgets.worlds ui.gadgets.packs ui.gadgets.buttons ui.gadgets.labels ui.gadgets.panes ui.gadgets.presentations ui.gadgets.viewports ui.gadgets.tables ui.gadgets.tracks ui.gadgets.scrollers ui.gadgets.panes ui.gadgets.borders ui.tools.traceback ui.tools.inspector ; IN: ui.tools.debugger TUPLE: debugger < track error restarts restart-hook restart-list continuation ; > ] [ "Abort" ] if* "• " prepend 1array ; : ( debugger -- gadget ) dup restarts>> f prefix [ [ \ restart invoke-command ] when* ] >>action swap restart-hook>> >>hook restart-renderer >>renderer t >>selection-required? t >>single-click? ; inline : ( error -- pane ) [ [ print-error ] with-pane ] keep ; inline : ( debugger -- gadget ) [ ] dip [ error>> add-gadget ] [ dup restart-hook>> [ [ "To continue, pick one of the options below:"