hex_viewer_scene_info.c 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. #include "../hex_viewer.h"
  2. void hex_viewer_scene_info_on_enter(void* context) {
  3. furi_assert(context);
  4. HexViewer* app = context;
  5. FuriString* buffer;
  6. buffer = furi_string_alloc();
  7. furi_string_printf(
  8. buffer,
  9. "File path: %s\nFile size: %lu (0x%lX)",
  10. furi_string_get_cstr(app->file_path),
  11. app->model->file_size,
  12. app->model->file_size);
  13. DialogMessage* message = dialog_message_alloc();
  14. dialog_message_set_header(message, "Hex Viewer v2.0", 16, 2, AlignLeft, AlignTop);
  15. dialog_message_set_icon(message, &I_hex_10px, 3, 2);
  16. dialog_message_set_text(message, furi_string_get_cstr(buffer), 3, 16, AlignLeft, AlignTop);
  17. dialog_message_set_buttons(message, NULL, NULL, "Back");
  18. dialog_message_show(app->dialogs, message);
  19. furi_string_free(buffer);
  20. dialog_message_free(message);
  21. scene_manager_search_and_switch_to_previous_scene(
  22. app->scene_manager, HexViewerViewIdStartscreen);
  23. }
  24. bool hex_viewer_scene_info_on_event(void* context, SceneManagerEvent event) {
  25. HexViewer* app = context;
  26. UNUSED(app);
  27. UNUSED(event);
  28. bool consumed = true;
  29. return consumed;
  30. }
  31. void hex_viewer_scene_info_on_exit(void* context) {
  32. HexViewer* app = context;
  33. UNUSED(app);
  34. }