minesweeper_scene.h 974 B

1234567891011121314151617181920212223242526272829303132
  1. #ifndef MINESWEEPER_SCENE_H
  2. #define MINESWEEPER_SCENE_H
  3. #include <gui/scene_manager.h>
  4. // Generate scene id and total number
  5. #define ADD_SCENE(prefix, name, id) MineSweeperScene##id,
  6. typedef enum {
  7. #include "minesweeper_scene_config.h"
  8. MineSweeperSceneNum
  9. } MineSweeperScene;
  10. #undef ADD_SCENE
  11. extern const SceneManagerHandlers minesweeper_scene_handlers;
  12. // Generate scene on_enter handlers declaration
  13. #define ADD_SCENE(prefix, name, id) void prefix##_scene_##name##_on_enter(void*);
  14. #include "minesweeper_scene_config.h"
  15. #undef ADD_SCENE
  16. // Generate scene on_enter handlers declaration
  17. #define ADD_SCENE(prefix, name, id) \
  18. bool prefix##_scene_##name##_on_event(void* context, SceneManagerEvent event);
  19. #include "minesweeper_scene_config.h"
  20. #undef ADD_SCENE
  21. // Generate scene on_enter handlers declaration
  22. #define ADD_SCENE(prefix, name, id) void prefix##_scene_##name##_on_exit(void* context);
  23. #include "minesweeper_scene_config.h"
  24. #undef ADD_SCENE
  25. #endif