File: icon.pl

package info (click to toggle)
swi-prolog-packages 5.0.1-1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 50,688 kB
  • ctags: 25,904
  • sloc: ansic: 195,096; perl: 91,425; cpp: 7,660; sh: 3,046; makefile: 2,750; yacc: 843; awk: 14; sed: 12
file content (24 lines) | stat: -rw-r--r-- 569 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
:- pce_begin_class(icon, device).

initialise(I, Image:image, Label:name) :->
	"Create from image and label"::
	send(I, send_super, initialise),
	send(I, display, bitmap(Image)),
	send(I, display, text(Label, center)),
	send(I, reposition).

reposition(I) :->
	get(I, member, bitmap, Bitmap),
	get(I, member, text, Text),
	get(Bitmap, center_x, CX),
	get(Bitmap, bottom_side, BS),
	get(Text, width, W),
	TX is CX - W//2,
	send(Text, set, TX, BS).

label(I, Text:name) :->
	"Change the label"::
	get(I, member, text, Text),
	send(Text, string, Text).

:- pce_end_class.