parent
e74f891662
commit
24b7437ff7
|
@ -52,15 +52,15 @@ PRIVATE>
|
||||||
|
|
||||||
M: tuple error. describe ;
|
M: tuple error. describe ;
|
||||||
|
|
||||||
: namestack. ( seq -- )
|
: vars-in-scope ( seq -- alist )
|
||||||
[ [ global eq? not ] filter [ keys ] gather ] keep
|
[ [ global eq? not ] filter [ keys ] gather ] keep
|
||||||
'[ dup _ assoc-stack ] H{ } map>assoc describe ;
|
'[ dup _ assoc-stack ] H{ } map>assoc ;
|
||||||
|
|
||||||
: .vars ( -- )
|
: .vars ( -- )
|
||||||
namestack namestack. ;
|
namestack vars-in-scope describe ;
|
||||||
|
|
||||||
: :vars ( -- )
|
: :vars ( -- )
|
||||||
error-continuation get name>> namestack. ;
|
error-continuation get name>> vars-in-scope describe ;
|
||||||
|
|
||||||
SYMBOL: me
|
SYMBOL: me
|
||||||
|
|
||||||
|
|
|
@ -65,10 +65,10 @@ M: hashtable make-slot-descriptions
|
||||||
inspector-renderer >>renderer
|
inspector-renderer >>renderer
|
||||||
monospace-font >>font ;
|
monospace-font >>font ;
|
||||||
|
|
||||||
: <inspector-gadget> ( obj -- gadget )
|
: <inspector-gadget> ( model -- gadget )
|
||||||
vertical inspector-gadget new-track
|
vertical inspector-gadget new-track
|
||||||
add-toolbar
|
add-toolbar
|
||||||
swap <model> >>model
|
swap >>model
|
||||||
dup model>> <inspector-table> >>table
|
dup model>> <inspector-table> >>table
|
||||||
dup model>> <summary-gadget> "Object" <labelled-gadget> f track-add
|
dup model>> <summary-gadget> "Object" <labelled-gadget> f track-add
|
||||||
dup table>> <scroller> "Contents" <labelled-gadget> 1 track-add ;
|
dup table>> <scroller> "Contents" <labelled-gadget> 1 track-add ;
|
||||||
|
@ -112,5 +112,8 @@ inspector-gadget "multi-touch" f {
|
||||||
{ up-action com-refresh }
|
{ up-action com-refresh }
|
||||||
} define-command-map
|
} define-command-map
|
||||||
|
|
||||||
: inspector ( obj -- )
|
: inspect-model ( model -- )
|
||||||
<inspector-gadget> "Inspector" open-status-window ;
|
<inspector-gadget> "Inspector" open-status-window ;
|
||||||
|
|
||||||
|
: inspector ( obj -- )
|
||||||
|
<model> inspect-model ;
|
||||||
|
|
|
@ -9,7 +9,7 @@ compiler.units accessors vocabs.parser macros.expander ui
|
||||||
ui.tools.browser ui.tools.listener ui.tools.listener.completion
|
ui.tools.browser ui.tools.listener ui.tools.listener.completion
|
||||||
ui.tools.profiler ui.tools.inspector ui.tools.traceback
|
ui.tools.profiler ui.tools.inspector ui.tools.traceback
|
||||||
ui.commands ui.gadgets.editors ui.gestures ui.operations
|
ui.commands ui.gadgets.editors ui.gestures ui.operations
|
||||||
ui.tools.deploy ;
|
ui.tools.deploy models ;
|
||||||
IN: ui.tools.operations
|
IN: ui.tools.operations
|
||||||
|
|
||||||
V{ } clone operations set-global
|
V{ } clone operations set-global
|
||||||
|
@ -35,8 +35,12 @@ V{ } clone operations set-global
|
||||||
|
|
||||||
[ drop t ] \ com-unparse H{ } define-operation
|
[ drop t ] \ com-unparse H{ } define-operation
|
||||||
|
|
||||||
! Input
|
! Models
|
||||||
|
[ model? ] \ inspect-model H{
|
||||||
|
{ +primary+ t }
|
||||||
|
} define-operation
|
||||||
|
|
||||||
|
! Input
|
||||||
: com-input ( obj -- ) string>> listener-input ;
|
: com-input ( obj -- ) string>> listener-input ;
|
||||||
|
|
||||||
[ input? ] \ com-input H{
|
[ input? ] \ com-input H{
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
! Copyright (C) 2006, 2009 Slava Pestov.
|
! Copyright (C) 2006, 2009 Slava Pestov.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: memory system kernel tools.vocabs ui.tools.operations
|
USING: memory system kernel tools.vocabs ui.tools.operations
|
||||||
ui.tools.listener ui.tools.browser ui.tools.common ui.commands
|
ui.tools.listener ui.tools.browser ui.tools.common
|
||||||
ui.gestures ui ;
|
ui.tools.walker ui.commands ui.gestures ui ;
|
||||||
IN: ui.tools
|
IN: ui.tools
|
||||||
|
|
||||||
: main ( -- )
|
: main ( -- )
|
||||||
|
|
|
@ -3,8 +3,9 @@
|
||||||
USING: accessors continuations kernel models namespaces
|
USING: accessors continuations kernel models namespaces
|
||||||
prettyprint ui ui.commands ui.gadgets ui.gadgets.labelled assocs
|
prettyprint ui ui.commands ui.gadgets ui.gadgets.labelled assocs
|
||||||
ui.gadgets.tracks ui.gadgets.buttons ui.gadgets.panes
|
ui.gadgets.tracks ui.gadgets.buttons ui.gadgets.panes
|
||||||
ui.gadgets.status-bar ui.gadgets.scrollers ui.tools.inspector
|
ui.gadgets.status-bar ui.gadgets.scrollers
|
||||||
ui.gestures sequences hashtables inspector ;
|
ui.gestures sequences inspector models.filter ;
|
||||||
|
QUALIFIED-WITH: ui.tools.inspector i
|
||||||
IN: ui.tools.traceback
|
IN: ui.tools.traceback
|
||||||
|
|
||||||
: <callstack-display> ( model -- gadget )
|
: <callstack-display> ( model -- gadget )
|
||||||
|
@ -37,25 +38,14 @@ M: traceback-gadget pref-dim* drop { 550 600 } ;
|
||||||
|
|
||||||
add-toolbar ;
|
add-toolbar ;
|
||||||
|
|
||||||
: <namestack-display> ( model -- gadget )
|
|
||||||
[ [ name>> namestack. ] when* ]
|
|
||||||
<pane-control> ;
|
|
||||||
|
|
||||||
: <variables-gadget> ( model -- gadget )
|
|
||||||
<namestack-display>
|
|
||||||
<limited-scroller>
|
|
||||||
{ 400 400 } >>min-dim
|
|
||||||
{ 400 400 } >>max-dim ;
|
|
||||||
|
|
||||||
: variables ( traceback -- )
|
: variables ( traceback -- )
|
||||||
model>> <variables-gadget>
|
model>> [ dup [ name>> vars-in-scope ] when ] <filter> i:inspect-model ;
|
||||||
"Dynamic variables" open-status-window ;
|
|
||||||
|
|
||||||
: traceback-window ( continuation -- )
|
: traceback-window ( continuation -- )
|
||||||
<model> <traceback-gadget> "Traceback" open-status-window ;
|
<model> <traceback-gadget> "Traceback" open-status-window ;
|
||||||
|
|
||||||
: inspect-continuation ( traceback -- )
|
: inspect-continuation ( traceback -- )
|
||||||
control-value inspector ;
|
control-value i:inspector ;
|
||||||
|
|
||||||
traceback-gadget "toolbar" f {
|
traceback-gadget "toolbar" f {
|
||||||
{ T{ key-down f f "v" } variables }
|
{ T{ key-down f f "v" } variables }
|
||||||
|
|
Loading…
Reference in New Issue