summaryrefslogtreecommitdiffstats
path: root/menu_demo/button.c
diff options
context:
space:
mode:
Diffstat (limited to 'menu_demo/button.c')
-rw-r--r--menu_demo/button.c27
1 files changed, 20 insertions, 7 deletions
diff --git a/menu_demo/button.c b/menu_demo/button.c
index 2e98286..cafa94a 100644
--- a/menu_demo/button.c
+++ b/menu_demo/button.c
@@ -16,7 +16,7 @@ enum ButtonType {
BUTTON_LABEL
};
-void ButtonRender(struct ButtonStruct *f_sButton)
+void ButtonClickRender(struct ButtonStruct *f_sButton)
{
char l_pcTitle[BUTTON_MAX_TITLE];
@@ -28,15 +28,28 @@ void ButtonRender(struct ButtonStruct *f_sButton)
memset(&l_pcTitle, 0, sizeof(l_pcTitle));
memcpy(&l_pcTitle, f_sButton->m_pcTitle, sizeof(f_sButton->m_pcTitle));
+ glBegin(GL_QUADS);
+ glVertex3d(l_dXPos, l_dYPos, 0);
+ glVertex3d(l_dXPos + l_dWidth, l_dYPos, 0);
+ glVertex3d(l_dXPos + l_dWidth, l_dYPos - BUTTON_CLICK_HEIGHT, 0);
+ glVertex3d(l_dXPos, l_dYPos - BUTTON_CLICK_HEIGHT, 0);
+ glEnd();
+
+} // ButtonClickRender
+
+void ButtonRender(struct ButtonStruct *f_sButton)
+{
+ int l_iType = f_sButton->m_iType;
+
switch (l_iType)
{
case BUTTON_CLICK:
- glBegin(GL_QUADS);
- glVertex3d(l_dXPos, l_dYPos, 0);
- glVertex3d(l_dXPos + l_dWidth, l_dYPos, 0);
- glVertex3d(l_dXPos + l_dWidth, l_dYPos - BUTTON_CLICK_HEIGHT, 0);
- glVertex3d(l_dXPos, l_dYPos - BUTTON_CLICK_HEIGHT, 0);
- glEnd();
+ ButtonClickRender(f_sButton);
+ break;
+
+ case BUTTON_RADIO:
+ case BUTTON_LABEL:
+ default:
break;
}