summaryrefslogtreecommitdiff
path: root/plugins/PlayControl.py
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/PlayControl.py')
-rw-r--r--plugins/PlayControl.py47
1 files changed, 25 insertions, 22 deletions
diff --git a/plugins/PlayControl.py b/plugins/PlayControl.py
index be7006b..b31046a 100644
--- a/plugins/PlayControl.py
+++ b/plugins/PlayControl.py
@@ -1,7 +1,6 @@
from PyQt4 import QtGui, QtSvg, QtCore
from misc import *
-from clMonty import monty
from clPlugin import *
import clSong
from thread import start_new_thread
@@ -49,6 +48,7 @@ class wgPlayControl(QtGui.QWidget):
cmbRepeat=None
cmbShuffle=None
p=None
+ monty = None
" contains the songs of the album the current song is playing. None, if the album is not set"
curAlbumSongs=None
@@ -61,6 +61,7 @@ class wgPlayControl(QtGui.QWidget):
def __init__(self, p, parent=None):
QtGui.QWidget.__init__(self, parent)
self.p=p
+ self.monty = p.monty
class wgSvgSwitcher(QtSvg.QSvgWidget):
"""Widget showing an svg-image, which, when clicked, will (un)hide an element."""
@@ -152,9 +153,9 @@ class wgPlayControl(QtGui.QWidget):
self.cmbShuffle.setItemText(PC_RANDOM_QUEUE, "Queue (%i)"%(len(self.queuedSongs)))
def onBtnJmpCurrentClick(self):
- plugins.getPlugin("Playlist").getPlaylist().ensureVisible(monty.getCurrentSong().getID())
+ plugins.getPlugin("Playlist").getPlaylist().ensureVisible(self.monty.getCurrentSong().getID())
def onStateChange(self, params):
- newState=monty.getStatus()['state']
+ newState=self.monty.getStatus()['state']
map(lambda o: o.setEnabled(newState!='stop'), self.objects)
@@ -173,7 +174,7 @@ class wgPlayControl(QtGui.QWidget):
self.slrTime.setValue(params['newTime'])
def onSongChange(self, params):
try:
- self.slrTime.setMaximum(monty.getStatus()['length'])
+ self.slrTime.setMaximum(self.monty.getStatus()['length'])
self.slrTime.setEnabled(True)
except:
pass
@@ -183,7 +184,7 @@ class wgPlayControl(QtGui.QWidget):
def beforeSongChange(self, params):
nextID=None
- song=monty.getCurrentSong()
+ song=self.monty.getCurrentSong()
# decide here what next song to play!
repeat=self.cmbRepeat.currentIndex()
random=self.cmbShuffle.currentIndex()
@@ -238,7 +239,7 @@ class wgPlayControl(QtGui.QWidget):
# album.
if eofAlbum and (repeat==PC_REPEAT_PLAYLIST or repeat==PC_REPEAT_NO):
# all first songs of an album
- albums=filter(lambda s: s.getAlbum() and s.getTrack()==1, monty.listPlaylist())
+ albums=filter(lambda s: s.getAlbum() and s.getTrack()==1, self.monty.listPlaylist())
nextID=albums[randint(0,len(albums)-1)].getID()
else:
# we're not at end of album, so we fetch the next id
@@ -254,45 +255,45 @@ class wgPlayControl(QtGui.QWidget):
self.cmbShuffle.setCurrentIndex(int(self.p.getSetting('oldshuffle')))
if nextID!=None:
- monty.play(nextID)
+ self.monty.play(nextID)
def getCurAlbumSongs(self):
return self.curAlbumSongs
def findAlbumSongs(self):
"""This method looks for the songs in the album of current playing song."""
- song=monty.getCurrentSong()
+ song=self.monty.getCurrentSong()
if self.curAlbumSongs and clSong.isSameAlbum(song, self.curAlbumSongs[0]):
return
self.curAlbumSongs=None
if not song or not song.getAlbum():
return
- self.curAlbumSongs=filter(lambda s: clSong.isSameAlbum(s, song), monty.listPlaylist())
+ self.curAlbumSongs=filter(lambda s: clSong.isSameAlbum(s, song), self.monty.listPlaylist())
self.curAlbumSongs=sorted(self.curAlbumSongs, lambda l,r: numeric_compare(l.getTrack(), r.getTrack()))
def onBtnPlayPauseClick(self):
- status=monty.getStatus()
+ status=self.monty.getStatus()
if status['state']=='play':
- monty.pause()
+ self.monty.pause()
self.p.extended("Toggling playback")
elif status['state']=='stop':
- monty.play(None)
+ self.monty.play(None)
self.p.extended("Pausing playback")
else:
- monty.resume()
+ self.monty.resume()
def onBtnStopClick(self):
- monty.stop()
+ self.monty.stop()
self.p.extended("Stopping playback")
def onBtnPreviousClick(self):
- monty.previous()
+ self.monty.previous()
self.p.extended("Playing previous")
def onBtnNextClick(self):
- monty.next()
+ self.monty.next()
self.p.extended("Playing next")
def onTimeSliderChange(self):
- monty.seek(self.slrTime.value())
+ self.monty.seek(self.slrTime.value())
def onVolumeSliderChange(self):
v=self.slrVolume.value()
- monty.setVolume(v)
+ self.monty.setVolume(v)
if v<=1:
mode='mute'
else:
@@ -302,9 +303,9 @@ class wgPlayControl(QtGui.QWidget):
def onCmbRepeatChanged(self, newval):
self.p.setSetting('repeat', newval)
if newval==PC_REPEAT_PLAYLIST:
- monty.repeat(1)
+ self.monty.repeat(1)
else:
- monty.repeat(0)
+ self.monty.repeat(0)
def onCmbShuffleChanged(self, newval):
if newval==PC_RANDOM_QUEUE:
# must do some extra's if moving to queued-mode
@@ -320,9 +321,9 @@ class wgPlayControl(QtGui.QWidget):
self.p.setSetting('shuffle', newval)
if newval==PC_RANDOM_SONG:
- monty.random(1)
+ self.monty.random(1)
else:
- monty.random(0)
+ self.monty.random(0)
# save and load the queue
def saveQueue(self):
@@ -344,6 +345,7 @@ class wgPlayControl(QtGui.QWidget):
class pluginPlayControl(Plugin):
o=None
+ monty = None
def __init__(self, winMain):
Plugin.__init__(self, winMain, 'PlayControl')
self.addMontyListener('onStateChange', self.onStateChange)
@@ -353,6 +355,7 @@ class pluginPlayControl(Plugin):
self.addMontyListener('onReady', self.onStateChange)
self.addMontyListener('onDisconnect', self.onDisconnect)
self.addMontyListener('onTimeChange', self.onTimeChange)
+ self.monty = winMain.monty
def _load(self):
self.o=wgPlayControl(self, None)
self.o.loadQueue()