diff options
author | Linus Nielsen Feltzing <linus@haxx.se> | 2004-04-28 22:20:27 +0000 |
---|---|---|
committer | Linus Nielsen Feltzing <linus@haxx.se> | 2004-04-28 22:20:27 +0000 |
commit | bd3d297b3186185d43dff5924f80545f736db446 (patch) | |
tree | 0c34dc230305b5af5329cf0e6ac8f56a04eb6f6e /apps/recorder/widgets.c | |
parent | fc2fc47d016e3042a19c6dda5d79a6bf0c445f87 (diff) | |
download | rockbox-bd3d297b3186185d43dff5924f80545f736db446.tar.gz rockbox-bd3d297b3186185d43dff5924f80545f736db446.zip |
A checkbox widget
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4559 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/recorder/widgets.c')
-rw-r--r-- | apps/recorder/widgets.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/apps/recorder/widgets.c b/apps/recorder/widgets.c index 99257495cf..4008d2b4c2 100644 --- a/apps/recorder/widgets.c +++ b/apps/recorder/widgets.c @@ -210,4 +210,29 @@ void scrollbar(int x, int y, int width, int height, int items, int min_shown, } } } + +/* + * Print a checkbox + */ +void checkbox(int x, int y, int width, int height, bool checked) +{ + /* check position and dimensions */ + if((x < 0) || (x + width > LCD_WIDTH) || + (y < 0) || (y + height > LCD_HEIGHT) || + (width < 4 ) || (height < 4 )) + { + return; + } + + lcd_drawrect(x, y, width, height); + + if (checked){ + lcd_drawline(x + 2, y + 2, x + width - 2 - 1 , y + height - 2 - 1); + lcd_drawline(x + 2, y + height - 2 - 1, x + width - 2 - 1, y + 2); + } else { + /* be sure to clear box */ + lcd_clearrect(x + 1, y + 1, width - 2, height - 2); + } +} + #endif |