aboutsummaryrefslogtreecommitdiff
path: root/music_sampler/app.py
diff options
context:
space:
mode:
Diffstat (limited to 'music_sampler/app.py')
-rw-r--r--music_sampler/app.py33
1 files changed, 4 insertions, 29 deletions
diff --git a/music_sampler/app.py b/music_sampler/app.py
index 81c47a7..510cb44 100644
--- a/music_sampler/app.py
+++ b/music_sampler/app.py
@@ -1,4 +1,4 @@
1from .helpers import parse_args, register_fonts, duration_to_min_sec, path 1from .helpers import parse_args, register_fonts, path
2 2
3parse_args() 3parse_args()
4 4
@@ -6,9 +6,9 @@ import kivy
6kivy.require("1.9.1") 6kivy.require("1.9.1")
7from kivy.app import App 7from kivy.app import App
8from kivy.uix.floatlayout import FloatLayout 8from kivy.uix.floatlayout import FloatLayout
9from kivy.uix.stacklayout import StackLayout
9from kivy.uix.relativelayout import RelativeLayout 10from kivy.uix.relativelayout import RelativeLayout
10from kivy.properties import ListProperty, StringProperty 11from kivy.properties import ListProperty, StringProperty
11from kivy.clock import Clock
12from kivy.core.window import Window 12from kivy.core.window import Window
13from kivy.lang import Builder 13from kivy.lang import Builder
14from .key import Key 14from .key import Key
@@ -16,6 +16,8 @@ from .mapping import Mapping
16 16
17register_fonts() 17register_fonts()
18 18
19from .app_blocks.playlist import *
20
19class KeyList(RelativeLayout): 21class KeyList(RelativeLayout):
20 keylist = ListProperty([]) 22 keylist = ListProperty([])
21 first_key = StringProperty("") 23 first_key = StringProperty("")
@@ -33,33 +35,6 @@ class KeyList(RelativeLayout):
33 if len(self.keylist) > 2: 35 if len(self.keylist) > 2:
34 self.third_key = self.keylist[2] 36 self.third_key = self.keylist[2]
35 37
36class PlayList(RelativeLayout):
37 playlist = ListProperty([])
38
39 def __init__(self, **kwargs):
40 super(PlayList, self).__init__(**kwargs)
41 Clock.schedule_interval(self.update_playlist, 0.5)
42
43 def update_playlist(self, dt):
44 if self.parent is None or 'Mapping' not in self.parent.ids:
45 return True
46
47 open_files = self.parent.ids['Mapping'].open_files
48 self.playlist = []
49 for music_file in open_files.values():
50 if not music_file.is_in_use():
51 continue
52
53 text = "{}/{}".format(
54 duration_to_min_sec(music_file.sound_position),
55 duration_to_min_sec(music_file.sound_duration))
56
57 if music_file.is_loaded_paused():
58 self.playlist.append(["⏸", music_file.name, text, False])
59 else:
60 self.playlist.append(["⏵", music_file.name, text, True])
61
62
63class ActionList(RelativeLayout): 38class ActionList(RelativeLayout):
64 action_title = StringProperty("") 39 action_title = StringProperty("")
65 action_list = ListProperty([]) 40 action_list = ListProperty([])