From a45e7539d0c9c18a2edc9764da325fa7c93cd56d Mon Sep 17 00:00:00 2001 From: Jens Persson Date: Sat, 14 May 2011 14:46:36 +0200 Subject: [PATCH] implemented play one --- src/panucci/gtkui/gtkmain.py | 10 ++++++++++ src/panucci/qtui/qtmain.py | 10 ++++++++++ 2 files changed, 20 insertions(+) diff --git a/src/panucci/gtkui/gtkmain.py b/src/panucci/gtkui/gtkmain.py index 9445d0d..cce0a2c 100644 --- a/src/panucci/gtkui/gtkmain.py +++ b/src/panucci/gtkui/gtkmain.py @@ -168,6 +168,8 @@ class PanucciGUI(object): self.action_open.connect('activate', self.open_file_callback) self.action_open_dir = gtk.Action('open_dir', _('Add Folder'), _('Open a directory'), gtk.STOCK_OPEN) self.action_open_dir.connect('activate', self.open_dir_callback) + self.action_play_one = gtk.Action('play_one', _('Play One'), _('Play one file'), gtk.STOCK_FILE) + self.action_play_one.connect('activate', self.play_one_callback) self.action_save = gtk.Action('save', _('Save Playlist'), _('Save current playlist to file'), gtk.STOCK_SAVE_AS) self.action_save.connect('activate', self.save_to_playlist_callback) self.action_empty_playlist = gtk.Action('empty_playlist', _('Clear Playlist'), _('Clear current playlist'), gtk.STOCK_DELETE) @@ -233,6 +235,7 @@ class PanucciGUI(object): file_menu = gtk.Menu() file_menu.append(self.action_open.create_menu_item()) file_menu.append(self.action_open_dir.create_menu_item()) + file_menu.append(self.action_play_one.create_menu_item()) file_menu.append(self.action_save.create_menu_item()) file_menu.append(self.action_empty_playlist.create_menu_item()) file_menu.append(self.action_delete_bookmarks.create_menu_item()) @@ -292,6 +295,7 @@ class PanucciGUI(object): self.action_playlist, self.action_open, self.action_open_dir, + self.action_play_one, self.action_empty_playlist, self.action_timer, self.action_fm, @@ -479,6 +483,12 @@ class PanucciGUI(object): if filename is not None: self._play_file(filename) + def play_one_callback(self, widget=None): + filename = gtkutil.get_file_from_filechooser(self) + if filename is not None: + self.empty_playlist_callback(None) + self._play_file(filename) + def save_to_playlist_callback(self, widget=None): filename = gtkutil.get_file_from_filechooser( self, save_file=True, save_to='playlist.m3u' ) diff --git a/src/panucci/qtui/qtmain.py b/src/panucci/qtui/qtmain.py index d022788..a38ee13 100644 --- a/src/panucci/qtui/qtmain.py +++ b/src/panucci/qtui/qtmain.py @@ -79,6 +79,8 @@ class PanucciGUI(object): statusTip="Add file to playlist", triggered=self.add_file_callback) self.action_add_folder = QtGui.QAction(QtGui.QIcon(':/images/open.png'), _("Add Folder").decode("utf-8"), self.main_window, shortcut="Ctrl+D", statusTip="Add folder to playlist", triggered=self.add_folder_callback) + self.action_play_one = QtGui.QAction(QtGui.QIcon(''), _("Play One").decode("utf-8"), self.main_window, shortcut="Ctrl+O", + statusTip="Play one file", triggered=self.play_one_callback) self.action_save_playlist = QtGui.QAction(QtGui.QIcon(':/images/save.png'), _("Save Playlist").decode("utf-8"), self.main_window, shortcut="Ctrl+W", statusTip="Save current playlist as m3u", triggered=self.save_playlist_callback) self.action_clear_playlist = QtGui.QAction(QtGui.QIcon(':/images/trashcan.png'), _("Clear Playlist").decode("utf-8"), self.main_window, shortcut="Ctrl+H", @@ -150,6 +152,7 @@ class PanucciGUI(object): self.menu_file = self.main_window.menuBar().addMenu(_("File").decode("utf-8")) self.menu_file.addAction(self.action_add_file) self.menu_file.addAction(self.action_add_folder) + self.menu_file.addAction(self.action_play_one) self.menu_file.addAction(self.action_save_playlist) self.menu_file.addAction(self.action_clear_playlist) self.menu_file.addAction(self.action_delete_bookmarks) @@ -183,6 +186,7 @@ class PanucciGUI(object): self.menu_player.addAction(self.action_playlist) self.menu_player.addAction(self.action_add_file) self.menu_player.addAction(self.action_add_folder) + self.menu_player.addAction(self.action_play_one) self.menu_player.addAction(self.action_clear_playlist) self.menu_player.addAction(self.action_timer) self.menu_player.addAction(self.action_about) @@ -219,6 +223,12 @@ class PanucciGUI(object): if filenames: self._play_file(filenames[0].encode('utf-8')) + def play_one_callback(self): + filenames = qtutil.get_file_from_filechooser(self) + if filenames: + self.clear_playlist_callback() + self._play_file(filenames[0].encode('utf-8')) + def save_playlist_callback(self): filenames = qtutil.get_file_from_filechooser(self, save_file=True, save_to=True) if not filenames: -- 2.11.4.GIT