diff options
| author | Xavier Del Campo Romero <xavi.dcr@tutanota.com> | 2022-07-06 23:46:59 +0200 |
|---|---|---|
| committer | Xavier Del Campo Romero <xavi.dcr@tutanota.com> | 2022-07-07 02:37:25 +0200 |
| commit | dc4a3a2db894e8e7bb0be620b90780d55c74accd (patch) | |
| tree | e0d2de44fbdbb0883e0db21db7da0c99ae943a6c /src/menu | |
| parent | 3f793166bdbd73a61c3a858d95e700b42ead602d (diff) | |
| download | jancity-dc4a3a2db894e8e7bb0be620b90780d55c74accd.tar.gz | |
Allow multiple button types
Diffstat (limited to 'src/menu')
| -rw-r--r-- | src/menu/src/menu.c | 37 |
1 files changed, 28 insertions, 9 deletions
diff --git a/src/menu/src/menu.c b/src/menu/src/menu.c index 38f8632..c2f1e96 100644 --- a/src/menu/src/menu.c +++ b/src/menu/src/menu.c @@ -29,18 +29,19 @@ int menu(void) cnt.mode = GUI_CONTAINER_MODE_V; cnt.common.hcentered = true; cnt.common.vcentered = true; - gui_button_init(&play); - gui_button_init(&exit_btn); + cnt.spacing = 4; + gui_button_init(&play, GUI_BUTTON_TYPE_1); + gui_button_init(&exit_btn, GUI_BUTTON_TYPE_1); play.on_pressed = on_pressed; play.arg = &start; - play.w = 140; + play.u.type1.w = 140; play.common.hcentered = true; - play.label.text = "Play"; + play.u.type1.label.text = "Play"; exit_btn.arg = &exit; - exit_btn.w = 140; + exit_btn.u.type1.w = 140; exit_btn.common.hcentered = true; - exit_btn.label.text = "Exit"; + exit_btn.u.type1.label.text = "Exit"; exit_btn.on_pressed = on_pressed; gui_add_child(&cnt.common, &play.common); gui_add_child(&cnt.common, &exit_btn.common); @@ -72,9 +73,27 @@ int menu(void) if (p.common.exit || exit) return 0; - if (gui_render(&cnt.common) - || cursor_render(&cam.cursor) - || gfx_draw()) + if (gui_render(&cnt.common)) + return -1; + + switch (p.common.type) + { + case PERIPHERAL_TYPE_PAD: + /* Fall through. */ + case PERIPHERAL_TYPE_KEYBOARD_MOUSE: + if (cursor_render(&cam.cursor)) + return -1; + + break; + + case PERIPHERAL_TYPE_TOUCH: + break; + + default: + return -1; + } + + if (gfx_draw()) return -1; } |
