frame layout fixes
parent
3d173c3af5
commit
5229bee399
|
@ -14,11 +14,15 @@ GENERIC: tutorial-line ( object -- gadget )
|
|||
|
||||
M: string tutorial-line <label> ;
|
||||
|
||||
: example-theme
|
||||
dup roll-button-theme
|
||||
dup "Monospaced" font set-paint-prop
|
||||
italic font-style set-paint-prop ;
|
||||
|
||||
M: general-list tutorial-line
|
||||
car dup <label> dup rot [ pane get pane-input set-editor-text drop ] cons
|
||||
button-gestures
|
||||
dup roll-button-theme
|
||||
dup "Monospaced" font set-paint-prop ;
|
||||
dup example-theme ;
|
||||
|
||||
: <page> ( list -- gadget )
|
||||
0 1 <pile>
|
||||
|
|
|
@ -4,8 +4,8 @@ USING: gadgets kernel namespaces test ;
|
|||
[ "Hello world" ]
|
||||
[
|
||||
<frame> "frame" set
|
||||
"Hello world" <label> 1 2 "frame" get set-frame-child
|
||||
1 2 "frame" get frame-child label-text
|
||||
"Hello world" <label> "frame" get 1 2 set-frame-child
|
||||
"frame" get 1 2 frame-child label-text
|
||||
] unit-test
|
||||
|
||||
[ { { 2 2 2 } { 3 3 3 } { 4 4 4 } } ] [
|
||||
|
@ -39,18 +39,26 @@ USING: gadgets kernel namespaces test ;
|
|||
[ { 90 120 0 } ]
|
||||
[
|
||||
<frame> "frame" set
|
||||
{ 10 20 0 } sized-gadget 1 2 "frame" get set-frame-child
|
||||
{ 30 40 0 } sized-gadget 2 0 "frame" get set-frame-child
|
||||
{ 50 60 0 } sized-gadget 0 1 "frame" get set-frame-child
|
||||
{ 10 20 0 } sized-gadget "frame" get 1 2 set-frame-child
|
||||
{ 30 40 0 } sized-gadget "frame" get 2 0 set-frame-child
|
||||
{ 50 60 0 } sized-gadget "frame" get 0 1 set-frame-child
|
||||
"frame" get pref-dim
|
||||
] unit-test
|
||||
|
||||
[ { 140 250 0 } ]
|
||||
[ { 180 210 0 } ]
|
||||
[
|
||||
<frame> "frame" set
|
||||
{ 10 20 0 } sized-gadget 1 2 "frame" get set-frame-child
|
||||
{ 30 40 0 } sized-gadget 2 0 "frame" get set-frame-child
|
||||
{ 50 60 0 } sized-gadget 0 1 "frame" get set-frame-child
|
||||
{ 100 150 0 } sized-gadget 1 1 "frame" get set-frame-child
|
||||
{ 10 20 0 } sized-gadget "frame" get add-bottom
|
||||
{ 30 40 0 } sized-gadget "frame" get 2 0 set-frame-child
|
||||
{ 50 60 0 } sized-gadget "frame" get add-left
|
||||
{ 100 150 0 } sized-gadget "frame" get add-center
|
||||
"frame" get pref-dim
|
||||
] unit-test
|
||||
|
||||
[ { 30 60 0 } ]
|
||||
[
|
||||
<frame> "frame" set
|
||||
{ 10 20 0 } sized-gadget "frame" get add-top
|
||||
{ 30 40 0 } sized-gadget "frame" get add-center
|
||||
"frame" get pref-dim
|
||||
] unit-test
|
||||
|
|
|
@ -20,7 +20,7 @@ M: book layout* ( book -- )
|
|||
set-gadget-dim
|
||||
] each-with
|
||||
dup book-page swap gadget-children nth
|
||||
t swap set-gadget-visible? ;
|
||||
[ t swap set-gadget-visible? ] when* ;
|
||||
|
||||
: show-page ( n book -- )
|
||||
[ gadget-children length rem ] keep
|
||||
|
|
|
@ -36,8 +36,8 @@ C: frame ( -- frame )
|
|||
|
||||
M: frame pref-dim ( frame -- dim )
|
||||
frame-grid pref-dim-grid
|
||||
dup frame-pref-dim first
|
||||
swap flip frame-pref-dim second
|
||||
dup flip frame-pref-dim first
|
||||
swap frame-pref-dim second
|
||||
0 3vector ;
|
||||
|
||||
: frame-layout ( horiz vert -- grid )
|
||||
|
@ -64,7 +64,7 @@ M: frame pref-dim ( frame -- dim )
|
|||
M: frame layout* ( frame -- dim )
|
||||
[
|
||||
frame-grid dup pref-dim-grid
|
||||
dup reduce-grid [ first ] map
|
||||
swap flip reduce-grid [ second ] map
|
||||
dup flip reduce-grid [ first ] map
|
||||
swap reduce-grid [ second ] map
|
||||
2dup
|
||||
] keep rect-dim fill-center 3dup position-grid resize-grid ;
|
||||
|
|
Loading…
Reference in New Issue