@@ 307-326 (lines=20) @@ | ||
304 | self.playlist_view.setCurrentRow(0) |
|
305 | self.player.play() |
|
306 | ||
307 | def open_playlist(self): |
|
308 | """Load an M3U or PLS file into a new playlist.""" |
|
309 | playlist, success = QFileDialog.getOpenFileName(self, 'Open Playlist', '', 'Playlist (*.m3u *.pls)', '', QFileDialog.ReadOnly) |
|
310 | ||
311 | if success: |
|
312 | playlist = QUrl.fromLocalFile(playlist) |
|
313 | self.playlist.clear() |
|
314 | self.playlist_view.clear() |
|
315 | self.playlist.load(playlist) |
|
316 | self.player.setPlaylist(self.playlist) |
|
317 | ||
318 | for song_index in range(self.playlist.mediaCount()): |
|
319 | file_info = self.playlist.media(song_index).canonicalUrl().fileName() |
|
320 | playlist_item = QListWidgetItem(file_info) |
|
321 | playlist_item.setToolTip(file_info) |
|
322 | self.playlist_view.addItem(playlist_item) |
|
323 | ||
324 | self.playlist_view.setCurrentRow(0) |
|
325 | self.player.play() |
|
326 | ||
327 | def save_playlist(self): |
|
328 | """Save the media in the playlist dock as a new M3U playlist.""" |
|
329 | playlist, success = QFileDialog.getSaveFileName(self, 'Save Playlist', '', 'Playlist (*.m3u)', '') |
|
@@ 290-307 (lines=18) @@ | ||
287 | self.playlist_view.setCurrentRow(0) |
|
288 | self.player.play() |
|
289 | ||
290 | def open_multiple_files(self): |
|
291 | """Open the selected files and add them to a new playlist.""" |
|
292 | filenames, success = QFileDialog.getOpenFileNames(self, 'Open Multiple Files', '', 'Audio (*.mp3 *.flac)', '', QFileDialog.ReadOnly) |
|
293 | ||
294 | if success: |
|
295 | self.playlist.clear() |
|
296 | self.playlist_view.clear() |
|
297 | for file in natsort.natsorted(filenames, alg=natsort.ns.PATH): |
|
298 | file_info = QFileInfo(file).fileName() |
|
299 | playlist_item = QListWidgetItem(file_info) |
|
300 | self.playlist.addMedia(QMediaContent(QUrl().fromLocalFile(file))) |
|
301 | self.player.setPlaylist(self.playlist) |
|
302 | playlist_item.setToolTip(file_info) |
|
303 | self.playlist_view.addItem(playlist_item) |
|
304 | self.playlist_view.setCurrentRow(0) |
|
305 | self.player.play() |
|
306 | ||
307 | def open_playlist(self): |
|
308 | """Load an M3U or PLS file into a new playlist.""" |
|
309 | playlist, success = QFileDialog.getOpenFileName(self, 'Open Playlist', '', 'Playlist (*.m3u *.pls)', '', QFileDialog.ReadOnly) |
|
310 | ||
@@ 274-290 (lines=17) @@ | ||
271 | ||
272 | self.help_.addAction(self.about_action) |
|
273 | ||
274 | def open_file(self): |
|
275 | """Open the selected file and add it to a new playlist.""" |
|
276 | filename, success = QFileDialog.getOpenFileName(self, 'Open File', '', 'Audio (*.mp3 *.flac)', '', QFileDialog.ReadOnly) |
|
277 | ||
278 | if success: |
|
279 | file_info = QFileInfo(filename).fileName() |
|
280 | playlist_item = QListWidgetItem(file_info) |
|
281 | self.playlist.clear() |
|
282 | self.playlist_view.clear() |
|
283 | self.playlist.addMedia(QMediaContent(QUrl().fromLocalFile(filename))) |
|
284 | self.player.setPlaylist(self.playlist) |
|
285 | playlist_item.setToolTip(file_info) |
|
286 | self.playlist_view.addItem(playlist_item) |
|
287 | self.playlist_view.setCurrentRow(0) |
|
288 | self.player.play() |
|
289 | ||
290 | def open_multiple_files(self): |
|
291 | """Open the selected files and add them to a new playlist.""" |
|
292 | filenames, success = QFileDialog.getOpenFileNames(self, 'Open Multiple Files', '', 'Audio (*.mp3 *.flac)', '', QFileDialog.ReadOnly) |
|
293 |