Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
 
 
 

60 рядки
1.2 KiB

  1. #include "core/common.h"
  2. #include "core/buttons.h"
  3. #include "core/display.h"
  4. #include <epaper/EPD.h>
  5. #include "ModeRunner.h"
  6. #include "ReaderMode.h"
  7. #include "InternalMemoryMenuMode.h"
  8. #include "SdCardMenuMode.h"
  9. #include "SettingsMenuMode.h"
  10. #include "MainMenuMode.h"
  11. static char* options[] = {
  12. "Continue Reading",
  13. "Internal Memory",
  14. "SD Card",
  15. "Settings"
  16. };
  17. void MainMenuMode::start()
  18. {
  19. display_refresh();
  20. }
  21. void MainMenuMode::finish()
  22. {}
  23. char* MainMenuMode::getTitle()
  24. {
  25. return "Main Menu";
  26. }
  27. char** MainMenuMode::getOptions()
  28. {
  29. return options;
  30. }
  31. int MainMenuMode::getOptionsSize()
  32. {
  33. return 4;
  34. }
  35. void MainMenuMode::onOptionSelected(int option)
  36. {
  37. switch (option) {
  38. case 0: // reading
  39. display_refresh();
  40. getModeRunner()->startInnerMode(new ReaderMode());
  41. return;
  42. case 1: // memory
  43. getModeRunner()->startInnerMode(new InternalMemoryMenuMode());
  44. break;
  45. case 2: // sd card
  46. getModeRunner()->startInnerMode(new SdCardMenuMode());
  47. break;
  48. case 3: // settings
  49. getModeRunner()->startInnerMode(new SettingsMenuMode());
  50. break;
  51. }
  52. }