diff --git a/basis/ui/tools/browser/browser.factor b/basis/ui/tools/browser/browser.factor index 0ff58eafa5..05ac20f14a 100644 --- a/basis/ui/tools/browser/browser.factor +++ b/basis/ui/tools/browser/browser.factor @@ -36,21 +36,20 @@ M: browser-gadget set-history-value : ( browser-gadget -- gadget ) model>> [ '[ _ $title ] try ] ; - + CONSTANT: help-header-background COLOR: FactorLightTan - -: add-help-header ( track -- track ) + +: help-header ( track -- track ) dup { 3 3 } - help-header-background >>interior - toolbar-border >>boundary + help-header-background >>interior { 1 0 } >>fill f track-add ; : ( browser-gadget -- gadget ) model>> [ '[ _ print-topic ] try ] ; - -: add-help-pane ( track -- track ) - dup dup { 10 0 } { 1 1 } >>fill - >>scroller scroller>> 1 track-add ; + +: help-pane ( track -- track ) + dup dup margins + >>scroller scroller>> white-interior 1 track-add ; : search-browser ( string browser -- ) '[ _ show-help ] unless-empty ; @@ -59,7 +58,7 @@ CONSTANT: help-header-background COLOR: FactorLightTan '[ _ search-browser ] 10 >>min-cols 10 >>max-cols - COLOR: white >>interior ; + white-interior ; : ( browser -- toolbar ) horizontal @@ -69,21 +68,20 @@ CONSTANT: help-header-background COLOR: FactorLightTan over f track-add swap search-field>> " Search" label-on-left 1 track-add ; -: add-browser-toolbar ( track -- track ) - dup { 3 3 } - button-background >>interior - toolbar-border >>boundary - { 1 0 } >>fill f track-add ; +: browser-toolbar ( track -- track ) + dup { 3 3 } + toolbar-background >>interior { 1 0 } >>fill + f track-add ; : ( link -- gadget ) - vertical browser-gadget new-track + vertical browser-gadget new-track with-lines 1 >>fill swap >link >>model dup >>history dup >>search-field - add-browser-toolbar - add-help-header - add-help-pane ; + browser-toolbar + help-header + help-pane ; M: browser-gadget graft* [ add-definition-observer ] [ call-next-method ] bi ; diff --git a/basis/ui/tools/listener/listener.factor b/basis/ui/tools/listener/listener.factor index 0a42f9a925..41adfffff9 100644 --- a/basis/ui/tools/listener/listener.factor +++ b/basis/ui/tools/listener/listener.factor @@ -8,9 +8,10 @@ io.styles kernel lexer listener locals make math models models.arrow models.delay namespaces parser prettyprint quotations sequences source-files.errors strings system threads tools.errors.model ui ui.commands ui.gadgets ui.gadgets.buttons -ui.gadgets.editors ui.gadgets.glass ui.gadgets.labeled +ui.gadgets.editors ui.gadgets.glass ui.gadgets.labeled ui.gadgets.lines ui.gadgets.panes ui.gadgets.scrollers ui.gadgets.status-bar -ui.gadgets.tracks ui.gestures ui.operations ui.pens.solid +ui.gadgets.tracks ui.gadgets.toolbar +ui.gestures ui.operations ui.pens.solid ui.tools.browser ui.tools.common ui.tools.debugger ui.tools.error-list ui.tools.listener.completion ui.tools.listener.history ui.tools.listener.popups vocabs @@ -216,16 +217,15 @@ TUPLE: listener-gadget < tool error-summary output scroller input ; : init-error-summary ( listener -- listener ) >>error-summary dup error-summary>> f track-add ; + +: listener-area ( listener -- listener ) + dup output>> margins >>scroller + dup scroller>> white-interior 1 track-add ; : ( -- listener ) vertical listener-gadget new-track - add-toolbar - init-input/output - dup output>> - { 7 7 } { 1 1 } >>fill - >>scroller - dup scroller>> 1 track-add - init-error-summary ; + with-lines add-toolbar init-input/output listener-area + init-error-summary ; M: listener-gadget focusable-child* input>> dup popup>> or ;