p = FilePlaylist(drivers=params['drivers'], path=params['input'])
p.load(hooke=hooke)
playlist_names = [playlist.name for playlist in hooke.playlists]
- if p.name not in playlist_names:
- params['output playlist'] = p.name # HACK: override input name. How to tell if it is callback-generated?
+ if p.name in playlist_names:
+ p.name = params['output playlist'] # HACK: override input name. How to tell if it is callback-generated?
self._set_playlist(hooke, params, p)
outqueue.put(p)
help=self.__doc__, plugin=plugin)
def _run(self, hooke, inqueue, outqueue, params):
+ p = self._playlist(hooke, params)
for path in sorted(glob.glob(params['input'])):
- self._playlist(hooke, params).append_curve_by_path(
- path, params['info'], hooke=hooke)
-
+ p.append_curve_by_path(path, params['info'], hooke=hooke)
+ outqueue.put(p[-1])
class RemoveCommand (PlaylistCommand):
"""Remove a curve from a playlist.
from ..command import Command, Argument, Failure
from ..playlist import FilePlaylist
from . import Builtin
-from .playlist import PlaylistNameArgument
+from .playlist import PlaylistNameArgument, PlaylistAddingCommand
class PlaylistsPlugin (Builtin):
outqueue.put(list(hooke.playlists))
-class NewCommand (Command):
+class NewCommand (PlaylistAddingCommand):
"""Create a new playlist.
"""
def __init__(self, plugin):
super(NewCommand, self).__init__(
name='new playlist',
arguments=[
- PlaylistNameArgument,
Argument(name='file', type='file', optional=True,
help="""
Default filename for future saves.
help=self.__doc__, plugin=plugin)
def _run(self, hooke, inqueue, outqueue, params):
- print 'PP', params['name']
- hooke.playlists.append(
- FilePlaylist(
- drivers=hooke.drivers,
- name=params['name'],
- path=params['file'],
- ))
+ p = FilePlaylist(
+ drivers=hooke.drivers,
+ path=params['file'],
+ )
+ playlist_names = [playlist.name for playlist in hooke.playlists]
+ if p.name in playlist_names:
+ p.name = params['output playlist'] # HACK: override input name. How to tell if it is callback-generated?
+ hooke.playlists.append(p)