file_edit.c 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #include "nfc_playlist.h"
  2. #include "scences/file_edit.h"
  3. typedef enum {
  4. NfcPlaylistMenuSelection_DeletePlaylist
  5. } NfcPlaylistMenuSelection;
  6. void nfc_playlist_file_edit_menu_callback(void* context, uint32_t index) {
  7. NfcPlaylist* nfc_playlist = context;
  8. Storage* storage = furi_record_open(RECORD_STORAGE);
  9. switch(index) {
  10. case NfcPlaylistMenuSelection_DeletePlaylist: {
  11. storage_simply_remove(storage, furi_string_get_cstr(nfc_playlist->file_path));
  12. nfc_playlist->file_selected = false;
  13. nfc_playlist->file_selected_check = false;
  14. nfc_playlist->file_path = nfc_playlist->base_file_path;
  15. scene_manager_previous_scene(nfc_playlist->scene_manager);
  16. break;
  17. }
  18. default:
  19. break;
  20. }
  21. furi_record_close(RECORD_STORAGE);
  22. }
  23. void nfc_playlist_file_edit_scene_on_enter(void* context) {
  24. NfcPlaylist* nfc_playlist = context;
  25. submenu_set_header(nfc_playlist->submenu, "Edit Playlist");
  26. submenu_add_item(
  27. nfc_playlist->submenu,
  28. "Delete Playlist",
  29. NfcPlaylistMenuSelection_DeletePlaylist,
  30. nfc_playlist_file_edit_menu_callback,
  31. nfc_playlist);
  32. view_dispatcher_switch_to_view(nfc_playlist->view_dispatcher, NfcPlaylistView_FileEdit);
  33. }
  34. bool nfc_playlist_file_edit_scene_on_event(void* context, SceneManagerEvent event) {
  35. UNUSED(event);
  36. UNUSED(context);
  37. return false;
  38. }
  39. void nfc_playlist_file_edit_scene_on_exit(void* context) {
  40. NfcPlaylist* nfc_playlist = context;
  41. submenu_reset(nfc_playlist->submenu);
  42. }