flip_library_e.h 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. #ifndef FLIP_LIBRARY_E_H
  2. #define FLIP_LIBRARY_E_H
  3. #include <flipper_http.h>
  4. #include <easy_flipper.h>
  5. #include <furi.h>
  6. #include <furi_hal.h>
  7. #include <gui/gui.h>
  8. #include <gui/view.h>
  9. #include <gui/modules/submenu.h>
  10. #include <gui/view_dispatcher.h>
  11. #include <notification/notification.h>
  12. #include <dialogs/dialogs.h>
  13. #include <jsmn.h>
  14. #define TAG "FlipLibrary"
  15. // Define the submenu items for our FlipLibrary application
  16. typedef enum
  17. {
  18. FlipLibrarySubmenuIndexRandomFacts, // Click to run the random facts
  19. FlipLibrarySubmenuIndexDictionary, // click to view the dictionary variable item list
  20. FlipLibrarySubmenuIndexAbout, // Click to view the about screen
  21. FlipLibrarySubmenuIndexSettings, // Click to view the WiFi settings
  22. //
  23. FlipLibrarySubmenuIndexRandomFactsCats, // Click to view the random facts (cats)
  24. FlipLibrarySubmenuIndexRandomFactsAll, // Click to view the random facts (all)
  25. } FlipLibrarySubmenuIndex;
  26. // Define a single view for our FlipLibrary application
  27. typedef enum
  28. {
  29. FlipLibraryViewRandomFacts = 7, // The random facts main screen
  30. FlipLibraryViewRandomFactsRun = 8, // The random facts widget that displays the random fact
  31. FlipLibraryViewSubmenuMain = 9, // The submenu screen
  32. FlipLibraryViewAbout = 10, // The about screen
  33. FlipLibraryViewSettings = 11, // The settings screen
  34. FlipLibraryViewTextInputSSID = 12, // The text input screen (SSID)
  35. FlipLibraryViewTextInputPassword = 13, // The text input screen (password)
  36. FlipLibraryViewDictionary = 14, // The dictionary submenu screen
  37. //
  38. FlipLibraryViewDictionaryTextInput = 15,
  39. FlipLibraryViewDictionaryRun = 16,
  40. //
  41. FlipLibraryViewRandomFactsCats = 17,
  42. FlipLibraryViewRandomFactsAll = 18,
  43. //
  44. FlipLibraryViewRandomFactWidget = 19, // The text box that displays the random fact
  45. FlipLibraryViewDictionaryWidget = 20, // The text box that displays the dictionary
  46. } FlipLibraryView;
  47. // Each screen will have its own view
  48. typedef struct
  49. {
  50. ViewDispatcher *view_dispatcher; // Switches between our views
  51. View *view_random_facts; // The main screen that displays the random fact
  52. View *view_dictionary; // The dictionary screen
  53. Submenu *submenu_main; // The submenu for the main screen
  54. Submenu *submenu_random_facts; // The submenu for the random facts screen
  55. Widget *widget; // The widget
  56. VariableItemList *variable_item_list_wifi; // The variable item list (WiFi settings)
  57. VariableItem *variable_item_ssid; // The variable item (SSID)
  58. VariableItem *variable_item_password; // The variable item (password)
  59. UART_TextInput *uart_text_input_ssid; // The text input for the SSID
  60. UART_TextInput *uart_text_input_password; // The text input for the password
  61. UART_TextInput *uart_text_input_dictionary; // The text input for the dictionary
  62. //
  63. Widget *widget_random_fact; // The text box that displays the random fact
  64. Widget *widget_dictionary; // The text box that displays the dictionary
  65. char *uart_text_input_buffer_ssid; // Buffer for the text input (SSID)
  66. char *uart_text_input_temp_buffer_ssid; // Temporary buffer for the text input (SSID)
  67. uint32_t uart_text_input_buffer_size_ssid; // Size of the text input buffer (SSID)
  68. char *uart_text_input_buffer_password; // Buffer for the text input (password)
  69. char *uart_text_input_temp_buffer_password; // Temporary buffer for the text input (password)
  70. uint32_t uart_text_input_buffer_size_password; // Size of the text input buffer (password)
  71. char *uart_text_input_buffer_dictionary; // Buffer for the text input (dictionary)
  72. char *uart_text_input_temp_buffer_dictionary; // Temporary buffer for the text input (dictionary)
  73. uint32_t uart_text_input_buffer_size_dictionary; // Size of the text input buffer (dictionary)
  74. } FlipLibraryApp;
  75. #endif // FLIP_LIBRARY_E_H