Loading a vocab updates the browser if appropriate
parent
0cab0bab24
commit
487abce510
|
@ -68,8 +68,8 @@ GENERIC: definitions-changed ( assoc obj -- )
|
|||
dup changed-vocabs update ;
|
||||
|
||||
: finish-compilation-unit ( -- )
|
||||
changed-definitions notify-definition-observers
|
||||
changed-words get keys recompile-hook get call ;
|
||||
changed-words get keys recompile-hook get call
|
||||
changed-definitions notify-definition-observers ;
|
||||
|
||||
: with-compilation-unit ( quot -- )
|
||||
[
|
||||
|
|
|
@ -31,7 +31,7 @@ debugger ;
|
|||
[ t ] [
|
||||
"kernel" vocab-files
|
||||
"kernel" vocab vocab-files
|
||||
"kernel" f \ vocab-link construct-boa vocab-files
|
||||
"kernel" f <vocab-link> vocab-files
|
||||
3array all-equal?
|
||||
] unit-test
|
||||
|
||||
|
@ -46,7 +46,7 @@ IN: temporary
|
|||
[ { 3 3 3 } ] [
|
||||
"vocabs.loader.test.2" run
|
||||
"vocabs.loader.test.2" vocab run
|
||||
"vocabs.loader.test.2" f \ vocab-link construct-boa run
|
||||
"vocabs.loader.test.2" f <vocab-link> run
|
||||
3array
|
||||
] unit-test
|
||||
|
||||
|
@ -117,7 +117,7 @@ IN: temporary
|
|||
[ 3 ] [ "count-me" get-global ] unit-test
|
||||
|
||||
[ { "resource:core/kernel/kernel.factor" 1 } ]
|
||||
[ "kernel" f \ vocab-link construct-boa where ] unit-test
|
||||
[ "kernel" f <vocab-link> where ] unit-test
|
||||
|
||||
[ { "resource:core/kernel/kernel.factor" 1 } ]
|
||||
[ "kernel" vocab where ] unit-test
|
||||
|
|
|
@ -85,11 +85,19 @@ SYMBOL: load-vocab-hook
|
|||
|
||||
TUPLE: vocab-link name root ;
|
||||
|
||||
C: <vocab-link> vocab-link
|
||||
|
||||
M: vocab-link equal?
|
||||
over vocab-link?
|
||||
[ [ vocab-link-name ] 2apply = ] [ 2drop f ] if ;
|
||||
|
||||
M: vocab-link hashcode*
|
||||
vocab-link-name hashcode* ;
|
||||
|
||||
M: vocab-link vocab-name vocab-link-name ;
|
||||
|
||||
: >vocab-link ( name root -- vocab )
|
||||
over vocab dup
|
||||
[ 2nip ] [ drop \ vocab-link construct-boa ] if ;
|
||||
over vocab dup [ 2nip ] [ drop <vocab-link> ] if ;
|
||||
|
||||
UNION: vocab-spec vocab vocab-link ;
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
USING: debugger ui.tools.workspace help help.topics kernel
|
||||
models ui.commands ui.gadgets ui.gadgets.panes
|
||||
ui.gadgets.scrollers ui.gadgets.tracks ui.gestures
|
||||
ui.gadgets.buttons compiler.units assocs words ;
|
||||
ui.gadgets.buttons compiler.units assocs words vocabs ;
|
||||
IN: ui.tools.browser
|
||||
|
||||
TUPLE: browser-gadget pane history ;
|
||||
|
@ -42,9 +42,10 @@ M: browser-gadget ungraft*
|
|||
remove-definition-observer ;
|
||||
|
||||
: showing-definition? ( defspec assoc -- ? )
|
||||
2dup key? >r
|
||||
>r dup word-link? [ link-name ] when r> key?
|
||||
r> or ;
|
||||
[ key? ] 2keep
|
||||
[ >r dup word-link? [ link-name ] when r> key? ] 2keep
|
||||
>r dup vocab-link? [ vocab ] when r> key?
|
||||
or or ;
|
||||
|
||||
M: browser-gadget definitions-changed ( assoc browser -- )
|
||||
browser-gadget-history
|
||||
|
|
Loading…
Reference in New Issue