2 #:import h music_sampler
5 pad_col_sep: 0 if not self.pad_cols else self.parent.pad_x
8 y: (self.parent.top-self.parent.y) - (self.row) * self.parent.key_size - (self.row - 1) * self.parent.key_sep
9 x: (self.col - 1) * self.parent.key_size + int(self.col - 1) * self.parent.key_sep + self.pad_col_sep
19 width: self.key_width * (self.parent.key_size + self.parent.key_sep) - self.parent.key_sep
20 height: self.key_height * (self.parent.key_size + self.parent.key_sep) - self.parent.key_sep
31 rounded_rectangle: self.x + self.line_width, self.y + self.line_width, self.width - 2 * self.line_width, self.height - 2 * self.line_width, 10
32 width: self.line_width
34 rgba: self.line_cross_color
36 points: self.x + self.line_width + 3, self.y + self.line_width + 3, self.x + self.width - 2 * self.line_width - 3, self.y + self.height - 2 * self.line_width - 3
37 width: self.line_width
39 points: self.x + self.line_width + 3, self.y + self.height - 2 * self.line_width - 3, self.x + self.width - 2 * self.line_width - 3, self.y + self.line_width + 3
40 width: self.line_width
45 font_size: math.ceil(2 * math.sqrt(self.parent.parent.key_size))
47 text: self.parent.key_sym
48 text_size: self.parent.width,self.font_size
52 center_x: self.parent.x + self.texture_size[0] /2 + 5
53 center_y: self.parent.y + self.parent.height - self.texture_size[1] /2 - 5
55 id: key_description_title
57 font_size: math.ceil(2 * math.sqrt(self.parent.parent.key_size / 2))
59 text: self.parent.description_title
60 text_size: self.parent.width - 2*self.parent.line_width, self.font_size
63 center_x: self.parent.x + self.texture_size[0] /2
64 center_y: self.parent.y + self.parent.height - self.texture_size[1] /2 - 5
68 font_size: math.ceil(2 * math.sqrt(self.parent.parent.key_size / 2))
70 text: "\n".join(self.parent.description)
71 text_size: 2 * self.parent.width,self.parent.height - key_label.font_size
74 pos: self.parent.x + 2 * self.parent.line_width + 2, self.parent.y
76 size: 2 * self.parent.width - 2 * self.parent.line_width, self.parent.height - key_label.font_size
81 rgba: 229/255, 228/255, 226/255, 1
84 size: self.width, self.height
86 key_size: int( (3 * self.width - 16) / 56)
87 key_sep: int( self.key_size / 24)
88 key_pad_sep: int( self.key_size / 7) + 1
90 border: (self.width - self.key_size * 18 - self.key_sep * 16 - self.key_pad_sep)/ 2
92 mapping_height: self.key_size * 6 + self.key_sep * 5
93 mapping_width: self.key_size * 18 + self.key_sep * 16 + self.key_pad_sep
94 mapping_x: self.border
95 mapping_y: self.top - self.mapping_height - self.border
97 key_list_width: 4 * (mock_ubuntu_regular.width or 0)
98 key_list_height: self.height - self.mapping_height - 3 * self.border
99 key_list_x: (self.action_list_width or 0) + 2 * self.border
100 key_list_y: self.border
102 action_list_height: self.height - self.mapping_height - 3 * self.border
103 action_list_width: 3 * self.width / 4 - self.key_list_width - self.border
104 action_list_x: self.border
105 action_list_y: self.border
107 play_list_height: self.action_list_height
108 play_list_width: self.width - self.key_list_width - self.action_list_width - 4* self.border
109 play_list_y: self.border
110 play_list_x: self.action_list_width + self.key_list_width + 3 * self.border
112 max_height: max(mock_symbola.height, mock_ubuntu_regular.height, mock_ubuntu_bold.height)
113 min_height: min(mock_symbola.height, mock_ubuntu_regular.height, mock_ubuntu_bold.height)
114 symbola_line_height: self.min_height / max(mock_symbola.height,1)
115 ubuntu_regular_line_height: self.min_height / max(mock_ubuntu_regular.height,1)
116 ubuntu_bold_line_height: self.min_height / max(mock_ubuntu_bold.height,1)
121 font_size: math.ceil(2 * math.sqrt(self.parent.key_size or 10))
124 text_size: None, None
125 size_hint: None, None
126 size: self.texture_size
128 id: mock_ubuntu_regular
130 font_size: math.ceil(2 * math.sqrt(self.parent.key_size or 10))
133 text_size: None, None
134 size_hint: None, None
135 size: self.texture_size
140 font_size: math.ceil(2 * math.sqrt(self.parent.key_size or 10))
143 text_size: None, None
144 size_hint: None, None
145 size: self.texture_size
149 pos: self.parent.mapping_x, self.parent.mapping_y
150 size: self.parent.mapping_width, self.parent.mapping_height
152 key_size: self.parent.key_size
153 key_sep: self.parent.key_sep
154 key_pad_sep: self.parent.key_pad_sep
155 pad_x: self.key_size * 15 + 14 * self.key_sep + self.key_pad_sep
158 pos: self.parent.action_list_x, self.parent.action_list_y
159 size: self.parent.action_list_width, self.parent.action_list_height
162 pos: self.parent.key_list_x, self.parent.key_list_y
163 size: self.parent.key_list_width, self.parent.key_list_height
166 pos: self.parent.play_list_x, self.parent.play_list_y
167 size: self.parent.play_list_width, self.parent.play_list_height
170 size_hint: None, None
173 rgba: 250./255, 250./255, 250./255, 1
176 size: self.width, self.height
181 font_size: math.ceil(2 * math.sqrt(self.parent.parent.key_size or 10))
183 text: self.parent.first_key
184 text_size: None, None
187 size_hint: None, None
188 size: self.parent.width, self.texture_size[1]
189 pos: 0, self.parent.height - self.height
193 font_size: math.ceil(2 * math.sqrt(self.parent.parent.key_size or 10))
195 text: self.parent.second_key
196 text_size: None, None
199 size_hint: None, None
200 size: self.parent.width, self.texture_size[1]
201 pos: 0, self.parent.height - key_list_first.height - self.height
205 font_size: math.ceil(2 * math.sqrt(self.parent.parent.key_size or 10))
207 text: self.parent.third_key
208 text_size: None, None
211 size_hint: None, None
212 size: self.parent.width, self.texture_size[1]
213 pos: 0, self.parent.height - key_list_first.height - key_list_second.height - self.height
217 font_size: math.ceil(2 * math.sqrt(self.parent.parent.key_size or 10))
219 text: "\n".join(self.parent.keylist[3:])
220 text_size: None, None
223 size_hint: None, None
224 size: self.parent.width, self.texture_size[1]
225 pos: 0, self.parent.height - key_list_first.height - key_list_second.height - key_list_third.height - self.height
228 size_hint: None, None
231 rgba: 250./255, 250./255, 250./255, 1
234 size: self.width, self.height
237 id: action_list_title
240 font_size: math.ceil(2 * math.sqrt(self.parent.parent.key_size or 10))
242 text: self.parent.action_title
243 text_size: None, self.parent.height
246 size_hint: None, None
247 size: self.texture_size[0], self.parent.height
249 id: action_list_icons
251 font_size: math.ceil(2 * math.sqrt(self.parent.parent.key_size or 10))
252 line_height: self.parent.parent.symbola_line_height or 1
254 text: "\n".join(map(lambda x: x[0], self.parent.action_list))
255 text_size: None, self.parent.height
258 size_hint: None, None
259 size: self.texture_size[0], self.parent.height - 3 * self.line_height * self.font_size
261 id: action_list_names
263 font_size: math.ceil(2 * math.sqrt(self.parent.parent.key_size or 10))
264 line_height: self.parent.parent.ubuntu_regular_line_height or 1
266 text: "\n".join(map(lambda x: x[1], self.parent.action_list))
267 text_size: None, self.parent.height
270 size_hint: None, None
272 size: self.texture_size[0], self.parent.height - 3 * self.line_height * self.font_size
275 size_hint: None, None
276 labels_height: self.parent.max_height or 1
279 rgba: 250./255, 250./255, 250./255, 1
282 size: self.width, self.height
286 pos_hints: { 'x': 0, 'top': 0 }
289 pos_hint: { 'x': 0.05, 'bottom': 0 }
293 pos_hint: { 'x': 0.7, 'bottom': 0 }
299 text_size: None, None
302 width: self.texture_size[0]
307 text_size: None, None
309 size_hint: None, None
310 width: self.texture_size[0]
315 rgba: 250./255, 250./255, 250./255, 1
318 size: self.width, self.height
321 text_size: None, None
323 size_hint: None, None
324 width: self.texture_size[0]
327 size_hint: None, None
334 rgba: 250./255, 250./255, 250./255, 1
337 size: self.width, self.height
339 rgba: self.ready_color
341 pos: self.width - self.key_size / 2, self.height - self.key_size /2
342 size: self.key_size / 3, self.key_size / 3
345 font_size: math.ceil(2 * math.sqrt(self.parent.key_size or 10))
347 text: "volume: {}%".format(self.parent.master_volume)
349 size_hint: None, None
350 size: self.texture_size[0], self.texture_size[1]
351 x: self.parent.width - self.width - 2 * self.parent.key_size / 3
352 center_y: self.parent.height - self.height