Changeset 61
- Timestamp:
- 08/12/09 20:06:17 (9 months ago)
- Location:
- trunk
- Files:
-
- 10 edited
-
LiveControl/ClipLauncher.py (modified) (6 diffs)
-
LiveControl/DeviceControl.py (modified) (3 diffs)
-
LiveControl/LiveControl.py (modified) (11 diffs)
-
LiveControl/Looper.py (modified) (2 diffs)
-
LiveControl/MidiFader.py (modified) (1 diff)
-
LiveControl/MultiMode.py (modified) (2 diffs)
-
LiveControl/Scale.py (modified) (1 diff)
-
LiveControl/TrackControl.py (modified) (1 diff)
-
LiveControl/TrackFilter.py (modified) (1 diff)
-
LiveTelnet/LiveTelnet.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LiveControl/ClipLauncher.py
r55 r61 69 69 cb = lambda :self.clip_changestate(clip, tid, cid) 70 70 71 #if clip.playing_status_has_listener(cb) != 1:72 71 if self.clisten.has_key(clip) != 1: 73 72 clip.add_playing_status_listener(cb) … … 77 76 cb = lambda :self.slot_changestate(slot, tid, cid) 78 77 79 #if slot.has_clip_has_listener(cb) != 1:80 78 if self.slisten.has_key(slot) != 1: 81 79 slot.add_has_clip_listener(cb) … … 220 218 cols.append(byte) 221 219 222 elif x == self.width - 1:223 byte = 0224 if self._fx_swap == 1:225 byte |= 1 << self.height - 2226 227 cols.append(byte)228 220 else: 229 221 cols.append(0) … … 285 277 self.build_lcd() 286 278 287 # FX / Track Switch279 # Stop All Clips 288 280 elif (x == self.width - 1 and y == self.height - 2): 289 281 self.song().stop_all_clips() … … 362 354 # Launch Scenes 363 355 elif x == self.width - 1: 364 self.song().scenes[y + self.scene].fire() 356 cur = self.tuple_idx(self.song().scenes, self.song().view.selected_scene) 357 new = cur + y 358 359 if new > 0 and new < len(self.song().scenes): 360 if new == cur: 361 new -= 1 362 363 if self.shift == 1: 364 self.song().view.selected_scene = self.song().scenes[new] 365 366 else: 367 self.song().scenes[new].fire() 365 368 366 369 def build_lcd(self, type = 0): … … 386 389 387 390 tracks = self.song().visible_tracks 388 for i in range(self.twidth): 389 tid = i + self.track 390 slot = tracks[tid].clip_slots[self.scene] 391 392 sep = current == tracks[tid] and "!" or "|" 393 394 if slot.clip != None: 395 title = self.trunc_string(str(slot.clip.name), 8) 396 line1 += title[0:4] + sep 397 line2 += title[4:8] + sep 398 else: 399 line1 += " " + sep 400 line2 += " " + sep 391 for i in range(len(tracks)): 392 if i < self.lcd_width: 393 tid = i + self.track 394 slot = tracks[tid].clip_slots[self.scene] 395 396 sep = current == tracks[tid] and "!" or "|" 397 398 if slot.clip != None: 399 title = self.trunc_string(str(slot.clip.name), 8) 400 line1 += title[0:4] + sep 401 line2 += title[4:8] + sep 402 else: 403 line1 += " " + sep 404 line2 += " " + sep 401 405 402 406 ex = self.trunc_string(name,3) + self.scene_names[self.scene][1].rjust(2) 403 line1 += ex.rjust( 40- len(line1) - len(ex) + 5)404 line2 += self.trunc_string(scln,5).rjust( 40- len(line2))407 line1 += ex.rjust(self.lcd_size - len(line1) - len(ex) + 5) 408 line2 += self.trunc_string(scln,5).rjust(self.lcd_size - len(line2)) 405 409 406 410 self.lcd = [line1,line2] -
trunk/LiveControl/DeviceControl.py
r55 r61 317 317 offset = self.bank * (self.width - 1) + 1 318 318 319 for i in range(self. width - 1):319 for i in range(self.lcd_width): 320 320 pid = i + offset 321 321 if len(device) > pid: … … 325 325 line2 += str(par[1])[0:4].center(4) + "|" 326 326 327 line1 = line1.ljust( 35)328 line2 = line2.ljust( 35)327 line1 = line1.ljust(self.lcd_size - 5) 328 line2 = line2.ljust(self.lcd_size - 5) 329 329 330 330 line1 += "Dev" + str(self.device[1]+1).rjust(2) … … 333 333 line1 = "No Device Selected" 334 334 335 self.lcd = [line1 .ljust(40),line2.ljust(40)]336 335 self.lcd = [line1,line2] 336 -
trunk/LiveControl/LiveControl.py
r59 r61 58 58 height = 8 59 59 60 try: 61 lcd_size = int(config.get("LiveControl", "lcd_size")) 62 except: 63 lcd_size = 40 64 65 lcd_width = (lcd_size / 5) - 1 66 60 67 tr = 0 61 68 sc = 0 … … 68 75 69 76 lcd = ["", ""] 70 71 _fx_swap = 072 _old_track = 073 _old_scene = 074 77 75 78 clisten = {} … … 99 102 100 103 self._menu = 0 101 self._int = [ 0 for i in range(self.width) ] 102 103 self._int[self.width-1] = 1 104 self._mi = 1 104 105 105 106 self.update_lcd = 0 … … 124 125 125 126 # Send LCD init 126 self.oscServer.sendOSC(self.prefix + "/lcd", (self.lcd[0].ljust( 40) + self.lcd[1].ljust(40)))127 self.oscServer.sendOSC(self.prefix + "/lcd", (self.lcd[0].ljust(self.lcd_size) + self.lcd[1].ljust(self.lcd_size))) 127 128 self.c_instance.show_message(re.compile("\s+").sub(" ", self.lcd[0] + self.lcd[1])) 128 129 time.sleep(0.5) … … 218 219 self.do_scene_change(sc) 219 220 self.build_lcd() 220 221 def check_tr_sc(self):222 tr = -1223 sc = -1224 225 for i in range(len(self.prog)):226 if self.prog[i].name == "MultiMode":227 for j in range(len(self.prog[i].mprog)):228 if self.prog[i].mprog[j].update_tr != -1:229 tr = self.prog[i].mprog[j].update_tr230 self.prog[i].mprog[j].update_tr = -1231 232 if self.prog[i].mprog[j].update_sc != -1:233 sc = self.prog[i].mprog[j].update_sc234 self.prog[i].mprog[j].update_sc = -1235 236 else:237 if self.prog[i].update_tr != -1:238 tr = self.prog[i].update_tr239 self.prog[i].update_tr = -1240 241 if self.prog[i].update_sc != -1:242 sc = self.prog[i].update_sc243 self.prog[i].update_sc = -1244 245 for i in range(len(self.prog)):246 if self.prog[i].name != "Scale" and self.prog[i].name != "Drum Rack":247 if self.prog[i].name == "MultiMode":248 for j in range(len(self.prog[i].mprog)):249 if tr != -1:250 self.prog[i].mprog[j].do_track_change(tr)251 252 if sc != -1:253 self.prog[i].mprog[j].do_scene_change(sc)254 255 else:256 if tr != -1:257 self.prog[i].do_track_change(tr)258 259 if sc != -1:260 self.prog[i].do_scene_change(sc)261 262 if tr != -1 or sc != -1:263 self.cur_sel()264 221 265 222 def cur_sel(self): 266 if self.prog[self.mode].name != "Scale" and self.prog[self.mode].name != "Drum Rack": 223 no_up = ["Scale", "Drum Rack", "External"] 224 if self.prog[self.mode].name not in no_up: 267 225 if self.prog[self.mode].name == "MultiMode": 268 226 for j in range(len(self.prog[self.mode].mprog)): 269 227 n = self.prog[self.mode].mprog[j].name 270 if n != "Scale" and n != "Drum Rack"and n != "MultiMode":228 if n not in no_up and n != "MultiMode": 271 229 self.prog[self.mode].mprog[j].update_selection() 272 230 else: … … 367 325 368 326 if self._menu == 1: 369 cols[self.width-1] = self._ int[self.width-1]370 327 cols[self.width-1] = self._mi 328 371 329 for i in range(len(cols)): 372 if cols[i] != self._buffer[i]:373 if self.height > 8:374 self.oscServer.sendOSC(self.prefix + "/led_col", (i, cols[i] & 255, (cols[i] & 65280) >> 8))375 else:376 self.oscServer.sendOSC(self.prefix + "/led_col", (i, cols[i]))377 378 self._buffer[i] = cols[i]330 #if cols[i] != self._buffer[i]: 331 if self.height > 8: 332 self.oscServer.sendOSC(self.prefix + "/led_col", (i, cols[i] & 255, (cols[i] & 65280) >> 8)) 333 else: 334 self.oscServer.sendOSC(self.prefix + "/led_col", (i, cols[i])) 335 336 self._buffer[i] = cols[i] 379 337 380 338 #self.oscServer.sendOSC(self.prefix + "/frame", (self._menu == 1 and self._int or cols)) … … 382 340 current = self.prog[self.mode].lcd 383 341 if current[0] != self._lcdbuffer[0] or current[1] != self._lcdbuffer[1] or reset == 1: 384 self.oscServer.sendOSC(self.prefix + "/lcd", (current[0].ljust( 40) + current[1].ljust(40)))342 self.oscServer.sendOSC(self.prefix + "/lcd", (current[0].ljust(self.lcd_size)[0:self.lcd_size] + current[1].ljust(self.lcd_size)[0:self.lcd_size])) 385 343 self._lcdbuffer = current 386 self.log("\n'" + current[0].ljust( 40) + "'" + "\n" + "'" + current[1].ljust(40) + "'")344 self.log("\n'" + current[0].ljust(self.lcd_size) + "'" + "\n" + "'" + current[1].ljust(self.lcd_size) + "'") 387 345 388 346 if self.oscServer: … … 410 368 else: 411 369 self._menu = 1 412 self._ int[self.width - 1]= 1 << (self.height - 1) | 1 << self.mode370 self._mi = 1 << (self.height - 1) | 1 << self.mode 413 371 self.prog[self.mode].build_lcd(1) 414 372 … … 420 378 self.mode = y 421 379 self.prog[self.mode].build_lcd(1) 422 self._ int[self.width -1]= 1 << (self.height - 1) | 1 << self.mode380 self._mi = 1 << (self.height - 1) | 1 << self.mode 423 381 424 382 elif v == 0: … … 506 464 self.log("Limits Scenes: " + str(scenes) + "sc init " + str(self.sc) + " scene offset: " + str(self.scene) + " scene width: " + str(self.sheight)) 507 465 508 def fx_swap(self):509 if (self._fx_swap == 1):510 self.sc = self._old_scene511 self.tr = 7512 513 self.limits()514 515 self._fx_swap = 0516 self.song().view.selected_track = self.song().visible_tracks[self.track + self.twidth - 1]517 518 else:519 self._old_scene = self.scene520 self.sc = 129521 522 self._old_track = self.track523 self.tr = 0524 525 self.limits()526 527 self._fx_swap = 1528 self.song().view.selected_track = self.song().visible_tracks[self.track]529 530 self.song().view.selected_scene = self.song().scenes[self.scene]531 532 self.log("FX Swap: " + str(self._fx_swap) + " Scene: " + str(self.scene) + " Track: " + str(self.track))533 534 466 ###################################################################### 535 467 ## Helpers … … 556 488 line2 = "" 557 489 tracks = self.song().visible_tracks 558 for i in range(self.twidth): 559 tid = i + self.track 560 tr = self.trunc_string(str(tracks[tid].name), 4) 561 line2 += str(tr) + "|" 490 for i in range(len(tracks)): 491 if i < self.lcd_width: 492 tid = i + self.track 493 tr = self.trunc_string(str(tracks[tid].name), 4) 494 line2 += str(tr) + "|" 562 495 563 496 return [name + (arrow and " >>" or ""), line2] -
trunk/LiveControl/Looper.py
r56 r61 291 291 line1 = "" 292 292 line2 = "" 293 for i in range(self.twidth): 293 tracks = self.song().visible_tracks 294 for i in range(len(tracks)): 294 295 tr = i + self.track 295 if self.visible_tracks.has_key(tr):296 if i < self.lcd_width: 296 297 if self.visible_tracks[tr].cid > -1: 297 298 tt = "%.2f|" % (self.visible_tracks[tr].length / (self.sindex[self.visible_tracks[tr].step_size] * self.height)) … … 302 303 line1 += " |" 303 304 line2 += " |" 304 else: 305 line1 += " |" 306 line2 += " |" 307 308 self.lcd = [line1 + " ",line2 + " "] 305 306 self.lcd = [line1,line2] 309 307 310 308 def do_bg(self): -
trunk/LiveControl/MidiFader.py
r49 r61 226 226 master = self.song().master_track 227 227 tracks = self.song().visible_tracks 228 for i in range(self. width - 1):228 for i in range(self.lcd_width): 229 229 tid = i + (self.bank * (self.width - 1)) 230 230 (rid, pid) = self._get_ids(self.bank, i) -
trunk/LiveControl/MultiMode.py
r55 r61 91 91 self.mprog[i].width = self.modes[self.mode][0] + wplus 92 92 self.mprog[i].height = self.modes[self.mode][1] + hplus 93 94 if self.mode == 0: 95 self.mprog[i].lcd_width = int(self.lcd_width / 2) 96 self.mprog[i].lcd_size = int(self.lcd_size / 2) 97 93 98 self.mprog[i].limits() 94 99 … … 150 155 151 156 if self.mode == 0: 152 self.lcd = [self.mprog[0].lcd[0][0:20] + self.mprog[1].lcd[0][0:20], self.mprog[0].lcd[1][0:20] + self.mprog[1].lcd[1][0:20]] 157 if self.width - 1 > self.lcd_width: 158 self.lcd = [self.mprog[0].lcd[0].ljust(self.lcd_size)[0:self.lcd_size], self.mprog[0].lcd[1].ljust(self.lcd_size)[0:self.lcd_size]] 159 else: 160 sz = self.lcd_size / 2 161 self.lcd = [self.mprog[0].lcd[0].ljust(sz)[0:sz] + self.mprog[1].lcd[0].ljust(sz)[0:sz], self.mprog[0].lcd[1].ljust(sz)[0:sz] + self.mprog[1].lcd[1].ljust(sz)[0:sz]] 153 162 else: 154 163 self.lcd = self.mprog[0].lcd -
trunk/LiveControl/Scale.py
r53 r61 211 211 notes += " Hold" 212 212 213 self.lcd = [rk .rjust(40),notes.ljust(40)]213 self.lcd = [rk,notes] 214 214 215 215 def get_note(self, x, y): -
trunk/LiveControl/TrackControl.py
r55 r61 246 246 tracks = self.song().return_tracks 247 247 for i in range(len(tracks)): 248 line2 += self.trunc_string(str(tracks[i].name), 4) + "|" 248 if i < self.lcd_width: 249 line2 += self.trunc_string(str(tracks[i].name), 4) + "|" 249 250 250 251 self.lcd = self.lcd_tracks(line2, 0) -
trunk/LiveControl/TrackFilter.py
r55 r61 191 191 192 192 tracks = self.song().visible_tracks 193 for i in range(self.twidth): 194 tid = i + self.track 195 key = int(self.device_cache[tid][0]) 196 197 self.log("track: " + str(i) + " key: " +str(key)) 198 199 line1 += key == 0 and " |" or "%.2f|" % ((float(self.device_cache[tid][2]) / float(127)) * 3.00) 200 201 if self.types.has_key(key): 202 line2 += self.types[key].center(4) + "|" 203 else: 204 line2 += "".ljust(4) + "|" 193 for i in range(len(tracks)): 194 if i < self.lcd_width: 195 tid = i + self.track 196 key = int(self.device_cache[tid][0]) 197 198 self.log("track: " + str(i) + " key: " +str(key)) 199 200 line1 += key == 0 and " |" or "%.2f|" % ((float(self.device_cache[tid][2]) / float(127)) * 3.00) 201 202 if self.types.has_key(key): 203 line2 += self.types[key].center(4) + "|" 204 else: 205 line2 += " |" 205 206 206 207 self.lcd = [line1,line2] -
trunk/LiveTelnet/LiveTelnet.py
r57 r61 43 43 44 44 import Live 45 import S ocketServer, StringIO, code45 import StringIO, code 46 46 from Logger import Logger 47 47
Note: See TracChangeset
for help on using the changeset viewer.
