-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathStatusBar.py
44 lines (34 loc) · 1.17 KB
/
StatusBar.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import rumps
import os
class StatusBarApp(rumps.App):
def __init__(self, name, icon, music):
super(StatusBarApp, self).__init__(name=name, icon=icon)
self.music = music
self.menu.update([])
@rumps.timer(1)
def updateMenu(self,_):
trackInfo = self.music.getTrackInfo()
self.menu.values()[0].title = trackInfo[0] + " - " + trackInfo[1]
self.menu.values()[0].icon = str(os.path.join(os.getenv("HOME"), ".applemusicrp", "albumcover.png"))
self.menu.values()[0].dimensions=(35,35)
self.menu.update([])
@rumps.clicked("Play/Pause")
def playPause(self,_):
# playing
playing = self.music.getPlayerState()[1]
if(playing):
self.menu.values()[1].title="Play"
self.updateMenu(_)
# paused
else:
self.menu.values()[1].title="Pause"
self.updateMenu(_)
self.music.playPause()
@rumps.clicked("Skip")
def skip(self, _):
self.music.skip()
self.updateMenu(_)
@rumps.clicked("Backtrack")
def shuffle(self, _):
self.music.backtrack()
self.updateMenu(_)