3 Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
10 Port of test_viewports.c to Lua
12 Copyright (C) 2009 by Maurus Cuelenaere
14 This program is free software; you can redistribute it and/or
15 modify it under the terms of the GNU General Public License
16 as published by the Free Software Foundation; either version 2
17 of the License, or (at your option) any later version.
19 This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
20 KIND, either express or implied.
24 -- TODO: outsource this
26 rb
.LCD_BLACK
= rb
.lcd_rgbpack(0, 0, 0)
27 rb
.LCD_WHITE
= rb
.lcd_rgbpack(255, 255, 255)
28 rb
.LCD_DEFAULT_FG
= rb
.LCD_WHITE
29 rb
.LCD_DEFAULT_BG
= rb
.LCD_BLACK
31 BGCOLOR_1
= rb
.lcd_rgbpack(255,255,0)
32 BGCOLOR_2
= rb
.lcd_rgbpack(0,255,0)
33 FGCOLOR_1
= rb
.lcd_rgbpack(0,0,255)
42 drawmode
= rb
.DRMODE_SOLID
,
43 fg_pattern
= rb
.LCD_DEFAULT_FG
,
44 bg_pattern
= BGCOLOR_1
49 x
= rb
.LCD_WIDTH
/ 10,
51 width
= rb
.LCD_WIDTH
/ 3,
52 height
= rb
.LCD_HEIGHT
/ 2,
53 font
= rb
.FONT_SYSFIXED
,
54 drawmode
= rb
.DRMODE_SOLID
,
55 fg_pattern
= rb
.LCD_DEFAULT_FG
,
56 bg_pattern
= rb
.LCD_DEFAULT_BG
63 width
= rb
.LCD_WIDTH
/ 3,
64 height
= (rb
.LCD_HEIGHT
/ 2),
66 drawmode
= rb
.DRMODE_SOLID
,
67 fg_pattern
= FGCOLOR_1
,
68 bg_pattern
= BGCOLOR_2
75 y
= (5 * rb
.LCD_HEIGHT
) / 8,
76 width
= rb
.LCD_WIDTH
/ 2,
77 height
= (rb
.LCD_HEIGHT
/ 4),
78 font
= rb
.FONT_SYSFIXED
,
79 drawmode
= rb
.DRMODE_SOLID
,
80 fg_pattern
= rb
.LCD_BLACK
,
81 bg_pattern
= rb
.LCD_WHITE
86 rb
.lcd_puts_scroll(0,0,"Viewport testing plugin - this is a scrolling title")
92 rb
.lcd_puts_scroll(0,i
,string.format("Left text, scrolling_line %d",i
));
98 rb
.lcd_puts_scroll(1,i
,string.format("Right text, scrolling line %d",i
));
102 for i
= -10, vp2
.width
+ 10, 5 do
103 rb
.lcd_drawline(i
, y
, i
, vp2
.height
- y
);
106 rb
.set_viewport(vp3
);
109 rb
.lcd_puts_scroll(2,i
,string.format("Bottom text, a scrolling line %d",i
));
111 rb
.lcd_puts_scroll(4,3,"Short line")