summaryrefslogtreecommitdiffstats
path: root/apps/recorder/widgets.c
diff options
context:
space:
mode:
authorLinus Nielsen Feltzing <linus@haxx.se>2004-04-28 22:20:27 +0000
committerLinus Nielsen Feltzing <linus@haxx.se>2004-04-28 22:20:27 +0000
commitbd3d297b3186185d43dff5924f80545f736db446 (patch)
tree0c34dc230305b5af5329cf0e6ac8f56a04eb6f6e /apps/recorder/widgets.c
parentfc2fc47d016e3042a19c6dda5d79a6bf0c445f87 (diff)
downloadrockbox-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.c25
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