ui.gadgets.labelled: refactor
							parent
							
								
									c7ed4dd679
								
							
						
					
					
						commit
						0b90cda9e2
					
				| 
						 | 
					@ -5,17 +5,16 @@ ui.gadgets.labels ui.gadgets.panes ui.gadgets.scrollers
 | 
				
			||||||
ui.gadgets.tracks ui.gadgets.theme ui.gadgets.frames
 | 
					ui.gadgets.tracks ui.gadgets.theme ui.gadgets.frames
 | 
				
			||||||
ui.gadgets.grids io kernel math models namespaces prettyprint
 | 
					ui.gadgets.grids io kernel math models namespaces prettyprint
 | 
				
			||||||
sequences sequences words classes.tuple ui.gadgets ui.render
 | 
					sequences sequences words classes.tuple ui.gadgets ui.render
 | 
				
			||||||
colors ;
 | 
					colors accessors ;
 | 
				
			||||||
IN: ui.gadgets.labelled
 | 
					IN: ui.gadgets.labelled
 | 
				
			||||||
 | 
					
 | 
				
			||||||
TUPLE: labelled-gadget < track content ;
 | 
					TUPLE: labelled-gadget < track content ;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
: <labelled-gadget> ( gadget title -- newgadget )
 | 
					: <labelled-gadget> ( gadget title -- newgadget )
 | 
				
			||||||
    { 0 1 } labelled-gadget new-track
 | 
					  { 0 1 } labelled-gadget new-track
 | 
				
			||||||
    [
 | 
					    swap <label> reverse-video-theme f track-add*
 | 
				
			||||||
        <label> reverse-video-theme f track,
 | 
					    swap >>content
 | 
				
			||||||
        g-> set-labelled-gadget-content 1 track,
 | 
					    dup content>> 1 track-add* ;
 | 
				
			||||||
    ] make-gadget ;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
M: labelled-gadget focusable-child* labelled-gadget-content ;
 | 
					M: labelled-gadget focusable-child* labelled-gadget-content ;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -50,10 +49,9 @@ TUPLE: closable-gadget < frame content ;
 | 
				
			||||||
    [ [ closable-gadget? ] is? ] find-parent ;
 | 
					    [ [ closable-gadget? ] is? ] find-parent ;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
: <closable-gadget> ( gadget title quot -- gadget )
 | 
					: <closable-gadget> ( gadget title quot -- gadget )
 | 
				
			||||||
    closable-gadget new-frame 
 | 
					  closable-gadget new-frame
 | 
				
			||||||
    [
 | 
					    -rot <title-bar> @top grid-add*
 | 
				
			||||||
        <title-bar> @top frame,
 | 
					    swap >>content
 | 
				
			||||||
        g-> set-closable-gadget-content @center frame,
 | 
					    dup content>> @center grid-add* ;
 | 
				
			||||||
    ] make-gadget ;
 | 
					    
 | 
				
			||||||
 | 
					 | 
				
			||||||
M: closable-gadget focusable-child* closable-gadget-content ;
 | 
					M: closable-gadget focusable-child* closable-gadget-content ;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue