emmental/curds/playlist/decade.py

29 lines
859 B
Python

# Copyright 2019 (c) Anna Schumaker.
from . import playlist
from .. import notify
from .. import tree
DECADE_ICON = "x-office-calendar"
class DecadePlaylist(playlist.Playlist):
def alloc_child(self, name, icon):
return playlist.Playlist(name, icon,
[ "artist", "album", "discnumber", "tracknumber" ])
def add(self, track):
playlist.Playlist.add(self, track)
self.find_child(str(track["date"]), DECADE_ICON).add(track)
class DecadeNode(tree.ETree):
def __init__(self):
tree.ETree.__init__(self, "Decades", "x-office-calendar")
def alloc_child(self, name, icon):
return DecadePlaylist(name, icon,
[ "date", "artist", "album", "discnumber", "tracknumber" ])
def new_track(self, track):
self.find_child(track.decade(), DECADE_ICON).add(track)