aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorkrolxon <krolyxon@tutanota.com>2024-05-01 12:08:56 +0530
committerkrolxon <krolyxon@tutanota.com>2024-05-01 12:08:56 +0530
commit955532893fc6db5a78f88ef2a2700dec56cd3012 (patch)
tree452e05bd0c8aa959c824ba49655ecc7c37c1b327 /src
parentb29846fb72326dc04bc13fe11d07965879787533 (diff)
remove queue struct, and use generics of ContentList
Diffstat (limited to 'src')
-rwxr-xr-xsrc/app.rs11
-rwxr-xr-xsrc/lib.rs3
-rwxr-xr-xsrc/queue.rs41
-rwxr-xr-xsrc/ui.rs6
4 files changed, 8 insertions, 53 deletions
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<String>, // Stores list of playlists
- pub selected_tab: SelectedTab, // Used to switch between tabs
+ pub browser: FileBrowser, // Directory browser
+ pub queue_list: ContentList<Song>, // Stores the current playing queue
+ pub pl_list: ContentList<String>, // 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<Self> {
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<Song>,
- 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)