diff --git a/basis/ui/gadgets/borders/borders-docs.factor b/basis/ui/gadgets/borders/borders-docs.factor index 0f9be42d7b..1c0172041d 100644 --- a/basis/ui/gadgets/borders/borders-docs.factor +++ b/basis/ui/gadgets/borders/borders-docs.factor @@ -5,7 +5,7 @@ HELP: border { $class-description "A border gadget contains a single child and centers it, with a fixed-width border. Borders are created by calling " { $link } "." } ; HELP: -{ $values { "child" gadget } { "gap" integer } { "border" "a new " { $link border } } } +{ $values { "child" gadget } { "gap" "a pair of integers" } { "border" "a new " { $link border } } } { $description "Creates a new border around the child with the specified horizontal and vertical gap." } ; ARTICLE: "ui.gadgets.borders" "Border gadgets" diff --git a/basis/ui/gadgets/borders/borders-tests.factor b/basis/ui/gadgets/borders/borders-tests.factor index 0151996c02..91cc5afb68 100644 --- a/basis/ui/gadgets/borders/borders-tests.factor +++ b/basis/ui/gadgets/borders/borders-tests.factor @@ -2,15 +2,15 @@ IN: ui.gadgets.borders.tests USING: tools.test accessors namespaces kernel ui.gadgets ui.gadgets.borders math.geometry.rect ; -[ { 110 210 } ] [ { 100 200 } >>dim 5 pref-dim ] unit-test +[ { 110 210 } ] [ { 100 200 } >>dim { 5 5 } pref-dim ] unit-test [ ] [ { 100 200 } >>dim "g" set ] unit-test -[ ] [ "g" get 0 { 100 200 } >>dim "b" set ] unit-test +[ ] [ "g" get { 0 0 } { 100 200 } >>dim "b" set ] unit-test [ T{ rect f { 0 0 } { 100 200 } } ] [ "b" get border-child-rect ] unit-test -[ ] [ "g" get 5 { 210 210 } >>dim "b" set ] unit-test +[ ] [ "g" get { 5 5 } { 210 210 } >>dim "b" set ] unit-test [ T{ rect f { 55 5 } { 100 200 } } ] [ "b" get border-child-rect ] unit-test diff --git a/basis/ui/gadgets/borders/borders.factor b/basis/ui/gadgets/borders/borders.factor index 1f66cca178..ec625c909a 100644 --- a/basis/ui/gadgets/borders/borders.factor +++ b/basis/ui/gadgets/borders/borders.factor @@ -1,4 +1,4 @@ -! Copyright (C) 2005, 2008 Slava Pestov. +! Copyright (C) 2005, 2009 Slava Pestov. ! See http://factorcode.org/license.txt for BSD license. USING: accessors arrays ui.gadgets kernel math namespaces vectors sequences math.vectors math.geometry.rect ; @@ -14,14 +14,16 @@ TUPLE: border < gadget : ( child gap -- border ) swap border new-border - swap dup 2array >>size ; + swap >>size ; : ( child gap -- border ) { 1 1 } >>fill ; M: border pref-dim* - [ size>> 2 v*n ] keep - gadget-child pref-dim v+ ; + [ size>> 2 v*n ] [ gadget-child pref-dim ] bi v+ ; + +M: border baseline + [ size>> second ] [ gadget-child baseline ] bi + ; : border-major-dim ( border -- dim ) [ dim>> ] [ size>> 2 v*n ] bi v- ; @@ -43,9 +45,8 @@ M: border pref-dim* dup border-dim [ border-loc ] keep ; M: border layout* - dup border-child-rect swap gadget-child - over loc>> >>loc - swap dim>> >>dim + [ gadget-child ] [ border-child-rect ] bi + [ loc>> >>loc ] [ dim>> >>dim ] bi drop ; M: border focusable-child* diff --git a/basis/ui/gadgets/menus/menus.factor b/basis/ui/gadgets/menus/menus.factor index e29d495c05..ab48650a4b 100644 --- a/basis/ui/gadgets/menus/menus.factor +++ b/basis/ui/gadgets/menus/menus.factor @@ -26,7 +26,7 @@ IN: ui.gadgets.menus : ( target hook commands -- menu ) [ ] 3dip [ add-gadget ] with with each - 5 menu-theme ; + { 5 5 } menu-theme ; : show-commands-menu ( target commands -- ) [ dup [ ] ] dip show-menu ; diff --git a/basis/ui/gadgets/search-tables/search-tables.factor b/basis/ui/gadgets/search-tables/search-tables.factor index a1c7a09b14..78fd3e4f37 100644 --- a/basis/ui/gadgets/search-tables/search-tables.factor +++ b/basis/ui/gadgets/search-tables/search-tables.factor @@ -4,7 +4,7 @@ USING: accessors kernel delegate fry sequences models models.search models.delay calendar locals ui.gadgets.editors ui.gadgets.labels ui.gadgets.scrollers ui.gadgets.tables ui.gadgets.tracks ui.gadgets.borders -ui.gadgets.buttons ; +ui.gadgets.buttons ui.gadgets ; IN: ui.gadgets.search-tables TUPLE: search-field < track field ; @@ -16,7 +16,7 @@ TUPLE: search-field < track field ; "X" swap '[ drop _ clear-search-field ] ; : ( model -- gadget ) - { 1 0 } search-field new-track + horizontal search-field new-track { 5 5 } >>gap "Search:"