]> git.immae.eu Git - perso/Immae/Projets/Python/MusicSampler.git/blobdiff - music_sampler.py
Move actions to separate files
[perso/Immae/Projets/Python/MusicSampler.git] / music_sampler.py
index 81b96c4c29d32ea45498109e28548e2d40e19602..41b71be5bd1bd96502b18981c96725bef8554446 100644 (file)
@@ -1,3 +1,7 @@
+import helpers
+
+helpers.parse_args()
+
 import kivy
 kivy.require("1.9.1")
 from kivy.app import App
@@ -9,7 +13,23 @@ from kivy.core.window import Window
 from kivy.lang import Builder
 from helpers.key import Key
 from helpers.mapping import Mapping
-import helpers
+
+class KeyList(RelativeLayout):
+    keylist = ListProperty([])
+    first_key = StringProperty("")
+    second_key = StringProperty("")
+    third_key = StringProperty("")
+
+    def append(self, value):
+        self.keylist.insert(0, value)
+
+    def on_keylist(self, instance, new_key_list):
+        if len(self.keylist) > 0:
+            self.first_key  = self.keylist[0]
+        if len(self.keylist) > 1:
+            self.second_key = self.keylist[1]
+        if len(self.keylist) > 2:
+            self.third_key  = self.keylist[2]
 
 class PlayList(RelativeLayout):
     playlist = ListProperty([])
@@ -25,12 +45,17 @@ class PlayList(RelativeLayout):
         open_files = self.parent.ids['Mapping'].open_files
         self.playlist = []
         for music_file in open_files.values():
-            if not music_file.is_playing():
+            if not music_file.is_in_use():
                 continue
-            if music_file.is_paused():
-                self.playlist.append(["⏸", music_file.name, False])
+
+            text = "{}/{}".format(
+                    helpers.duration_to_min_sec(music_file.sound_position),
+                    helpers.duration_to_min_sec(music_file.sound_duration))
+
+            if music_file.is_loaded_paused():
+                self.playlist.append(["⏸", music_file.name, text, False])
             else:
-                self.playlist.append(["⏵", music_file.name, True])
+                self.playlist.append(["⏵", music_file.name, text, True])
 
 
 class ActionList(RelativeLayout):