curds: Move the PreviousPlaylist into special.py
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
This commit is contained in:
parent
9fdf837046
commit
7f2864ec07
|
@ -104,7 +104,7 @@ class Playlist(tree.ETree):
|
|||
if has == False:
|
||||
return
|
||||
|
||||
self.list.remove(track)
|
||||
self.list.pop(old)
|
||||
self.list.insert(new, track)
|
||||
self.sort_order.clear()
|
||||
|
||||
|
|
|
@ -1,24 +0,0 @@
|
|||
# Copyright 2019 (c) Anna Schumaker.
|
||||
from . import playlist
|
||||
from .. import notify
|
||||
|
||||
class PreviousPlaylist(playlist.Playlist):
|
||||
def __init__(self):
|
||||
playlist.Playlist.__init__(self, "Previous", "edit-undo", [ ], can_loop=False, can_random=False)
|
||||
|
||||
def __getstate__(self):
|
||||
state = playlist.Playlist.__getstate__(self)
|
||||
state["list"] = [ ]
|
||||
state["current"] = -1
|
||||
return state
|
||||
|
||||
def add(self, track):
|
||||
if track is not None:
|
||||
if self.contains(track):
|
||||
self.remove(track)
|
||||
self.list.insert(0, track)
|
||||
self.current = 0
|
||||
self.track_added(track, 0)
|
||||
|
||||
def sort(self, field):
|
||||
return False
|
|
@ -3,7 +3,6 @@ from . import artist
|
|||
from . import decade
|
||||
from . import genre
|
||||
from . import library
|
||||
from . import prev
|
||||
from . import special
|
||||
from . import user
|
||||
from .. import sort
|
||||
|
@ -17,7 +16,7 @@ class PlaylistRoot(tree.ETree):
|
|||
with self.tree_lock:
|
||||
self.__insert__(0, special.CollectionPlaylist())
|
||||
self.__insert__(1, special.UpNextPlaylist())
|
||||
self.__insert__(2, prev.PreviousPlaylist())
|
||||
self.__insert__(2, special.PreviousPlaylist())
|
||||
self.__insert__(3, user.UserNode())
|
||||
self.__insert__(4, artist.ArtistNode())
|
||||
self.__insert__(5, genre.GenreNode())
|
||||
|
|
|
@ -8,6 +8,9 @@ COLL_SORT = [ "artist", "date", "album", "discnumber", "tracknumber" ]
|
|||
NEXT_ICON = "edit-redo"
|
||||
NEXT_SORT = [ ]
|
||||
|
||||
PREV_ICON = "edit-undo"
|
||||
PREV_SORT = [ ]
|
||||
|
||||
|
||||
class CollectionPlaylist(playlist.Playlist):
|
||||
def __init__(self):
|
||||
|
@ -22,6 +25,29 @@ class CollectionPlaylist(playlist.Playlist):
|
|||
self.loop = True
|
||||
|
||||
|
||||
class PreviousPlaylist(playlist.Playlist):
|
||||
def __init__(self):
|
||||
playlist.Playlist.__init__(self, "Previous", PREV_ICON, PREV_SORT,
|
||||
can_loop=False, can_random=False)
|
||||
|
||||
def __getstate__(self):
|
||||
state = playlist.Playlist.__getstate__(self)
|
||||
state["list"] = [ ]
|
||||
state["current"] = -1
|
||||
return state
|
||||
|
||||
def add(self, track):
|
||||
if track is not None:
|
||||
self.remove(track)
|
||||
with self.plist_lock:
|
||||
self.list.insert(0, track)
|
||||
self.current = 0
|
||||
self.track_added(track, 0)
|
||||
|
||||
def sort(self, field):
|
||||
return False
|
||||
|
||||
|
||||
class UpNextPlaylist(playlist.Playlist):
|
||||
def __init__(self):
|
||||
playlist.Playlist.__init__(self, "Up Next", NEXT_ICON, NEXT_SORT, can_loop=False)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Copyright 2019 (c) Anna Schumaker.
|
||||
from . import playlist
|
||||
from . import prev
|
||||
from . import special
|
||||
from .. import notify
|
||||
from .. import trak
|
||||
import os
|
||||
|
@ -19,20 +19,20 @@ class TestPreviousPlaylist(unittest.TestCase):
|
|||
notify.cancel("add-track", self.on_add_track)
|
||||
|
||||
def on_add_track(self, plist, track, index):
|
||||
if isinstance(plist, prev.PreviousPlaylist):
|
||||
if isinstance(plist, special.PreviousPlaylist):
|
||||
self.cb_plist = plist
|
||||
self.cb_track = track
|
||||
self.cb_index = index
|
||||
|
||||
def test_previous_playlist(self):
|
||||
plist = prev.PreviousPlaylist()
|
||||
self.assertIsInstance(plist, prev.PreviousPlaylist)
|
||||
plist = special.PreviousPlaylist()
|
||||
self.assertIsInstance(plist, special.PreviousPlaylist)
|
||||
self.assertIsInstance(plist, playlist.Playlist)
|
||||
self.assertEqual(plist.name, "Previous")
|
||||
self.assertEqual(plist.icon, "edit-undo")
|
||||
|
||||
def test_previous_getstate(self):
|
||||
plist = prev.PreviousPlaylist()
|
||||
plist = special.PreviousPlaylist()
|
||||
track = trak.lookup(os.path.join(test_album, "01 - Test Track 01.ogg"))
|
||||
|
||||
plist.add(track)
|
||||
|
@ -45,7 +45,7 @@ class TestPreviousPlaylist(unittest.TestCase):
|
|||
self.assertEqual(state["current"], -1)
|
||||
|
||||
def test_previous_add(self):
|
||||
plist = prev.PreviousPlaylist()
|
||||
plist = special.PreviousPlaylist()
|
||||
plist.visible = True
|
||||
|
||||
track1 = trak.lookup(os.path.join(test_album, "01 - Test Track 01.ogg"))
|
||||
|
@ -85,21 +85,21 @@ class TestPreviousPlaylist(unittest.TestCase):
|
|||
self.assertEqual(plist[2], track2)
|
||||
|
||||
def test_previous_loop(self):
|
||||
plist = prev.PreviousPlaylist()
|
||||
plist = special.PreviousPlaylist()
|
||||
self.assertFalse(plist.can_loop)
|
||||
self.assertFalse(plist.loop)
|
||||
self.assertFalse(plist.set_loop(True))
|
||||
self.assertFalse(plist.loop)
|
||||
|
||||
def test_previous_random(self):
|
||||
plist = prev.PreviousPlaylist()
|
||||
plist = special.PreviousPlaylist()
|
||||
self.assertFalse(plist.can_random)
|
||||
self.assertFalse(plist.random)
|
||||
self.assertFalse(plist.set_random(True))
|
||||
self.assertFalse(plist.random)
|
||||
|
||||
def test_previous_sort(self):
|
||||
plist = prev.PreviousPlaylist()
|
||||
plist = special.PreviousPlaylist()
|
||||
self.assertEqual(plist.sort_order, [ ])
|
||||
self.assertFalse(plist.sort("date"))
|
||||
self.assertEqual(plist.sort_order, [ ])
|
||||
|
|
|
@ -4,7 +4,6 @@ from . import decade
|
|||
from . import genre
|
||||
from . import library
|
||||
from . import playlist
|
||||
from . import prev
|
||||
from . import root
|
||||
from . import special
|
||||
from . import user
|
||||
|
@ -55,7 +54,7 @@ class TestPlaylistRoot(unittest.TestCase):
|
|||
|
||||
self.assertIsInstance(self.playman.lookup("Collection"), special.CollectionPlaylist)
|
||||
self.assertIsInstance(self.playman.lookup("Up Next"), special.UpNextPlaylist)
|
||||
self.assertIsInstance(self.playman.lookup("Previous"), prev.PreviousPlaylist)
|
||||
self.assertIsInstance(self.playman.lookup("Previous"), special.PreviousPlaylist)
|
||||
self.assertIsInstance(self.playman.lookup("Playlists"), user.UserNode)
|
||||
self.assertIsInstance(self.playman.lookup("Artists"), artist.ArtistNode)
|
||||
self.assertIsInstance(self.playman.lookup("Genres"), genre.GenreNode)
|
||||
|
|
Loading…
Reference in New Issue