aboutsummaryrefslogtreecommitdiffstats
path: root/gui.c
diff options
context:
space:
mode:
Diffstat (limited to 'gui.c')
-rw-r--r--gui.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/gui.c b/gui.c
index 70e1dc8a..8b3ba893 100644
--- a/gui.c
+++ b/gui.c
@@ -135,8 +135,9 @@ uint8_t guiDeleteElement(char *label) {
return deleteElement(label);
}
-uint8_t guiDrawButton(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, char *str, uint16_t fontColor, uint16_t buttonColor, char *label, uint8_t *active, uint8_t *state) {
+uint8_t guiDrawButton(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, char *str, uint16_t fontColor, uint16_t buttonColor, uint16_t shadow, char *label, uint8_t *active, uint8_t *state) {
struct guiNode_t *newNode;
+ uint16_t i;
newNode = chHeapAlloc(NULL, sizeof(struct guiNode_t));
if(newNode == NULL)
@@ -157,6 +158,13 @@ uint8_t guiDrawButton(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, char *
lcdDrawRectString(x0, y0, x1, y1, str, fontColor, buttonColor);
+ if(shadow != 0) {
+ for(i = 0; i < shadow; i++) {
+ lcdDrawLine(x1+i, y0-i, x1+i, y1-i-1, Black);
+ lcdDrawLine(x0+i, y0-i, x1+i, y0-i, Black);
+ }
+ }
+
chHeapFree(newNode);
return 1;