Просмотр исходного кода

[FL-2937] Remove resources from API to prevent frequent API version increase (#1935)

* Remove all icons from API
* Music player: icons
* Signal generator: icons
* Bt hid: icons
* Weather station: icons
* Picopass: icons
* File browser test: icons
* Example images: documentation
* Remove global assets header
* Fix picopass

Co-authored-by: あく <alleteam@gmail.com>
Sergey Gavrilov 3 лет назад
Родитель
Сommit
3434305630
73 измененных файлов с 74 добавлено и 195 удалено
  1. 1 0
      applications/debug/file_browser_test/application.fam
  2. 1 1
      applications/debug/file_browser_test/file_browser_app.c
  3. BIN
      applications/debug/file_browser_test/icons/badusb_10px.png
  4. 24 0
      applications/examples/example_images/ReadMe.md
  5. 1 0
      applications/main/bad_usb/bad_usb_app_i.h
  6. 1 0
      applications/main/bad_usb/views/bad_usb_view.c
  7. 1 0
      applications/main/fap_loader/fap_loader_app.c
  8. 1 0
      applications/main/gpio/gpio_app_i.h
  9. 1 0
      applications/main/ibutton/ibutton_i.h
  10. 1 0
      applications/main/infrared/infrared_i.h
  11. 1 0
      applications/main/lfrfid/lfrfid_i.h
  12. 1 0
      applications/main/lfrfid/views/lfrfid_view_read.c
  13. 1 0
      applications/main/nfc/nfc_i.h
  14. 1 1
      applications/main/nfc/views/detect_reader.c
  15. 1 0
      applications/main/subghz/subghz_i.h
  16. 1 0
      applications/main/u2f/u2f_app_i.h
  17. 1 0
      applications/main/u2f/views/u2f_view.c
  18. BIN
      applications/plugins/bt_hid_app/assets/ButtonDown_7x4.png
  19. BIN
      applications/plugins/bt_hid_app/assets/ButtonLeft_4x7.png
  20. BIN
      applications/plugins/bt_hid_app/assets/ButtonRight_4x7.png
  21. BIN
      applications/plugins/bt_hid_app/assets/ButtonUp_7x4.png
  22. BIN
      applications/plugins/bt_hid_app/assets/Ok_btn_9x9.png
  23. BIN
      applications/plugins/bt_hid_app/assets/Pin_arrow_down_7x9.png
  24. BIN
      applications/plugins/bt_hid_app/assets/Pin_arrow_left_9x7.png
  25. BIN
      applications/plugins/bt_hid_app/assets/Pin_arrow_right_9x7.png
  26. BIN
      applications/plugins/bt_hid_app/assets/Pin_arrow_up_7x9.png
  27. BIN
      applications/plugins/bt_hid_app/assets/Pin_back_arrow_10x8.png
  28. 2 1
      applications/plugins/music_player/application.fam
  29. BIN
      applications/plugins/music_player/icons/music_10px.png
  30. 1 1
      applications/plugins/music_player/music_player.c
  31. 1 0
      applications/plugins/picopass/application.fam
  32. BIN
      applications/plugins/picopass/icons/DolphinMafia_115x62.png
  33. BIN
      applications/plugins/picopass/icons/DolphinNice_96x59.png
  34. BIN
      applications/plugins/picopass/icons/Nfc_10px.png
  35. BIN
      applications/plugins/picopass/icons/RFIDDolphinReceive_97x61.png
  36. BIN
      applications/plugins/picopass/icons/RFIDDolphinSend_97x61.png
  37. 1 0
      applications/plugins/picopass/picopass_device.c
  38. 1 0
      applications/plugins/picopass/picopass_i.h
  39. 1 0
      applications/plugins/signal_generator/application.fam
  40. BIN
      applications/plugins/signal_generator/icons/SmallArrowDown_3x5.png
  41. BIN
      applications/plugins/signal_generator/icons/SmallArrowUp_3x5.png
  42. 1 0
      applications/plugins/signal_generator/views/signal_gen_pwm.c
  43. BIN
      applications/plugins/weather_station/images/Lock_7x8.png
  44. BIN
      applications/plugins/weather_station/images/Pin_back_arrow_10x8.png
  45. BIN
      applications/plugins/weather_station/images/Quest_7x8.png
  46. BIN
      applications/plugins/weather_station/images/Scanning_123x52.png
  47. BIN
      applications/plugins/weather_station/images/Unlock_7x8.png
  48. BIN
      applications/plugins/weather_station/images/WarningDolphin_45x42.png
  49. 1 2
      applications/plugins/weather_station/views/weather_station_receiver.c
  50. 1 0
      applications/services/bt/bt_service/bt.c
  51. 1 0
      applications/services/desktop/views/desktop_view_lock_menu.c
  52. 1 0
      applications/services/desktop/views/desktop_view_locked.c
  53. 1 0
      applications/services/desktop/views/desktop_view_pin_input.c
  54. 1 0
      applications/services/dialogs/dialogs_api.c
  55. 1 1
      applications/services/gui/canvas.h
  56. 1 0
      applications/services/gui/gui.c
  57. 1 1
      applications/services/gui/icon_animation.h
  58. 1 0
      applications/services/gui/modules/button_menu.c
  59. 3 2
      applications/services/gui/modules/byte_input.c
  60. 1 0
      applications/services/gui/modules/menu.c
  61. 1 0
      applications/services/gui/modules/text_input.c
  62. 1 0
      applications/services/power/power_service/power_i.h
  63. 1 0
      applications/services/power/power_service/views/power_off.c
  64. 1 0
      applications/services/power/power_service/views/power_unplug_usb.c
  65. 1 0
      applications/services/storage/storage.c
  66. 1 0
      applications/settings/about/about.c
  67. 1 0
      applications/settings/bt_settings_app/bt_settings_app.h
  68. 1 0
      applications/settings/desktop_settings/desktop_settings_app.h
  69. 1 0
      applications/settings/power_settings_app/power_settings_app.h
  70. 1 0
      applications/settings/power_settings_app/views/battery_info.c
  71. 1 0
      applications/settings/storage_settings/storage_settings.h
  72. 1 0
      applications/system/updater/views/updater_main.c
  73. 1 185
      firmware/targets/f7/api_symbols.csv

+ 1 - 0
applications/debug/file_browser_test/application.fam

@@ -8,4 +8,5 @@ App(
     stack_size=2 * 1024,
     order=150,
     fap_category="Debug",
+    fap_icon_assets="icons",
 )

+ 1 - 1
applications/debug/file_browser_test/file_browser_app.c

@@ -1,4 +1,4 @@
-#include "assets_icons.h"
+#include <file_browser_test_icons.h>
 #include "file_browser_app_i.h"
 #include "gui/modules/file_browser.h"
 #include <furi.h>

BIN
applications/debug/file_browser_test/icons/badusb_10px.png


+ 24 - 0
applications/examples/example_images/ReadMe.md

@@ -0,0 +1,24 @@
+# Application icons
+To use icons, do the following:
+* add a line to the application manifest: `fap_icon_assets="folder"`, where `folder` points to the folder where your icons are located
+* add `#include "application_id_icons.h"` to the application code, where `application_id` is the appid from the manifest
+* every icon in the folder will be available as a `I_icon_name` variable, where `icon_name` is the name of the icon file without the extension
+
+## Example
+We have an application with the following manifest:
+```
+App(
+    appid="example_images",
+    ...
+    fap_icon_assets="images",
+)
+```
+
+So the icons are in the `images` folder and will be available in the generated `example_images_icons.h` file.
+
+The example code is located in `example_images_main.c` and contains the following line:
+```
+#include "example_images_icons.h"
+```
+
+Image `dolphin_71x25.png` is available as `I_dolphin_71x25`.

+ 1 - 0
applications/main/bad_usb/bad_usb_app_i.h

@@ -5,6 +5,7 @@
 #include "bad_usb_script.h"
 
 #include <gui/gui.h>
+#include <assets_icons.h>
 #include <gui/view_dispatcher.h>
 #include <gui/scene_manager.h>
 #include <gui/modules/submenu.h>

+ 1 - 0
applications/main/bad_usb/views/bad_usb_view.c

@@ -1,6 +1,7 @@
 #include "bad_usb_view.h"
 #include "../bad_usb_script.h"
 #include <gui/elements.h>
+#include <assets_icons.h>
 
 #define MAX_NAME_LEN 64
 

+ 1 - 0
applications/main/fap_loader/fap_loader_app.c

@@ -1,5 +1,6 @@
 #include <furi.h>
 #include <gui/gui.h>
+#include <assets_icons.h>
 #include <gui/view_dispatcher.h>
 #include <storage/storage.h>
 #include <gui/modules/loading.h>

+ 1 - 0
applications/main/gpio/gpio_app_i.h

@@ -15,6 +15,7 @@
 #include <gui/modules/widget.h>
 #include "views/gpio_test.h"
 #include "views/gpio_usb_uart.h"
+#include <assets_icons.h>
 
 struct GpioApp {
     Gui* gui;

+ 1 - 0
applications/main/ibutton/ibutton_i.h

@@ -4,6 +4,7 @@
 
 #include <gui/gui.h>
 #include <gui/view.h>
+#include <assets_icons.h>
 #include <gui/view_dispatcher.h>
 #include <gui/scene_manager.h>
 #include <notification/notification_messages.h>

+ 1 - 0
applications/main/infrared/infrared_i.h

@@ -2,6 +2,7 @@
 
 #include <gui/gui.h>
 #include <gui/view.h>
+#include <assets_icons.h>
 #include <gui/view_stack.h>
 #include <gui/view_dispatcher.h>
 #include <gui/scene_manager.h>

+ 1 - 0
applications/main/lfrfid/lfrfid_i.h

@@ -5,6 +5,7 @@
 
 #include <gui/gui.h>
 #include <gui/view.h>
+#include <assets_icons.h>
 #include <gui/view_dispatcher.h>
 #include <gui/scene_manager.h>
 #include <cli/cli.h>

+ 1 - 0
applications/main/lfrfid/views/lfrfid_view_read.c

@@ -1,5 +1,6 @@
 #include "lfrfid_view_read.h"
 #include <gui/elements.h>
+#include <assets_icons.h>
 
 #define TEMP_STR_LEN 128
 

+ 1 - 0
applications/main/nfc/nfc_i.h

@@ -7,6 +7,7 @@
 
 #include <gui/gui.h>
 #include <gui/view.h>
+#include <assets_icons.h>
 #include <gui/view_dispatcher.h>
 #include <gui/scene_manager.h>
 #include <cli/cli.h>

+ 1 - 1
applications/main/nfc/views/detect_reader.c

@@ -1,5 +1,5 @@
 #include "detect_reader.h"
-
+#include <assets_icons.h>
 #include <gui/elements.h>
 
 struct DetectReader {

+ 1 - 0
applications/main/subghz/subghz_i.h

@@ -13,6 +13,7 @@
 #include "views/subghz_test_packet.h"
 
 #include <gui/gui.h>
+#include <assets_icons.h>
 #include <dialogs/dialogs.h>
 #include <gui/scene_manager.h>
 #include <notification/notification_messages.h>

+ 1 - 0
applications/main/u2f/u2f_app_i.h

@@ -4,6 +4,7 @@
 #include "scenes/u2f_scene.h"
 
 #include <gui/gui.h>
+#include <assets_icons.h>
 #include <gui/view_dispatcher.h>
 #include <gui/scene_manager.h>
 #include <gui/modules/submenu.h>

+ 1 - 0
applications/main/u2f/views/u2f_view.c

@@ -1,5 +1,6 @@
 #include "u2f_view.h"
 #include <gui/elements.h>
+#include <assets_icons.h>
 
 struct U2fView {
     View* view;

BIN
applications/plugins/bt_hid_app/assets/ButtonDown_7x4.png


BIN
applications/plugins/bt_hid_app/assets/ButtonLeft_4x7.png


BIN
applications/plugins/bt_hid_app/assets/ButtonRight_4x7.png


BIN
applications/plugins/bt_hid_app/assets/ButtonUp_7x4.png


BIN
applications/plugins/bt_hid_app/assets/Ok_btn_9x9.png


BIN
applications/plugins/bt_hid_app/assets/Pin_arrow_down_7x9.png


BIN
applications/plugins/bt_hid_app/assets/Pin_arrow_left_9x7.png


BIN
applications/plugins/bt_hid_app/assets/Pin_arrow_right_9x7.png


BIN
applications/plugins/bt_hid_app/assets/Pin_arrow_up_7x9.png


BIN
applications/plugins/bt_hid_app/assets/Pin_back_arrow_10x8.png


+ 2 - 1
applications/plugins/music_player/application.fam

@@ -11,8 +11,9 @@ App(
     provides=["music_player_start"],
     stack_size=2 * 1024,
     order=20,
-    fap_icon="../../../assets/icons/Archive/music_10px.png",
+    fap_icon="icons/music_10px.png",
     fap_category="Misc",
+    fap_icon_assets="icons",
 )
 
 App(

BIN
applications/plugins/music_player/icons/music_10px.png


+ 1 - 1
applications/plugins/music_player/music_player.c

@@ -3,7 +3,7 @@
 #include <furi.h>
 #include <furi_hal.h>
 
-#include <assets_icons.h>
+#include <music_player_icons.h>
 #include <gui/gui.h>
 #include <dialogs/dialogs.h>
 #include <storage/storage.h>

+ 1 - 0
applications/plugins/picopass/application.fam

@@ -17,4 +17,5 @@ App(
             name="loclass",
         ),
     ],
+    fap_icon_assets="icons",
 )

BIN
applications/plugins/picopass/icons/DolphinMafia_115x62.png


BIN
applications/plugins/picopass/icons/DolphinNice_96x59.png


BIN
applications/plugins/picopass/icons/Nfc_10px.png


BIN
applications/plugins/picopass/icons/RFIDDolphinReceive_97x61.png


BIN
applications/plugins/picopass/icons/RFIDDolphinSend_97x61.png


+ 1 - 0
applications/plugins/picopass/picopass_device.c

@@ -2,6 +2,7 @@
 
 #include <toolbox/path.h>
 #include <flipper_format/flipper_format.h>
+#include <picopass_icons.h>
 
 #define TAG "PicopassDevice"
 

+ 1 - 0
applications/plugins/picopass/picopass_i.h

@@ -24,6 +24,7 @@
 
 #include <storage/storage.h>
 #include <lib/toolbox/path.h>
+#include <picopass_icons.h>
 
 #define PICOPASS_TEXT_STORE_SIZE 128
 

+ 1 - 0
applications/plugins/signal_generator/application.fam

@@ -9,4 +9,5 @@ App(
     order=50,
     fap_icon="signal_gen_10px.png",
     fap_category="Tools",
+    fap_icon_assets="icons",
 )

BIN
applications/plugins/signal_generator/icons/SmallArrowDown_3x5.png


BIN
applications/plugins/signal_generator/icons/SmallArrowUp_3x5.png


+ 1 - 0
applications/plugins/signal_generator/views/signal_gen_pwm.c

@@ -1,6 +1,7 @@
 #include "../signal_gen_app_i.h"
 #include "furi_hal.h"
 #include <gui/elements.h>
+#include <signal_generator_icons.h>
 
 typedef enum {
     LineIndexChannel,

BIN
applications/plugins/weather_station/images/Lock_7x8.png


BIN
applications/plugins/weather_station/images/Pin_back_arrow_10x8.png


BIN
applications/plugins/weather_station/images/Quest_7x8.png


BIN
applications/plugins/weather_station/images/Scanning_123x52.png


BIN
applications/plugins/weather_station/images/Unlock_7x8.png


BIN
applications/plugins/weather_station/images/WarningDolphin_45x42.png


+ 1 - 2
applications/plugins/weather_station/views/weather_station_receiver.c

@@ -1,11 +1,10 @@
 #include "weather_station_receiver.h"
 #include "../weather_station_app_i.h"
-#include "weather_station_icons.h"
+#include <weather_station_icons.h>
 #include <math.h>
 
 #include <input/input.h>
 #include <gui/elements.h>
-#include <assets_icons.h>
 #include <m-array.h>
 
 #define FRAME_HEIGHT 12

+ 1 - 0
applications/services/bt/bt_service/bt.c

@@ -4,6 +4,7 @@
 
 #include <notification/notification_messages.h>
 #include <gui/elements.h>
+#include <assets_icons.h>
 
 #define TAG "BtSrv"
 

+ 1 - 0
applications/services/desktop/views/desktop_view_lock_menu.c

@@ -1,5 +1,6 @@
 #include <furi.h>
 #include <gui/elements.h>
+#include <assets_icons.h>
 
 #include "../desktop_i.h"
 #include "desktop_view_lock_menu.h"

+ 1 - 0
applications/services/desktop/views/desktop_view_locked.c

@@ -4,6 +4,7 @@
 #include <gui/elements.h>
 #include <gui/icon.h>
 #include <gui/view.h>
+#include <assets_icons.h>
 #include <portmacro.h>
 
 #include <desktop/desktop_settings.h>

+ 1 - 0
applications/services/desktop/views/desktop_view_pin_input.c

@@ -2,6 +2,7 @@
 #include <furi.h>
 #include <gui/view.h>
 #include <gui/elements.h>
+#include <assets_icons.h>
 #include <stdint.h>
 #include <portmacro.h>
 

+ 1 - 0
applications/services/dialogs/dialogs_api.c

@@ -1,6 +1,7 @@
 #include "dialogs/dialogs_message.h"
 #include "dialogs_i.h"
 #include "dialogs_api_lock.h"
+#include <assets_icons.h>
 
 /****************** File browser ******************/
 

+ 1 - 1
applications/services/gui/canvas.h

@@ -7,7 +7,7 @@
 
 #include <stdint.h>
 #include <gui/icon_animation.h>
-#include <assets_icons.h>
+#include <gui/icon.h>
 
 #ifdef __cplusplus
 extern "C" {

+ 1 - 0
applications/services/gui/gui.c

@@ -1,5 +1,6 @@
 #include "gui/canvas.h"
 #include "gui_i.h"
+#include <assets_icons.h>
 
 #define TAG "GuiSrv"
 

+ 1 - 1
applications/services/gui/icon_animation.h

@@ -7,7 +7,7 @@
 
 #include <stdint.h>
 #include <stdbool.h>
-#include <assets_icons.h>
+#include <gui/icon.h>
 
 #ifdef __cplusplus
 extern "C" {

+ 1 - 0
applications/services/gui/modules/button_menu.c

@@ -5,6 +5,7 @@
 #include <m-array.h>
 #include <furi.h>
 #include <stdint.h>
+#include <assets_icons.h>
 
 #define ITEM_FIRST_OFFSET 17
 #define ITEM_NEXT_OFFSET 4

+ 3 - 2
applications/services/gui/modules/byte_input.c

@@ -1,6 +1,7 @@
-#include "byte_input.h"
-#include <gui/elements.h>
 #include <furi.h>
+#include <gui/elements.h>
+#include <assets_icons.h>
+#include "byte_input.h"
 
 struct ByteInput {
     View* view;

+ 1 - 0
applications/services/gui/modules/menu.c

@@ -2,6 +2,7 @@
 
 #include <m-array.h>
 #include <gui/elements.h>
+#include <assets_icons.h>
 #include <furi.h>
 
 struct Menu {

+ 1 - 0
applications/services/gui/modules/text_input.c

@@ -1,5 +1,6 @@
 #include "text_input.h"
 #include <gui/elements.h>
+#include <assets_icons.h>
 #include <furi.h>
 
 struct TextInput {

+ 1 - 0
applications/services/power/power_service/power_i.h

@@ -5,6 +5,7 @@
 #include <stdint.h>
 #include <gui/view_dispatcher.h>
 #include <gui/gui.h>
+#include <assets_icons.h>
 
 #include <gui/modules/popup.h>
 #include "views/power_off.h"

+ 1 - 0
applications/services/power/power_service/views/power_off.c

@@ -1,6 +1,7 @@
 #include "power_off.h"
 #include <furi.h>
 #include <gui/elements.h>
+#include <assets_icons.h>
 
 struct PowerOff {
     View* view;

+ 1 - 0
applications/services/power/power_service/views/power_unplug_usb.c

@@ -1,6 +1,7 @@
 #include "power_unplug_usb.h"
 #include <furi.h>
 #include <gui/elements.h>
+#include <assets_icons.h>
 
 struct PowerUnplugUsb {
     View* view;

+ 1 - 0
applications/services/storage/storage.c

@@ -5,6 +5,7 @@
 #include "storage/storage_glue.h"
 #include "storages/storage_int.h"
 #include "storages/storage_ext.h"
+#include <assets_icons.h>
 
 #define STORAGE_TICK 1000
 

+ 1 - 0
applications/settings/about/about.c

@@ -3,6 +3,7 @@
 #include <gui/gui.h>
 #include <gui/view_dispatcher.h>
 #include <gui/modules/empty_screen.h>
+#include <assets_icons.h>
 #include <furi_hal_version.h>
 #include <furi_hal_region.h>
 #include <furi_hal_bt.h>

+ 1 - 0
applications/settings/bt_settings_app/bt_settings_app.h

@@ -6,6 +6,7 @@
 #include <gui/view.h>
 #include <gui/view_dispatcher.h>
 #include <gui/scene_manager.h>
+#include <assets_icons.h>
 
 #include <gui/modules/variable_item_list.h>
 #include <gui/modules/dialog_ex.h>

+ 1 - 0
applications/settings/desktop_settings/desktop_settings_app.h

@@ -7,6 +7,7 @@
 #include <gui/modules/submenu.h>
 #include <gui/modules/variable_item_list.h>
 #include <dialogs/dialogs.h>
+#include <assets_icons.h>
 
 #include <desktop/desktop_settings.h>
 #include <desktop/views/desktop_view_pin_input.h>

+ 1 - 0
applications/settings/power_settings_app/power_settings_app.h

@@ -6,6 +6,7 @@
 #include <gui/view.h>
 #include <gui/view_dispatcher.h>
 #include <gui/scene_manager.h>
+#include <assets_icons.h>
 
 #include "views/battery_info.h"
 #include <gui/modules/submenu.h>

+ 1 - 0
applications/settings/power_settings_app/views/battery_info.c

@@ -1,6 +1,7 @@
 #include "battery_info.h"
 #include <furi.h>
 #include <gui/elements.h>
+#include <assets_icons.h>
 
 struct BatteryInfo {
     View* view;

+ 1 - 0
applications/settings/storage_settings/storage_settings.h

@@ -4,6 +4,7 @@
 #include <gui/view.h>
 #include <gui/view_dispatcher.h>
 #include <gui/scene_manager.h>
+#include <assets_icons.h>
 #include <notification/notification_messages.h>
 
 #include <gui/modules/submenu.h>

+ 1 - 0
applications/system/updater/views/updater_main.c

@@ -2,6 +2,7 @@
 #include <gui/view.h>
 #include <gui/elements.h>
 #include <gui/canvas.h>
+#include <assets_icons.h>
 #include <furi.h>
 #include <input/input.h>
 

+ 1 - 185
firmware/targets/f7/api_symbols.csv

@@ -1,5 +1,5 @@
 entry,status,name,type,params
-Version,+,6.0,,
+Version,+,7.0,,
 Header,+,applications/services/bt/bt_service/bt.h,,
 Header,+,applications/services/cli/cli.h,,
 Header,+,applications/services/cli/cli_vcp.h,,
@@ -2661,191 +2661,7 @@ Function,-,yn,double,"int, double"
 Function,-,ynf,float,"int, float"
 Variable,-,AHBPrescTable,const uint32_t[16],
 Variable,-,APBPrescTable,const uint32_t[8],
-Variable,+,A_125khz_14,const Icon,
-Variable,+,A_BadUsb_14,const Icon,
-Variable,+,A_Debug_14,const Icon,
-Variable,+,A_FileManager_14,const Icon,
-Variable,+,A_GPIO_14,const Icon,
-Variable,+,A_Infrared_14,const Icon,
-Variable,+,A_Levelup1_128x64,const Icon,
-Variable,+,A_Levelup2_128x64,const Icon,
-Variable,+,A_Loading_24,const Icon,
-Variable,+,A_NFC_14,const Icon,
-Variable,+,A_Plugins_14,const Icon,
-Variable,+,A_Round_loader_8x8,const Icon,
-Variable,+,A_Settings_14,const Icon,
-Variable,+,A_Sub1ghz_14,const Icon,
-Variable,+,A_U2F_14,const Icon,
-Variable,+,A_iButton_14,const Icon,
 Variable,-,ITM_RxBuffer,volatile int32_t,
-Variable,+,I_125_10px,const Icon,
-Variable,+,I_ActiveConnection_50x64,const Icon,
-Variable,+,I_Alert_9x8,const Icon,
-Variable,+,I_ArrowC_1_36x36,const Icon,
-Variable,+,I_ArrowDownEmpty_14x15,const Icon,
-Variable,+,I_ArrowDownFilled_14x15,const Icon,
-Variable,+,I_ArrowUpEmpty_14x15,const Icon,
-Variable,+,I_ArrowUpFilled_14x15,const Icon,
-Variable,+,I_Attention_5x8,const Icon,
-Variable,+,I_Auth_62x31,const Icon,
-Variable,+,I_BLE_Pairing_128x64,const Icon,
-Variable,+,I_Background_128x11,const Icon,
-Variable,+,I_BatteryBody_52x28,const Icon,
-Variable,+,I_Battery_16x16,const Icon,
-Variable,+,I_Battery_26x8,const Icon,
-Variable,+,I_Ble_connected_15x15,const Icon,
-Variable,+,I_Ble_disconnected_15x15,const Icon,
-Variable,+,I_Bluetooth_Connected_16x8,const Icon,
-Variable,+,I_Bluetooth_Idle_5x8,const Icon,
-Variable,+,I_ButtonCenter_7x7,const Icon,
-Variable,+,I_ButtonDown_7x4,const Icon,
-Variable,+,I_ButtonLeftSmall_3x5,const Icon,
-Variable,+,I_ButtonLeft_4x7,const Icon,
-Variable,+,I_ButtonRightSmall_3x5,const Icon,
-Variable,+,I_ButtonRight_4x7,const Icon,
-Variable,+,I_ButtonUp_7x4,const Icon,
-Variable,+,I_Button_18x18,const Icon,
-Variable,+,I_Certification1_103x56,const Icon,
-Variable,+,I_Certification2_98x33,const Icon,
-Variable,+,I_Charging_lightning_9x10,const Icon,
-Variable,+,I_Charging_lightning_mask_9x10,const Icon,
-Variable,+,I_Circles_47x47,const Icon,
-Variable,+,I_Clock_18x18,const Icon,
-Variable,+,I_Connect_me_62x31,const Icon,
-Variable,+,I_Connected_62x31,const Icon,
-Variable,+,I_CoolHi_25x27,const Icon,
-Variable,+,I_CoolHi_hvr_25x27,const Icon,
-Variable,+,I_CoolLo_25x27,const Icon,
-Variable,+,I_CoolLo_hvr_25x27,const Icon,
-Variable,+,I_Cry_dolph_55x52,const Icon,
-Variable,+,I_DFU_128x50,const Icon,
-Variable,+,I_Dehumidify_25x27,const Icon,
-Variable,+,I_Dehumidify_hvr_25x27,const Icon,
-Variable,+,I_Detailed_chip_17x13,const Icon,
-Variable,+,I_DolphinCommon_56x48,const Icon,
-Variable,+,I_DolphinMafia_115x62,const Icon,
-Variable,+,I_DolphinNice_96x59,const Icon,
-Variable,+,I_DolphinReadingSuccess_59x63,const Icon,
-Variable,+,I_DolphinWait_61x59,const Icon,
-Variable,+,I_DoorLeft_70x55,const Icon,
-Variable,+,I_DoorRight_70x55,const Icon,
-Variable,+,I_Down_25x27,const Icon,
-Variable,+,I_Down_hvr_25x27,const Icon,
-Variable,+,I_Drive_112x35,const Icon,
-Variable,+,I_Error_18x18,const Icon,
-Variable,+,I_Error_62x31,const Icon,
-Variable,+,I_EviSmile1_18x21,const Icon,
-Variable,+,I_EviSmile2_18x21,const Icon,
-Variable,+,I_EviWaiting1_18x21,const Icon,
-Variable,+,I_EviWaiting2_18x21,const Icon,
-Variable,+,I_FaceCharging_29x14,const Icon,
-Variable,+,I_FaceConfused_29x14,const Icon,
-Variable,+,I_FaceNopower_29x14,const Icon,
-Variable,+,I_FaceNormal_29x14,const Icon,
-Variable,+,I_GameMode_11x8,const Icon,
-Variable,+,I_Health_16x16,const Icon,
-Variable,+,I_HeatHi_25x27,const Icon,
-Variable,+,I_HeatHi_hvr_25x27,const Icon,
-Variable,+,I_HeatLo_25x27,const Icon,
-Variable,+,I_HeatLo_hvr_25x27,const Icon,
-Variable,+,I_Hidden_window_9x8,const Icon,
-Variable,+,I_InfraredArrowDown_4x8,const Icon,
-Variable,+,I_InfraredArrowUp_4x8,const Icon,
-Variable,+,I_InfraredLearnShort_128x31,const Icon,
-Variable,+,I_KeyBackspaceSelected_16x9,const Icon,
-Variable,+,I_KeyBackspace_16x9,const Icon,
-Variable,+,I_KeySaveSelected_24x11,const Icon,
-Variable,+,I_KeySave_24x11,const Icon,
-Variable,+,I_Keychain_39x36,const Icon,
-Variable,+,I_Left_mouse_icon_9x9,const Icon,
-Variable,+,I_Lock_7x8,const Icon,
-Variable,+,I_Lock_8x8,const Icon,
-Variable,+,I_MHz_25x11,const Icon,
-Variable,+,I_Medium_chip_22x21,const Icon,
-Variable,+,I_Modern_reader_18x34,const Icon,
-Variable,+,I_Move_flipper_26x39,const Icon,
-Variable,+,I_Mute_25x27,const Icon,
-Variable,+,I_Mute_hvr_25x27,const Icon,
-Variable,+,I_NFC_manual_60x50,const Icon,
-Variable,+,I_Nfc_10px,const Icon,
-Variable,+,I_Off_25x27,const Icon,
-Variable,+,I_Off_hvr_25x27,const Icon,
-Variable,+,I_Ok_btn_9x9,const Icon,
-Variable,+,I_Ok_btn_pressed_13x13,const Icon,
-Variable,+,I_Percent_10x14,const Icon,
-Variable,+,I_Pin_arrow_down_7x9,const Icon,
-Variable,+,I_Pin_arrow_left_9x7,const Icon,
-Variable,+,I_Pin_arrow_right_9x7,const Icon,
-Variable,+,I_Pin_arrow_up_7x9,const Icon,
-Variable,+,I_Pin_attention_dpad_29x29,const Icon,
-Variable,+,I_Pin_back_arrow_10x8,const Icon,
-Variable,+,I_Pin_back_full_40x8,const Icon,
-Variable,+,I_Pin_pointer_5x3,const Icon,
-Variable,+,I_Pin_star_7x7,const Icon,
-Variable,+,I_Power_25x27,const Icon,
-Variable,+,I_Power_hvr_25x27,const Icon,
-Variable,+,I_Pressed_Button_13x13,const Icon,
-Variable,+,I_Quest_7x8,const Icon,
-Variable,+,I_RFIDBigChip_37x36,const Icon,
-Variable,+,I_RFIDDolphinReceive_97x61,const Icon,
-Variable,+,I_RFIDDolphinSend_97x61,const Icon,
-Variable,+,I_RFIDDolphinSuccess_108x57,const Icon,
-Variable,+,I_Reader_detect_43x40,const Icon,
-Variable,+,I_Release_arrow_18x15,const Icon,
-Variable,+,I_Restoring_38x32,const Icon,
-Variable,+,I_Right_mouse_icon_9x9,const Icon,
-Variable,+,I_SDQuestion_35x43,const Icon,
-Variable,+,I_SDcardFail_11x8,const Icon,
-Variable,+,I_SDcardMounted_11x8,const Icon,
-Variable,+,I_Scanning_123x52,const Icon,
-Variable,+,I_SmallArrowDown_3x5,const Icon,
-Variable,+,I_SmallArrowDown_4x7,const Icon,
-Variable,+,I_SmallArrowUp_3x5,const Icon,
-Variable,+,I_SmallArrowUp_4x7,const Icon,
-Variable,+,I_Smile_18x18,const Icon,
-Variable,+,I_Space_65x18,const Icon,
-Variable,+,I_Tap_reader_36x38,const Icon,
-Variable,+,I_Temperature_16x16,const Icon,
-Variable,+,I_Unlock_7x8,const Icon,
-Variable,+,I_Unplug_bg_bottom_128x10,const Icon,
-Variable,+,I_Unplug_bg_top_128x14,const Icon,
-Variable,+,I_Up_25x27,const Icon,
-Variable,+,I_Up_hvr_25x27,const Icon,
-Variable,+,I_Updating_32x40,const Icon,
-Variable,+,I_UsbTree_48x22,const Icon,
-Variable,+,I_Vol_down_25x27,const Icon,
-Variable,+,I_Vol_down_hvr_25x27,const Icon,
-Variable,+,I_Vol_up_25x27,const Icon,
-Variable,+,I_Vol_up_hvr_25x27,const Icon,
-Variable,+,I_Voldwn_6x6,const Icon,
-Variable,+,I_Voltage_16x16,const Icon,
-Variable,+,I_Volup_8x6,const Icon,
-Variable,+,I_WarningDolphin_45x42,const Icon,
-Variable,+,I_Warning_30x23,const Icon,
-Variable,+,I_back_10px,const Icon,
-Variable,+,I_badusb_10px,const Icon,
-Variable,+,I_dir_10px,const Icon,
-Variable,+,I_iButtonDolphinVerySuccess_108x52,const Icon,
-Variable,+,I_iButtonKey_49x44,const Icon,
-Variable,+,I_ibutt_10px,const Icon,
-Variable,+,I_ir_10px,const Icon,
-Variable,+,I_loading_10px,const Icon,
-Variable,+,I_music_10px,const Icon,
-Variable,+,I_passport_bad1_46x49,const Icon,
-Variable,+,I_passport_bad2_46x49,const Icon,
-Variable,+,I_passport_bad3_46x49,const Icon,
-Variable,+,I_passport_bottom_128x18,const Icon,
-Variable,+,I_passport_happy1_46x49,const Icon,
-Variable,+,I_passport_happy2_46x49,const Icon,
-Variable,+,I_passport_happy3_46x49,const Icon,
-Variable,+,I_passport_left_6x46,const Icon,
-Variable,+,I_passport_okay1_46x49,const Icon,
-Variable,+,I_passport_okay2_46x49,const Icon,
-Variable,+,I_passport_okay3_46x49,const Icon,
-Variable,+,I_sub1_10px,const Icon,
-Variable,+,I_u2f_10px,const Icon,
-Variable,+,I_unknown_10px,const Icon,
-Variable,+,I_update_10px,const Icon,
 Variable,-,MSIRangeTable,const uint32_t[16],
 Variable,-,SmpsPrescalerTable,const uint32_t[4][6],
 Variable,+,SystemCoreClock,uint32_t,