file_edit.c 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. #include "nfc_playlist.h"
  2. #include "scences/file_edit.h"
  3. typedef enum {
  4. NfcPlaylistMenuSelection_DeletePlaylist,
  5. NfcPlaylistMenuSelection_RenamePlaylist
  6. } NfcPlaylistMenuSelection;
  7. void nfc_playlist_file_edit_menu_callback(void* context, uint32_t index) {
  8. NfcPlaylist* nfc_playlist = context;
  9. switch(index) {
  10. case NfcPlaylistMenuSelection_DeletePlaylist: {
  11. scene_manager_next_scene(nfc_playlist->scene_manager, NfcPlaylistScene_ConfirmDelete);
  12. break;
  13. }
  14. case NfcPlaylistMenuSelection_RenamePlaylist: {
  15. scene_manager_next_scene(nfc_playlist->scene_manager, NfcPlaylistScene_FileRename);
  16. break;
  17. }
  18. default:
  19. break;
  20. }
  21. }
  22. void nfc_playlist_file_edit_scene_on_enter(void* context) {
  23. NfcPlaylist* nfc_playlist = context;
  24. submenu_set_header(nfc_playlist->submenu, "Edit Playlist");
  25. submenu_add_lockable_item(
  26. nfc_playlist->submenu,
  27. "Delete Playlist",
  28. NfcPlaylistMenuSelection_DeletePlaylist,
  29. nfc_playlist_file_edit_menu_callback,
  30. nfc_playlist,
  31. !nfc_playlist->settings.file_selected_check,
  32. "No\nplaylist\nselected");
  33. submenu_add_lockable_item(
  34. nfc_playlist->submenu,
  35. "Rename Playlist",
  36. NfcPlaylistMenuSelection_RenamePlaylist,
  37. nfc_playlist_file_edit_menu_callback,
  38. nfc_playlist,
  39. !nfc_playlist->settings.file_selected_check,
  40. "No\nplaylist\nselected");
  41. view_dispatcher_switch_to_view(nfc_playlist->view_dispatcher, NfcPlaylistView_FileEdit);
  42. }
  43. bool nfc_playlist_file_edit_scene_on_event(void* context, SceneManagerEvent event) {
  44. UNUSED(event);
  45. UNUSED(context);
  46. return false;
  47. }
  48. void nfc_playlist_file_edit_scene_on_exit(void* context) {
  49. NfcPlaylist* nfc_playlist = context;
  50. submenu_reset(nfc_playlist->submenu);
  51. }