aboutsummaryrefslogtreecommitdiff
path: root/helpers/mapping.py
diff options
context:
space:
mode:
Diffstat (limited to 'helpers/mapping.py')
-rw-r--r--helpers/mapping.py14
1 files changed, 12 insertions, 2 deletions
diff --git a/helpers/mapping.py b/helpers/mapping.py
index 9420acf..3622f9d 100644
--- a/helpers/mapping.py
+++ b/helpers/mapping.py
@@ -10,6 +10,7 @@ import sys
10from .music_file import * 10from .music_file import *
11from .mixer import Mixer 11from .mixer import Mixer
12from . import Config, gain, error_print 12from . import Config, gain, error_print
13from .music_effect import GainEffect
13 14
14class Mapping(RelativeLayout): 15class Mapping(RelativeLayout):
15 expected_keys = NumericProperty(0) 16 expected_keys = NumericProperty(0)
@@ -32,13 +33,22 @@ class Mapping(RelativeLayout):
32 def master_gain(self): 33 def master_gain(self):
33 return gain(self.master_volume) 34 return gain(self.master_volume)
34 35
35 def set_master_volume(self, value, delta=False): 36 def set_master_volume(self, value, delta=False, fade=0):
36 [db_gain, self.master_volume] = gain( 37 [db_gain, self.master_volume] = gain(
37 value + int(delta) * self.master_volume, 38 value + int(delta) * self.master_volume,
38 self.master_volume) 39 self.master_volume)
39 40
40 for music in self.open_files.values(): 41 for music in self.open_files.values():
41 music.set_gain(db_gain) 42 if fade > 0:
43 music.gain_effects.append(GainEffect(
44 "fade",
45 music.current_audio_segment,
46 music.current_loop,
47 music.sound_position,
48 music.sound_position + fade,
49 gain=db_gain))
50 else:
51 music.set_gain(db_gain)
42 52
43 def _keyboard_closed(self): 53 def _keyboard_closed(self):
44 self._keyboard.unbind(on_key_down=self._on_keyboard_down) 54 self._keyboard.unbind(on_key_down=self._on_keyboard_down)