]> gitweb.factorcode.org Git - factor.git/blob - library/ui/gadgets/labels.factor
Fix some UI painting bugs
[factor.git] / library / ui / gadgets / labels.factor
1 ! Copyright (C) 2005, 2006 Slava Pestov.
2 ! See http://factorcode.org/license.txt for BSD license.
3 IN: gadgets-labels
4 USING: arrays freetype gadgets gadgets-theme
5 generic hashtables io kernel math namespaces opengl sequences
6 styles ;
7
8 ! A label gadget draws a string.
9 TUPLE: label text font color ;
10
11 C: label ( text -- label )
12     dup delegate>gadget
13     [ set-label-text ] keep
14     dup label-theme ;
15
16 M: label pref-dim*
17     dup label-font lookup-font dup font-height >r
18     swap label-text string-width r> 2array ;
19
20 M: label draw-gadget*
21     dup label-color gl-color
22     dup label-font swap label-text
23     origin get draw-string ;
24
25 : <label-control> ( model -- gadget )
26     "" <label> [ set-label-text ] <control> ;