timed_remote_scene.c (927B)
1 #include "timed_remote_scene.h" 2 3 static void (*const scene_on_enter[])(void *) = { 4 [SCENE_BROWSE] = scene_browse_enter, 5 [SCENE_SELECT] = scene_select_enter, 6 [SCENE_CONFIG] = scene_cfg_enter, 7 [SCENE_RUN] = scene_run_enter, 8 [SCENE_DONE] = scene_done_enter, 9 }; 10 11 static bool (*const scene_on_event[])(void *, SceneManagerEvent) = { 12 [SCENE_BROWSE] = scene_browse_event, 13 [SCENE_SELECT] = scene_select_event, 14 [SCENE_CONFIG] = scene_cfg_event, 15 [SCENE_RUN] = scene_run_event, 16 [SCENE_DONE] = scene_done_event, 17 }; 18 19 static void (*const scene_on_exit[])(void *) = { 20 [SCENE_BROWSE] = scene_browse_exit, 21 [SCENE_SELECT] = scene_select_exit, 22 [SCENE_CONFIG] = scene_cfg_exit, 23 [SCENE_RUN] = scene_run_exit, 24 [SCENE_DONE] = scene_done_exit, 25 }; 26 27 const SceneManagerHandlers scene_handlers = { 28 .on_enter_handlers = scene_on_enter, 29 .on_event_handlers = scene_on_event, 30 .on_exit_handlers = scene_on_exit, 31 .scene_num = SCENE_COUNT, 32 };