menu_tree.h 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #ifndef __MENU_TREE_H
  2. #define __MENU_TREE_H
  3. #include "menu.h"
  4. typedef enum
  5. {
  6. MCELL_NULL = 0,
  7. MCELL_MAIN,
  8. MCELL_K1,
  9. MCELL_K2,
  10. MCELL_REV,
  11. MCELL_SAVE,
  12. } menu_cell_t;
  13. menuItem NULL_MENU = {0, 0, 0, 0, 0, false, 0, 0};
  14. MAKE_MENU(NULL_ENTRY, NULL_MENU, NULL_MENU, NULL_MENU, NULL_MENU, MCELL_NULL, false, 0, 0);
  15. // NEXT, PREVIOUS, PARENT, CHILD
  16. //MAKE_MENU(Name, Next, Previous, Parent, Child, Select, Focus, func_draw, func_change)
  17. // Главный экран. Отображает пройденный путь, статус и т.п
  18. MAKE_MENU(m_main, m_k1, m_k1, NULL_ENTRY, NULL_ENTRY,
  19. MCELL_MAIN, false, &draw_main, &empty_func_bool);
  20. MAKE_MENU(m_k1, m_k2, m_main, m_main, NULL_ENTRY,
  21. MCELL_K1, false, &draw_settings, &empty_func_bool);
  22. MAKE_MENU(m_k2, m_revers, m_k1, m_main, NULL_ENTRY,
  23. MCELL_K2, false, &draw_settings, &empty_func_bool);
  24. MAKE_MENU(m_revers, m_save, m_k2, m_main, NULL_ENTRY,
  25. MCELL_REV, false, &draw_settings, &empty_func_bool);
  26. MAKE_MENU(m_save, m_main, m_revers, m_main, NULL_ENTRY,
  27. MCELL_SAVE, false, &draw_settings, &empty_func_bool);
  28. // Экран настроек. Пока отобразим один условный коэффициент.
  29. #if 0
  30. // Коэффициент 1
  31. MAKE_MENU(m_k1, NULL_ENTRY, NULL_ENTRY, NULL_ENTRY, NULL_ENTRY, 0, &draw_main,
  32. &button_up_1, &button_down_1, &empty_func, &button_start_measuring, &button_start_measuring);
  33. #endif
  34. #endif // __MENU_TREE_H