ui.h 716 B

1234567891011121314151617181920212223242526272829303132
  1. #ifndef UI_H
  2. #define UI_H
  3. #include <stdint.h>
  4. void ui_init(void);
  5. struct display_menu {
  6. struct display_menu *next;
  7. int entry_n;
  8. struct display_menu_entry {
  9. char title[16];
  10. void (*action)(const void *arg);
  11. const void *arg;
  12. } entry[8];
  13. };
  14. const struct display_menu MainMenu, MeasureMenu, SignalGenMenu,
  15. ExtraMenu;
  16. void ui_display_menu(const struct display_menu *menu);
  17. void ui_button_press(uint8_t b, int hold);
  18. struct display_menu *CurrentMenu;
  19. /* Defined in main to intercept input controls */
  20. void set_input_callback(void (*cb)(uint8_t press, int hold));
  21. void clear_input_callback(void);
  22. void set_keepalive(void (*cb)(void));
  23. void clear_keepalive(void);
  24. #endif