ui.h 732 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #ifndef ui_H_INCLUDED
  2. #define ui_H_INCLUDED
  3. /* Data struct for the particular GUI state */
  4. struct ui_state {
  5. zori_id screen;
  6. zori_id console;
  7. /* main page/menu */
  8. struct ui_state_main {
  9. zori_id page;
  10. zori_id menu;
  11. /* menu buttons */
  12. struct ui_state_main_buttons {
  13. zori_id resume;
  14. zori_id new;
  15. zori_id settings;
  16. } button;
  17. } main;
  18. /* HUD page and widgets */
  19. struct ui_state_hud {
  20. zori_id page;
  21. } hud;
  22. /* Settings page and widgets */
  23. struct ui_state_settings {
  24. zori_id page;
  25. zori_id menu;
  26. } settings;
  27. };
  28. void ui_setup(void);
  29. void ui_state_init(struct ui_state * ui, zori_display * display, zori_font * font);
  30. #endif