From 0e3c9fc504339cd0200dbcea03b1bb10e6fc1d11 Mon Sep 17 00:00:00 2001 From: Henrik Friedrichsen Date: Tue, 26 Mar 2019 21:28:25 +0100 Subject: [PATCH] use constants for listview IDs and search edit --- src/commands.rs | 19 ++++++++++--------- src/ui/playlists.rs | 3 ++- src/ui/queue.rs | 7 +++---- src/ui/search.rs | 10 ++++++---- 4 files changed, 21 insertions(+), 18 deletions(-) diff --git a/src/commands.rs b/src/commands.rs index 3191859..10879bb 100644 --- a/src/commands.rs +++ b/src/commands.rs @@ -8,6 +8,7 @@ use playlists::{Playlist, Playlists}; use queue::{Queue, RepeatSetting}; use spotify::Spotify; use track::Track; +use ui; use ui::layout::Layout; use ui::listview::ListView; use ui::search::SearchView; @@ -156,13 +157,13 @@ impl CommandManager { if dir == "up" || dir == "down" { let dir = if dir == "up" { -1 } else { 1 }; - s.call_on_id("queue_list", |v: &mut ListView| { + s.call_on_id(ui::queue::LIST_ID, |v: &mut ListView| { v.move_focus(dir * amount); }); - s.call_on_id("list", |v: &mut ListView| { + s.call_on_id(ui::search::LIST_ID, |v: &mut ListView| { v.move_focus(dir * amount); }); - s.call_on_id("list", |v: &mut ListView| { + s.call_on_id(ui::playlists::LIST_ID, |v: &mut ListView| { v.move_focus(dir * amount); }); s.on_event(Event::Refresh); @@ -196,7 +197,7 @@ impl CommandManager { { let queue = queue.clone(); - s.call_on_id("list", |v: &mut ListView| { + s.call_on_id(ui::search::LIST_ID, |v: &mut ListView| { v.with_selected(Box::new(move |t| { queue.append(t); })); @@ -205,7 +206,7 @@ impl CommandManager { { let queue = queue.clone(); - s.call_on_id("list", |v: &mut ListView| { + s.call_on_id(ui::playlists::LIST_ID, |v: &mut ListView| { v.with_selected(Box::new(move |pl| { for track in pl.tracks.iter() { queue.append(track); @@ -236,14 +237,14 @@ impl CommandManager { { let queue = queue.clone(); - s.call_on_id("queue_list", |v: &mut ListView| { + s.call_on_id(ui::queue::LIST_ID, |v: &mut ListView| { queue.play(v.get_selected_index(), true); }); } { let queue = queue.clone(); - s.call_on_id("list", |v: &mut ListView| { + s.call_on_id(ui::search::LIST_ID, |v: &mut ListView| { v.with_selected(Box::new(move |t| { let index = queue.append_next(vec![t]); queue.play(index, true); @@ -253,7 +254,7 @@ impl CommandManager { { let queue = queue.clone(); - s.call_on_id("list", |v: &mut ListView| { + s.call_on_id(ui::playlists::LIST_ID, |v: &mut ListView| { v.with_selected(Box::new(move |pl| { let index = queue.append_next(pl.tracks.iter().collect()); queue.play(index, true); @@ -282,7 +283,7 @@ impl CommandManager { { let queue = queue.clone(); - s.call_on_id("queue_list", |v: &mut ListView| { + s.call_on_id(ui::queue::LIST_ID, |v: &mut ListView| { queue.remove(v.get_selected_index()); }); } diff --git a/src/ui/playlists.rs b/src/ui/playlists.rs index 451f6cc..753bc5b 100644 --- a/src/ui/playlists.rs +++ b/src/ui/playlists.rs @@ -12,9 +12,10 @@ pub struct PlaylistView { list: IdView>, } +pub const LIST_ID: &str = "playlist_list"; impl PlaylistView { pub fn new(playlists: &Playlists, queue: Arc) -> PlaylistView { - let list = ListView::new(playlists.store.clone(), queue).with_id("list"); + let list = ListView::new(playlists.store.clone(), queue).with_id(LIST_ID); PlaylistView { list } } diff --git a/src/ui/queue.rs b/src/ui/queue.rs index 335af9b..9f17a59 100644 --- a/src/ui/queue.rs +++ b/src/ui/queue.rs @@ -17,18 +17,17 @@ pub struct QueueView { playlists: Arc, } +pub const LIST_ID: &str = "queue_list"; impl QueueView { pub fn new(queue: Arc, playlists: Arc) -> QueueView { - let list = ListView::new(queue.queue.clone(), queue.clone()).with_id("queue_list"); + let list = ListView::new(queue.queue.clone(), queue.clone()).with_id(LIST_ID); QueueView { list, playlists } } fn save_dialog_cb(s: &mut Cursive, playlists: Arc, id: Option) { let tracks = s - .call_on_id("queue_list", |view: &mut ListView<_>| { - view.content().clone() - }) + .call_on_id(LIST_ID, |view: &mut ListView<_>| view.content().clone()) .unwrap(); match id { Some(id) => { diff --git a/src/ui/search.rs b/src/ui/search.rs index 0df6d82..8502bd7 100644 --- a/src/ui/search.rs +++ b/src/ui/search.rs @@ -21,6 +21,8 @@ pub struct SearchView { edit_focused: bool, } +pub const LIST_ID: &str = "search_list"; +pub const EDIT_ID: &str = "search_edit"; impl SearchView { pub fn new(spotify: Arc, queue: Arc) -> SearchView { let results = Arc::new(RwLock::new(Vec::new())); @@ -30,12 +32,12 @@ impl SearchView { if !input.is_empty() { s.call_on_id("search", |v: &mut SearchView| { v.run_search(input, spotify.clone()); - v.focus_view(&Selector::Id("list")).unwrap(); + v.focus_view(&Selector::Id(LIST_ID)).unwrap(); }); } }) - .with_id("search_edit"); - let list = ListView::new(results.clone(), queue).with_id("list"); + .with_id(EDIT_ID); + let list = ListView::new(results.clone(), queue).with_id(LIST_ID); SearchView { results, @@ -49,7 +51,7 @@ impl SearchView { let query = query.into(); let q = query.clone(); self.edit - .call_on(&Selector::Id("search_edit"), |v: &mut EditView| { + .call_on(&Selector::Id(EDIT_ID), |v: &mut EditView| { v.set_content(q); });