From 955532893fc6db5a78f88ef2a2700dec56cd3012 Mon Sep 17 00:00:00 2001 From: krolxon Date: Wed, 1 May 2024 12:08:56 +0530 Subject: [PATCH] remove queue struct, and use generics of ContentList --- src/app.rs | 11 +++++------ src/lib.rs | 3 --- src/queue.rs | 41 ----------------------------------------- src/ui.rs | 6 +++--- 4 files changed, 8 insertions(+), 53 deletions(-) delete mode 100755 src/queue.rs diff --git a/src/app.rs b/src/app.rs index d487e05..f0b51f2 100755 --- a/src/app.rs +++ b/src/app.rs @@ -3,7 +3,6 @@ use std::time::Duration; use crate::browser::FileBrowser; use crate::connection::Connection; use crate::list::ContentList; -use crate::queue::Queue; use crate::ui::InputMode; use mpd::{Client, Song}; @@ -16,10 +15,10 @@ pub struct App { /// check if app is running pub running: bool, pub conn: Connection, - pub browser: FileBrowser, // Directory browser - pub queue_list: Queue, // Stores the current playing queue - pub pl_list: ContentList, // Stores list of playlists - pub selected_tab: SelectedTab, // Used to switch between tabs + pub browser: FileBrowser, // Directory browser + pub queue_list: ContentList, // Stores the current playing queue + pub pl_list: ContentList, // Stores list of playlists + pub selected_tab: SelectedTab, // Used to switch between tabs // Search pub inputmode: InputMode, // Defines input mode, Normal or Search @@ -44,7 +43,7 @@ pub enum SelectedTab { impl App { pub fn builder(addrs: &str) -> AppResult { let mut conn = Connection::new(addrs).unwrap(); - let mut queue_list = Queue::new(); + let mut queue_list = ContentList::new(); let mut pl_list = ContentList::new(); pl_list.list = Self::get_playlist(&mut conn.conn)?; diff --git a/src/lib.rs b/src/lib.rs index 610eeea..71a2e93 100755 --- a/src/lib.rs +++ b/src/lib.rs @@ -24,6 +24,3 @@ pub mod handler; /// Application pub mod app; - -/// The Queue structure -pub mod queue; diff --git a/src/queue.rs b/src/queue.rs deleted file mode 100755 index 712bc2f..0000000 --- a/src/queue.rs +++ /dev/null @@ -1,41 +0,0 @@ -use mpd::Song; - -#[derive(Debug)] -pub struct Queue { - pub list: Vec, - pub index: usize, -} - -impl Queue { - pub fn new() -> Self { - Queue { - list: Vec::new(), - index: 0, - } - } - - // Go to next item in list - pub fn next(&mut self) { - let len = self.list.len(); - if len != 0 && self.index < len - 1 { - self.index += 1; - } - } - - /// Go to previous item in list - pub fn prev(&mut self) { - if self.index != 0 { - self.index -= 1; - } - } - - pub fn reset_index(&mut self) { - self.index = 0; - } -} - -impl Default for Queue { - fn default() -> Self { - Self::new() - } -} diff --git a/src/ui.rs b/src/ui.rs index 6f9b0a0..6f2b392 100755 --- a/src/ui.rs +++ b/src/ui.rs @@ -362,9 +362,9 @@ fn draw_playlist_viewer(frame: &mut Frame, app: &mut App, area: Rect) { let table = Table::new( rows, vec![ - Constraint::Min(40), - Constraint::Percentage(40), - Constraint::Percentage(20), + Constraint::Min(48), + Constraint::Percentage(48), + Constraint::Percentage(4), ], ) .block(title)