def __init__(self, parent, main, device, name): label = device.get_name() panel.Panel.__init__(self, parent, name, label) self.device = device self.main = main self.notebook = self.builder.get_object("device_notebook") self.fppanel = FlatPlaylistPanel(self, name, label) self.fppanel.connect('append-items', lambda *e: self.emit('append-items', *e[1:])) self.fppanel.connect('replace-items', lambda *e: self.emit('replace-items', *e[1:])) self.fppanel.connect('queue-items', lambda *e: self.emit('queue-items', *e[1:]))
class FlatPlaylistDevicePanel(panel.Panel): __gsignals__ = { 'append-items': (GObject.SignalFlags.RUN_LAST, None, (object, bool)), 'replace-items': (GObject.SignalFlags.RUN_LAST, None, (object,)), 'queue-items': (GObject.SignalFlags.RUN_LAST, None, (object,)), } ui_info = ('device.ui', 'DevicePanel') def __init__(self, parent, main, device, name): label = device.get_name() panel.Panel.__init__(self, parent, name, label) self.device = device self.main = main self.notebook = self.builder.get_object("device_notebook") self.fppanel = FlatPlaylistPanel(self, name, label) self.fppanel.connect( 'append-items', lambda *e: self.emit('append-items', *e[1:]) ) self.fppanel.connect( 'replace-items', lambda *e: self.emit('replace-items', *e[1:]) ) self.fppanel.connect('queue-items', lambda *e: self.emit('queue-items', *e[1:])) def get_panel(self): return self.fppanel.get_panel() def add_panel(self, child, name): label = Gtk.Label(label=name) self.notebook.append_page(child, label) def load_tree(self, *e): # TODO: handle *all* the playlists self.fppanel.set_playlist(self.device.get_playlists()[0])
class FlatPlaylistDevicePanel(panel.Panel): __gsignals__ = { 'append-items': (GObject.SignalFlags.RUN_LAST, None, (object, bool)), 'replace-items': (GObject.SignalFlags.RUN_LAST, None, (object,)), 'queue-items': (GObject.SignalFlags.RUN_LAST, None, (object,)), } ui_info = ('device.ui', 'DevicePanel') def __init__(self, parent, main, device, name): label = device.get_name() panel.Panel.__init__(self, parent, name, label) self.device = device self.main = main self.notebook = self.builder.get_object("device_notebook") self.fppanel = FlatPlaylistPanel(self, name, label) self.fppanel.connect('append-items', lambda *e: self.emit('append-items', *e[1:])) self.fppanel.connect('replace-items', lambda *e: self.emit('replace-items', *e[1:])) self.fppanel.connect('queue-items', lambda *e: self.emit('queue-items', *e[1:])) def get_panel(self): return self.fppanel.get_panel() def add_panel(self, child, name): label = Gtk.Label(label=name) self.notebook.append_page(child, label) def load_tree(self, *e): # TODO: handle *all* the playlists self.fppanel.set_playlist( self.device.get_playlists()[0])