! Copyright (C) 2006, 2011 Slava Pestov. ! See http://factorcode.org/license.txt for BSD license. 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.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.theme 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 ui.tools.common ; 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-renderer [ [ \ continue-restart invoke-command ] when* ] >>action swap restart-hook>> >>hook 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:"