brainfuck_scene_file_select.c 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. #include "../brainfuck_i.h"
  2. void brainfuck_scene_file_select_on_enter(void* context) {
  3. BFApp* app = context;
  4. DialogsApp* dialogs = furi_record_open("dialogs");
  5. FuriString* path;
  6. path = furi_string_alloc();
  7. furi_string_set(path, STORAGE_APP_DATA_PATH_PREFIX);
  8. DialogsFileBrowserOptions browser_options;
  9. dialog_file_browser_set_basic_options(&browser_options, ".b", &I_bfico);
  10. browser_options.base_path = STORAGE_APP_DATA_PATH_PREFIX;
  11. browser_options.hide_ext = false;
  12. bool selected = dialog_file_browser_show(dialogs, path, path, &browser_options);
  13. if(selected) {
  14. furi_string_set(app->BF_file_path, path);
  15. scene_manager_next_scene(app->scene_manager, brainfuckSceneDevEnv);
  16. } else {
  17. scene_manager_search_and_switch_to_previous_scene(app->scene_manager, brainfuckSceneStart);
  18. }
  19. }
  20. bool brainfuck_scene_file_select_on_event(void* context, SceneManagerEvent event) {
  21. UNUSED(context);
  22. UNUSED(event);
  23. return false;
  24. }
  25. void brainfuck_scene_file_select_on_exit(void* context) {
  26. UNUSED(context);
  27. }