]> gitweb.factorcode.org Git - factor.git/commitdiff
ui.tools.error-list: re-use the same actual gadget, so that the current selection...
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Tue, 4 May 2010 06:53:46 +0000 (02:53 -0400)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Tue, 4 May 2010 06:53:53 +0000 (02:53 -0400)
basis/ui/tools/error-list/error-list.factor

index 76df26413100b063eb6911f43d176d96bd27577d..8cc8781b192247a0936776f1b92c42fce29934af 100644 (file)
@@ -1,4 +1,4 @@
-! Copyright (C) 2009 Slava Pestov.
+! Copyright (C) 2009, 2010 Slava Pestov.
 ! See http://factorcode.org/license.txt for BSD license.
 USING: accessors arrays sequences sorting assocs colors.constants fry
 combinators combinators.smart combinators.short-circuit editors make
@@ -154,7 +154,7 @@ error-display "toolbar" f {
     [ swap '[ error-type _ at ] filter ] <smart-arrow> ;
 
 :: <error-list-gadget> ( model -- gadget )
-    vertical error-list-gadget new-track
+    vertical error-list-gadget new-track
         <error-toggle> [ >>error-toggle ] [ >>visible-errors ] bi*
         dup visible-errors>> model <error-model> >>model 
         f <model> >>source-file
@@ -178,16 +178,16 @@ M: error-list-gadget focusable-child*
 
 \ error-list-help H{ { +nullary+ t } } define-command
 
-error-list-gadget "toolbar" f {
+error-list-gadget "toolbar" f {
     { T{ key-down f f "F1" } error-list-help }
 } define-command-map
 
-: error-list-window ( -- )
-    error-list-model get [ drop all-errors ] <arrow>
-    <error-list-gadget> "Errors" open-status-window ;
+MEMO: error-list-gadget ( -- gadget )
+    error-list-model get-global [ drop all-errors ] <arrow>
+    <error-list-gadget> ;
 
 : show-error-list ( -- )
-    [ error-list-gadget? ] find-window
-    [ raise-window ] [ error-list-window ] if* ;
+    [ error-list-gadget eq? ] find-window
+    [ raise-window ] [ error-list-gadget "Errors" open-status-window ] if* ;
 
 \ show-error-list H{ { +nullary+ t } } define-command