diff --git a/gui.c b/gui.c index 598433ba..99db4133 100644 --- a/gui.c +++ b/gui.c @@ -83,9 +83,12 @@ static void guiThread(const uint16_t interval) { while(TRUE) { for(node = firstGUI; node; node = node->next) { + // check if GUI element is active if(*(node->active) == active) { x = tpReadX(); y = tpReadY(); + + // we got a button if(node->type == button) { if(x >= node->x0 && x <= node->x1 && y >= node->y0 && y <= node->y1) *(node->state) = 1; @@ -94,6 +97,16 @@ static void guiThread(const uint16_t interval) { } else { *(node->state) = 0; } + + // we got a slider + if(node->type == slider) { + + } + + // we got a keymatrix + if(node->type == keymatrix) { + + } } } diff --git a/gui.h b/gui.h index a95e9d36..05e4c383 100644 --- a/gui.h +++ b/gui.h @@ -22,7 +22,7 @@ static struct guiNode_t { extern "C" { #endif -enum {button}; +enum {button, slider, keymatrix}; enum {horizontal, vertical}; enum {inactive, active};