24 lines
628 B
Python
24 lines
628 B
Python
# Copyright 2019 (c) Anna Schumaker.
|
|
from . import library
|
|
from . import playlist
|
|
from .. import notify
|
|
import os
|
|
|
|
class LibraryManager(dict):
|
|
def __getitem__(self, key):
|
|
key = os.path.abspath(key)
|
|
if not key in self.keys():
|
|
self[key] = library.LibraryPlaylist(key)
|
|
return self.get(key)
|
|
|
|
|
|
class PlaylistManager(dict):
|
|
def __init__(self):
|
|
self["Collection"] = playlist.Playlist("collection")
|
|
self["Library"] = LibraryManager()
|
|
|
|
notify.Notify.notify_me("new-track", self.on_new_track)
|
|
|
|
def on_new_track(self, track):
|
|
self["Collection"].add(track)
|