0.1.63 upd
This commit is contained in:
parent
22eae1627a
commit
af6ec7a913
2
Cargo.lock
generated
2
Cargo.lock
generated
@ -90,7 +90,7 @@ checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674"
|
||||
|
||||
[[package]]
|
||||
name = "itunesdb"
|
||||
version = "0.1.61"
|
||||
version = "0.1.63"
|
||||
dependencies = [
|
||||
"bincode",
|
||||
"env_logger",
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "itunesdb"
|
||||
version = "0.1.62"
|
||||
version = "0.1.63"
|
||||
edition = "2021"
|
||||
authors = ["alterwain"]
|
||||
|
||||
|
@ -272,6 +272,23 @@ impl XDatabase {
|
||||
tracks.push(track);
|
||||
}
|
||||
}
|
||||
|
||||
pub fn remove_track_from_playlist(&mut self, track_id: u32, pl_id: u64) {
|
||||
self.remove_track_from_playlist_(track_id, pl_id, 2);
|
||||
self.remove_track_from_playlist_(track_id, pl_id, 3);
|
||||
}
|
||||
|
||||
fn remove_track_from_playlist_(&mut self, track_id: u32, pl_id: u64, n: u32) {
|
||||
if let XSomeList::Playlists(playlists ) = &mut self.find_dataset(n).child {
|
||||
let playlist = playlists.iter_mut().find(|t| t.data.is_master_playlist_flag != 0);
|
||||
if playlist.is_none() { return; }
|
||||
let playlist = playlist.unwrap();
|
||||
let mut s = playlist.elems.len();
|
||||
playlist.elems.retain_mut(|t| t.0.track_id == track_id);
|
||||
s -= playlist.elems.len();
|
||||
playlist.data.playlist_item_count -= (s as u32);
|
||||
}
|
||||
}
|
||||
|
||||
fn add_track_to_playlists(&mut self, n: u32, track: &XTrackItem) {
|
||||
if let XSomeList::Playlists(playlists) = &mut self.find_dataset(n).child {
|
||||
|
Loading…
x
Reference in New Issue
Block a user