aboutsummaryrefslogtreecommitdiff
path: root/helpers/action.py
diff options
context:
space:
mode:
authorIsmaël Bouya <ismael.bouya@normalesup.org>2016-06-20 23:08:22 +0200
committerIsmaël Bouya <ismael.bouya@normalesup.org>2016-06-20 23:15:47 +0200
commit9de92b6dd2bd906f6a64fce7c90a6aff0dbb27a2 (patch)
treec654b7691e8bc92bd1726554e0d353604ebb4d71 /helpers/action.py
parentd479af33afa54fee7c22701c6012a1579ead395f (diff)
downloadMusicSampler-9de92b6dd2bd906f6a64fce7c90a6aff0dbb27a2.tar.gz
MusicSampler-9de92b6dd2bd906f6a64fce7c90a6aff0dbb27a2.tar.zst
MusicSampler-9de92b6dd2bd906f6a64fce7c90a6aff0dbb27a2.zip
Added music name, currently playing musics, pause/unpause
Diffstat (limited to 'helpers/action.py')
-rw-r--r--helpers/action.py26
1 files changed, 20 insertions, 6 deletions
diff --git a/helpers/action.py b/helpers/action.py
index 5afe437..1cb1686 100644
--- a/helpers/action.py
+++ b/helpers/action.py
@@ -8,6 +8,7 @@ class Action:
8 'play', 8 'play',
9 'stop', 9 'stop',
10 'stop_all_actions', 10 'stop_all_actions',
11 'unpause',
11 'volume', 12 'volume',
12 'wait', 13 'wait',
13 ] 14 ]
@@ -29,7 +30,8 @@ class Action:
29 30
30 def run(self): 31 def run(self):
31 print(self.description()) 32 print(self.description())
32 return getattr(self, self.action)(**self.arguments) 33 getattr(self, self.action)(**self.arguments)
34 pygame.event.post(pygame.event.Event(pygame.USEREVENT))
33 35
34 def description(self): 36 def description(self):
35 return getattr(self, self.action + "_print")(**self.arguments) 37 return getattr(self, self.action + "_print")(**self.arguments)
@@ -43,6 +45,12 @@ class Action:
43 else: 45 else:
44 pygame.mixer.pause() 46 pygame.mixer.pause()
45 47
48 def unpause(self, music = None, **kwargs):
49 if music is not None:
50 music.unpause()
51 else:
52 pygame.mixer.unpause()
53
46 def play(self, music = None, fade_in = 0, start_at = 0, 54 def play(self, music = None, fade_in = 0, start_at = 0,
47 restart_if_running = False, volume = 100, **kwargs): 55 restart_if_running = False, volume = 100, **kwargs):
48 if music is not None: 56 if music is not None:
@@ -88,15 +96,21 @@ class Action:
88 96
89 def pause_print(self, music = None, **kwargs): 97 def pause_print(self, music = None, **kwargs):
90 if music is not None: 98 if music is not None:
91 return "pausing {}".format(music.filename) 99 return "pausing « {} »".format(music.name)
92 else: 100 else:
93 return "pausing all musics" 101 return "pausing all musics"
94 102
103 def unpause_print(self, music = None, **kwargs):
104 if music is not None:
105 return "unpausing « {} »".format(music.name)
106 else:
107 return "unpausing all musics"
108
95 def play_print(self, music = None, fade_in = 0, start_at = 0, 109 def play_print(self, music = None, fade_in = 0, start_at = 0,
96 restart_if_running = False, volume = 100, **kwargs): 110 restart_if_running = False, volume = 100, **kwargs):
97 message = "starting " 111 message = "starting "
98 if music is not None: 112 if music is not None:
99 message += music.filename 113 message += "« {} »".format(music.name)
100 else: 114 else:
101 message += "music" 115 message += "music"
102 116
@@ -116,9 +130,9 @@ class Action:
116 def stop_print(self, music = None, fade_out = 0, **kwargs): 130 def stop_print(self, music = None, fade_out = 0, **kwargs):
117 if music is not None: 131 if music is not None:
118 if fade_out == 0: 132 if fade_out == 0:
119 return "stopping music {}".format(music.filename) 133 return "stopping music « {} »".format(music.name)
120 else: 134 else:
121 return "stopping music {} with {}s fadeout".format(music.filename, fade_out) 135 return "stopping music « {} » with {}s fadeout".format(music.name, fade_out)
122 else: 136 else:
123 if fade_out == 0: 137 if fade_out == 0:
124 return "stopping all musics" 138 return "stopping all musics"
@@ -130,7 +144,7 @@ class Action:
130 144
131 def volume_print(self, music = None, value = 100, **kwargs): 145 def volume_print(self, music = None, value = 100, **kwargs):
132 if music is not None: 146 if music is not None:
133 return "setting volume of {} to {}%".format(music.filename, value) 147 return "setting volume of « {} » to {}%".format(music.name, value)
134 else: 148 else:
135 return "setting volume to {}%".format(value) 149 return "setting volume to {}%".format(value)
136 150