diff options
Diffstat (limited to 'plugins/Systray.py')
-rw-r--r-- | plugins/Systray.py | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/plugins/Systray.py b/plugins/Systray.py index 571bbc3..5da4507 100644 --- a/plugins/Systray.py +++ b/plugins/Systray.py @@ -1,5 +1,4 @@ from PyQt4 import QtGui -from clMonty import monty from clPlugin import * from misc import * import format @@ -13,6 +12,8 @@ class pluginSystray(Plugin): time=None # indicator of current time [0..64] appIcon=None pixmap=None + monty = None + palette = None def __init__(self, winMain): Plugin.__init__(self, winMain, 'Systray') self.addMontyListener('onSongChange', self.update) @@ -21,8 +22,10 @@ class pluginSystray(Plugin): self.addMontyListener('onDisconnect', self.update) # TODO only update this when necessary, i.e. mouse-hover etc self.addMontyListener('onTimeChange', self.update) - self.appIcon=appIcon - + self.appIcon=QtGui.QIcon(appIcon) + self.monty = winMain.monty + self.palette = winMain.palette() + def _load(self): self.format=format.compile(SYSTRAY_FORMAT) @@ -32,12 +35,12 @@ class pluginSystray(Plugin): if type(event)==QtGui.QWheelEvent: numDegrees=event.delta() / 8 numSteps=5*numDegrees/15 - monty.setVolume(int(monty.getStatus()['volume'])+numSteps) + self.monty.setVolume(int(monty.getStatus()['volume'])+numSteps) event.accept() return True return False - self.o=QtGui.QSystemTrayIcon(appIcon, self.winMain) + self.o=QtGui.QSystemTrayIcon(QtGui.QIcon(appIcon), self.winMain) self.eventObj=SystrayWheelEventObject() self.o.installEventFilter(self.eventObj) self.winMain.connect(self.o, QtCore.SIGNAL('activated (QSystemTrayIcon::ActivationReason)') @@ -51,11 +54,11 @@ class pluginSystray(Plugin): self.o=None self.winMain._wheelEvent=None def getInfo(self): - return "Display the montypc icon in the systray." + return "Display the self.montypc icon in the systray." def update(self, params): - status=monty.getStatus() - song=monty.getCurrentSong() + status=self.monty.getStatus() + song=self.monty.getCurrentSong() values={'state':''} try: @@ -69,7 +72,7 @@ class pluginSystray(Plugin): if song: self.o.setToolTip(self.format(format.params(song, values))) else: - self.o.setToolTip("montypc not playing") + self.o.setToolTip("self.montypc not playing") try: curTime=(64*status['time'])/status['length'] @@ -80,13 +83,13 @@ class pluginSystray(Plugin): # redraw the systray icon self.pixmap=self.appIcon.pixmap(64,64) painter=QtGui.QPainter(self.pixmap) - painter.fillRect(1, curTime, 63, 64, monty.palette.brush(QtGui.QPalette.Base)) - appIcon.paint(painter, 1, 0, 63, 64) + painter.fillRect(1, curTime, 63, 64, self.palette.brush(QtGui.QPalette.Base)) + self.appIcon.paint(painter, 1, 0, 63, 64) self.o.setIcon(QtGui.QIcon(self.pixmap)) elif not song: self.time=None - self.o.setIcon(appIcon) + self.o.setIcon(QtGui.QIcon(appIcon)) def onSysTrayClick(self, reason): @@ -106,8 +109,8 @@ class pluginSystray(Plugin): w.move(x, y) elif reason==QtGui.QSystemTrayIcon.MiddleClick: # middle mouse button - if monty.isPlaying(): - monty.pause() + if self.monty.isPlaying(): + self.monty.pause() else: - monty.resume() + self.monty.resume() |