From f22dab76b500a22109a734fa7dafca9d50a24725 Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Mon, 9 Aug 2010 18:47:03 +0200 Subject: switch to the new MPD interaction layer remove the old mpclient and our bundled copy of mpd.py --- nephilim/plugins/AlbumCover.py | 6 +++--- nephilim/plugins/Library.py | 3 +-- nephilim/plugins/Lyrics.py | 4 ++-- nephilim/plugins/Notify.py | 2 +- nephilim/plugins/PlayControl.py | 6 +++--- nephilim/plugins/Playlist.py | 12 ++++-------- nephilim/plugins/Songinfo.py | 2 +- nephilim/plugins/Systray.py | 10 +++++----- 8 files changed, 20 insertions(+), 25 deletions(-) (limited to 'nephilim/plugins') diff --git a/nephilim/plugins/AlbumCover.py b/nephilim/plugins/AlbumCover.py index cb4bf1e..9d4cf38 100644 --- a/nephilim/plugins/AlbumCover.py +++ b/nephilim/plugins/AlbumCover.py @@ -64,7 +64,7 @@ class AlbumCoverWidget(QtGui.QLabel): self.plugin.cover_changed.emit(QtGui.QPixmap()) return - if song != self.plugin.mpclient.current_song(): + if song != self.plugin.mpclient.cur_song: return self.cover = cover @@ -230,7 +230,7 @@ class AlbumCover(Plugin): self.__results = 0 self.__index = len(self.__fetchers) self.o.cover_loaded = False - song = self.mpclient.current_song() + song = self.mpclient.cur_song if not song: self.__cover_dir = '' self.__cover_path = '' @@ -285,7 +285,7 @@ class AlbumCover(Plugin): def select_cover(self): """Prompt user to manually select cover file for current song.""" - song = self.mpclient.current_song() + song = self.mpclient.cur_song if not song: return self.__abort_fetch() diff --git a/nephilim/plugins/Library.py b/nephilim/plugins/Library.py index 0d7e8e1..458c88c 100644 --- a/nephilim/plugins/Library.py +++ b/nephilim/plugins/Library.py @@ -198,13 +198,12 @@ class LibraryWidget(QtGui.QWidget): self.layout().addWidget(self.search_txt) self.layout().addWidget(self.library_view) - self.plugin.mpclient.connect_changed.connect(self.fill_library) self.plugin.mpclient.db_updated.connect(self.fill_library) def fill_library(self): self.logger.info('Refreshing library.') self.grouping.setText('/'.join(self.settings.value('grouping').toStringList())) - self.library_model.fill(self.plugin.mpclient.library(), self.settings.value('grouping').toStringList()) + self.plugin.mpclient.database(lambda songs: self.library_model.fill(songs, self.settings.value('grouping').toStringList())) @QtCore.pyqtSlot(unicode) def filter_library(self, text): diff --git a/nephilim/plugins/Lyrics.py b/nephilim/plugins/Lyrics.py index f0ca266..61d34f1 100644 --- a/nephilim/plugins/Lyrics.py +++ b/nephilim/plugins/Lyrics.py @@ -87,7 +87,7 @@ class LyricsWidget(QtGui.QWidget): return self.__text_view.clear() # a late thread might call this for a previous song - if song != self.plugin.mpclient.current_song(): + if song != self.plugin.mpclient.cur_song: return self.__text_view.clear() @@ -237,7 +237,7 @@ class Lyrics(Plugin): self.__results = 0 self.__index = len(self.__fetchers) self.o.lyrics_loaded = False - song = self.mpclient.current_song() + song = self.mpclient.cur_song if not song: self.__lyrics_dir = '' self.__lyrics_path = '' diff --git a/nephilim/plugins/Notify.py b/nephilim/plugins/Notify.py index 7906861..af97e06 100644 --- a/nephilim/plugins/Notify.py +++ b/nephilim/plugins/Notify.py @@ -119,7 +119,7 @@ class Notify(Plugin): self.mpclient.state_changed.disconnect(self.onStateChange) self.mpclient.volume_changed.disconnect(self.onVolumeChange) def onSongChange(self): - song = self.mpclient.current_song() + song = self.mpclient.cur_song if not song: return self.settings.beginGroup(self.name) diff --git a/nephilim/plugins/PlayControl.py b/nephilim/plugins/PlayControl.py index 983ecd6..c3d01d6 100644 --- a/nephilim/plugins/PlayControl.py +++ b/nephilim/plugins/PlayControl.py @@ -68,7 +68,7 @@ class wgPlayControl(QtGui.QToolBar): self.logger = p.logger self.setObjectName(p.name) - status = self.p.mpclient.status() + status = self.p.mpclient.status self.play_icon = QtGui.QIcon(':icons/media-playback-start.svg') self.pause_icon = QtGui.QIcon(':icons/media-playback-pause.svg') @@ -130,7 +130,7 @@ class wgPlayControl(QtGui.QToolBar): output.state_changed.connect(act.setChecked) def onStateChange(self, new_state): - status = self.p.mpclient.status() + status = self.p.mpclient.status if new_state == 'play': self.play_action.setIcon(self.pause_icon) @@ -143,7 +143,7 @@ class wgPlayControl(QtGui.QToolBar): self.vol_slider.setValue(new_vol) def on_play_click(self): - status=self.p.mpclient.status() + status=self.p.mpclient.status if status['state']=='play': self.logger.info('Toggling playback') self.p.mpclient.pause() diff --git a/nephilim/plugins/Playlist.py b/nephilim/plugins/Playlist.py index df78a44..e6a1852 100644 --- a/nephilim/plugins/Playlist.py +++ b/nephilim/plugins/Playlist.py @@ -58,11 +58,7 @@ class PlaylistWidget(QtGui.QWidget): self.layout().setMargin(0) self.layout().addWidget(self.playlist) - if self.plugin.mpclient.is_connected(): - self.playlist.fill() - - def fill_playlist(self): - self.playlist.fill() + self.plugin.mpclient.playlist(self.playlist.fill) class PlaylistTree(QtGui.QTreeWidget): plugin = None @@ -99,7 +95,7 @@ class PlaylistTree(QtGui.QTreeWidget): self.itemActivated.connect(self._song_activated) self.header().geometriesChanged.connect(self._save_state) - self.plugin.mpclient.playlist_changed.connect(self.fill) + self.plugin.mpclient.playlist_changed.connect(lambda :self.plugin.mpclient.playlist(self.fill)) self.plugin.mpclient.connect_changed.connect(self._update_menu) def _save_state(self): @@ -108,10 +104,10 @@ class PlaylistTree(QtGui.QTreeWidget): def _song_activated(self, item): self.plugin.mpclient.play(item.song['id']) - def fill(self): + def fill(self, songs): columns = self.plugin.settings.value(self.plugin.name + '/columns').toStringList() self.clear() - for song in self.plugin.mpclient.playlistinfo(): + for song in songs: item = PlaylistSongItem(PlaylistEntryRef(self.plugin.mpclient, song['id'])) for i in range(len(columns)): item.setText(i, song['?' + columns[i]]) diff --git a/nephilim/plugins/Songinfo.py b/nephilim/plugins/Songinfo.py index c2dbf76..7184544 100644 --- a/nephilim/plugins/Songinfo.py +++ b/nephilim/plugins/Songinfo.py @@ -63,7 +63,7 @@ class Songinfo(Plugin): def refresh(self): self.logger.info('Refreshing.') metadata = {} - song = self.mpclient.current_song() + song = self.mpclient.cur_song if not song: return self.o.clear() diff --git a/nephilim/plugins/Systray.py b/nephilim/plugins/Systray.py index 1f28597..6a8f1ab 100644 --- a/nephilim/plugins/Systray.py +++ b/nephilim/plugins/Systray.py @@ -43,7 +43,7 @@ class Systray(Plugin): if type(event)==QtGui.QWheelEvent: numDegrees=event.delta() / 8 numSteps=5*numDegrees/15 - self.plugin.mpclient.set_volume(self.plugin.mpclient.volume() + numSteps) + self.plugin.mpclient.set_volume(self.plugin.mpclient.status['volume'] + numSteps) event.accept() return True return False @@ -64,17 +64,17 @@ class Systray(Plugin): self.parent()._wheelEvent = None def update(self): - status = self.mpclient.status() + status = self.mpclient.status if not status: return values = {'state':''} values['state']={'play':'playing', 'stop':'stopped', 'pause':'paused'}[status['state']] if 'time' in status: - values['length'] = sec2min(status['length']) - values['time'] = sec2min(status['time']) + values['length'] = sec2min(status['time'][0]) + values['time'] = sec2min(status['time'][1]) - song = self.mpclient.current_song() + song = self.mpclient.cur_song if song: self.o.setToolTip(expand_tags(self.format, (song,))) else: -- cgit v1.2.3