Restore playlist deletion
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
use std::sync::Arc;
|
||||
|
||||
use cursive::view::ViewWrapper;
|
||||
use cursive::views::Dialog;
|
||||
use cursive::Cursive;
|
||||
|
||||
use commands::CommandResult;
|
||||
@@ -9,12 +8,11 @@ use library::Library;
|
||||
use queue::Queue;
|
||||
use traits::ViewExt;
|
||||
use ui::listview::ListView;
|
||||
use ui::modal::Modal;
|
||||
use ui::playlists::PlaylistsView;
|
||||
use ui::tabview::TabView;
|
||||
|
||||
pub struct LibraryView {
|
||||
list: TabView,
|
||||
library: Arc<Library>,
|
||||
tabs: TabView,
|
||||
}
|
||||
|
||||
impl LibraryView {
|
||||
@@ -23,41 +21,16 @@ impl LibraryView {
|
||||
.tab("tracks", "Tracks", ListView::new(library.tracks.clone(), queue.clone()))
|
||||
.tab("albums", "Albums", ListView::new(library.albums.clone(), queue.clone()))
|
||||
.tab("artists", "Artists", ListView::new(library.artists.clone(), queue.clone()))
|
||||
.tab("playlists", "Playlists", ListView::new(library.playlists.clone(), queue.clone()));
|
||||
.tab("playlists", "Playlists", PlaylistsView::new(queue.clone(), library.clone()));
|
||||
|
||||
Self {
|
||||
list: tabs,
|
||||
library,
|
||||
tabs
|
||||
}
|
||||
}
|
||||
|
||||
pub fn delete_dialog(&mut self) -> Option<Modal<Dialog>> {
|
||||
return None;
|
||||
|
||||
// TODO
|
||||
//let store = self.library.items();
|
||||
//let current = store.get(self.list.get_selected_index());
|
||||
|
||||
//if let Some(playlist) = current {
|
||||
// let library = self.library.clone();
|
||||
// let id = playlist.id.clone();
|
||||
// let dialog = Dialog::text("Are you sure you want to delete this playlist?")
|
||||
// .padding((1, 1, 1, 0))
|
||||
// .title("Delete playlist")
|
||||
// .dismiss_button("No")
|
||||
// .button("Yes", move |s: &mut Cursive| {
|
||||
// library.delete_playlist(&id);
|
||||
// s.pop_layer();
|
||||
// });
|
||||
// Some(Modal::new(dialog))
|
||||
//} else {
|
||||
// None
|
||||
//}
|
||||
}
|
||||
}
|
||||
|
||||
impl ViewWrapper for LibraryView {
|
||||
wrap_impl!(self.list: TabView);
|
||||
wrap_impl!(self.tabs: TabView);
|
||||
}
|
||||
|
||||
impl ViewExt for LibraryView {
|
||||
@@ -67,13 +40,6 @@ impl ViewExt for LibraryView {
|
||||
cmd: &str,
|
||||
args: &[String],
|
||||
) -> Result<CommandResult, String> {
|
||||
if cmd == "delete" {
|
||||
if let Some(dialog) = self.delete_dialog() {
|
||||
s.add_layer(dialog);
|
||||
}
|
||||
return Ok(CommandResult::Consumed(None));
|
||||
}
|
||||
|
||||
self.list.on_command(s, cmd, args)
|
||||
self.tabs.on_command(s, cmd, args)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user