model>> random-color swap set-model
] <border-button> ;
-: <color-picker-game> ( -- gadget )
+:: <color-picker-game> ( constructor -- gadget )
vertical color-picker-game new-track
white-interior { 5 5 } >>gap
horizontal <track>
random-color <model> <color-preview> 1/2 track-add
- \ <rgba> <color-sliders> swap over
+ constructor <color-sliders> swap over
[ <color-preview> 1/2 track-add 1 track-add ]
[ f track-add ]
[ <color-status> f track-add ] tri*
<match-button> f track-add
<reset-button> f track-add ;
+: <color-picker-games> ( -- gadget )
+ [ <color-picker-game> ] <color-tabs> ;
+
MAIN-WINDOW: color-picker-game-window
{ { title "Color Picker Game" } }
- <color-picker-game> { 5 5 } <border> >>gadgets ;
+ <color-picker-games> { 5 5 } <border> >>gadgets ;
[ <color-preview> 1 track-add ]
[ <color-status> f track-add ] bi ;
-: <color-pickers> ( -- gadget )
+:: <color-tabs> ( quot: ( constructor -- gadget ) -- gadget )
<tabbed-gadget> {
<rgba>
<hsla>
<yiqa>
<yuva>
} [
- [ <color-picker> ]
- [ name>> "<" ?head drop ">" ?tail drop add-tab ] bi
- ] each ;
+ quot [ name>> "<" ?head drop ">" ?tail drop add-tab ] bi
+ ] each ; inline
+
+: <color-pickers> ( -- gadget )
+ [ <color-picker> ] <color-tabs> ;
MAIN-WINDOW: color-picker-window { { title "Color Picker" } }
<color-pickers> { 5 5 } <border> white-interior >>gadgets ;