Changeset - a995fd1a8f03
[Not reviewed]
default
0 11 0
dmcc - 22 years ago 2002-07-14 02:44:27

result of 7.12 performance
11 files changed with 404 insertions and 34 deletions:
0 comments (0 inline, 0 general)
light8/Config.py
Show inline comments
 
from __future__ import generators,division
 
from random import randrange
 
from time import time
 
import os
 
from __future__ import generators,division
 
from Subs import *
 
from Cue import *
 

	
 
from Configeffects import *
 

	
 
f1 = Fade('bogus sub, i hope', 0, 2, 0.1)
 
@@ -75,12 +74,296 @@ from util import maxes,scaledict
 
FL=100
 
def fulls(chans):
 
    # pass a list or multiple args
 
    return dict([(c,FL) for c in chans])
 
def levs(chans,levs):
 
    return dict([(c,v) for c,v in zip(chans,levs)])
 
subs={}
 

	
 
subs[('col blue', 'blue')]={ 'blue1': 100, 'blue2': 100, 'blue3': 100, 'blue4': 100, }
 

	
 
subs[('col gree', 'green')]={ 'gree1': 100, 'gree2': 100, 'gree3': 100, 'gree4': 100, }
 

	
 
subs[('col oran', '#EEEE99')]={ 'oran1': 100, 'oran2': 100, 'oran3': 100, 'oran4': 100, }
 

	
 
subs[('col red', 'red')]={ 'red1': 100, 'red2': 100, 'red3': 100, 'red4': 100, }
 

	
 
subs[('house', 'black')]={ 'house': 100, }
 

	
 
subs['*1-01-0']={ 'b22': 100, 'b24': 100, 'b25': 100, 'b34': 100, 'cycleft': 41, 'cycright': 41, 'desk2': 78, 'edge': 80, 'hotbox1': 43, 'hotbox2': 91, 'main 10': 100, 'main 11': 100, 'main 2': 100, 'main 3': 100, 'main 4': 100, 'main 5': 100, 'main 7': 100, 'main 8': 100, 'main 9': 100, 'marry1': 100, 'marry2': 100, 'side l': 100, 'side r': 100, 'sidefill1': 100, 'sidefill2': 100, 'upfill1': 56, 'upfill2': 91, 'upfill3': 60, 'upfill4': 68, }
 

	
 
subs['*1-01-9 end conversations']={ 'b22': 63, 'b23': 12, 'b24': 42, 'b25': 63, 'b34': 63, 'cuba1': 63, 'cuba2': 42, 'cycleft': 25, 'cycright': 25, 'desk2': 12, 'edge': 13, 'hotbox1': 37, 'hotbox2': 63, 'main 10': 63, 'main 11': 63, 'main 2': 63, 'main 3': 26, 'main 4': 63, 'main 5': 100, 'main 7': 63, 'main 8': 63, 'main 9': 63, 'marry1': 100, 'marry2': 63, 'side l': 63, 'side r': 63, 'sidefill1': 26, 'sidefill2': 63, 'upfill1': 29, 'upfill2': 63, 'upfill3': 43, 'upfill4': 29, }
 

	
 
subs['*1-02-0']={ 'b22': 100, 'b23': 100, 'b24': 100, 'b32': 14, 'cuba2': 38, 'cycright': 63, 'desk1': 53, 'desk2': 65, 'hotbox1': 25, 'hotbox2': 100, 'main 10': 100, 'main 11': 100, 'main 4': 100, 'main 5': 70, 'main 7': 100, 'main 8': 100, 'main 9': 100, 'marry1': 61, 'marry2': 47, 'rock': 23, 'sidefill2': 51, 'upfill2': 6, 'upfill3': 55, }
 

	
 
subs['*1-02-1 desk solo']={ 'b22': 100, 'b23': 100, 'b24': 22, 'cycright': 37, 'desk1': 53, 'desk2': 89, 'hotbox1': 25, 'hotbox2': 7, 'main 10': 22, 'main 11': 22, 'main 3': 9, 'main 4': 22, 'main 7': 100, 'main 8': 22, 'main 9': 22, 'marry1': 61, 'marry2': 22, 'rock': 14, }
 

	
 
subs['*1-03-0']={ 'phone': 100, 'upfill2':50, 'upfill3':50, }
 

	
 
subs['*1-04-00-dance']={ 'b32': 43, 'b34': 30, 'cycleft': 19, 'cycright': 19, 'desk2': 24, 'hotback': 100, 'hotbox1': 42, 'hotbox2': 78, 'main 10': 100, 'main 11': 46, 'main 2': 46, 'main 3': 46, 'main 4': 46, 'main 5': 100, 'main 7': 100, 'main 8': 46, 'main 9': 46, 'red1': 100, 'red2': 100, 'red3': 100, 'red4': 100, 'upfill1': 26, 'upfill2': 46, 'upfill3': 32, 'upfill4': 26, }
 

	
 
subs['*1-04-01 dark tables']={ 'b23': 67, 'b24': 67, 'b32': 2, 'b34': 12, 'blue1': 33, 'blue2': 33, 'blue3': 33, 'blue4': 33, 'cycleft': 19, 'cycright': 19, 'desk2': 24, 'edge': 9, 'hotback': 100, 'hotbox1': 46, 'hotbox2': 45, 'main 10': 100, 'main 11': 46, 'main 2': 46, 'main 3': 13, 'main 4': 100, 'main 7': 100, 'main 8': 29, 'main 9': 100, 'red1': 100, 'red2': 100, 'red3': 100, 'red4': 100, 'upfill1': 26, 'upfill4': 26, }
 

	
 
subs['*1-04-02 solo ada']={ 'b23': 62, 'b24': 100, 'b32': 2, 'b34': 12, 'blue1': 33, 'blue2': 33, 'blue3': 33, 'blue4': 33, 'cycleft': 19, 'cycright': 19, 'desk2': 24, 'hotback': 100, 'hotbox1': 32, 'hotbox2': 24, 'main 10': 11, 'main 11': 2, 'main 2': 13, 'main 4': 100, 'main 7': 100, 'main 9': 61, 'red1': 100, 'red2': 100, 'red3': 100, 'red4': 100, 'upfill1': 26, 'upfill4': 26, }
 

	
 
subs['*1-04-10-after dance']={ 'b32': 43, 'b34': 30, 'cycleft': 19, 'cycright': 19, 'desk2': 24, 'hotback': 100, 'hotbox1': 42, 'hotbox2': 78, 'main 10': 100, 'main 11': 46, 'main 2': 46, 'main 3': 46, 'main 4': 46, 'main 5': 100, 'main 7': 100, 'main 8': 46, 'main 9': 46, 'red1': 100, 'red2': 100, 'red3': 100, 'red4': 100, 'upfill1': 26, 'upfill2': 46, 'upfill3': 32, 'upfill4': 26, }
 

	
 
subs['*1-04-20-table']={ 'b22': 100, 'cuba1': 22, 'desk2': 58, 'hotbox2': 46, 'main 2': 62, 'main 3': 80, 'main 4': 100, 'main 5': 34, 'main 7': 10, 'main 8': 10, 'main 9': 64, 'red1': 100, 'rock': 22, }
 

	
 
subs['*1-04-30-small table']={ 'b22': 100, 'desk1': 50, 'desk2': 34, 'red1': 100, 'upfill1': 62, 'upfill4': 62, }
 

	
 
subs['*1-05-0']={ 'b13': 100, 'b22': 100, 'b23': 100, 'b24': 100, 'b25': 100, 'b34': 13, 'cycleft': 18, 'cycright': 36, 'desk1': 19, 'desk2': 31, 'edge': 37, 'hotbox2': 17, 'main 10': 100, 'main 11': 89, 'main 2': 100, 'main 3': 85, 'main 4': 100, 'main 5': 100, 'main 7': 100, 'main 8': 100, 'main 9': 100, 'side l': 100, 'side r': 82, 'sidefill1': 100, 'sidefill2': 100, 'upfill2': 37, 'upfill3': 37, }
 

	
 
subs['*1-06-0']={ 'b22': 49, 'b23': 100, 'b24': 100, 'b25': 100, 'b32': 80, 'b34': 100, 'cycright': 53, 'desk2': 78, 'hotbox2': 100, 'main 10': 100, 'main 11': 100, 'main 2': 100, 'main 5': 100, 'main 7': 100, 'main 8': 100, 'main 9': 100, 'marry2': 100, 'rock': 60, 'side l': 100, 'side r': 100, 'sidefill1': 59, 'sidefill2': 100, }
 

	
 
subs['*1-07-0']={ 'b22': 82, 'b23': 100, 'b24': 100, 'b25': 64, 'b34': 28, 'blue1': 93, 'blue2': 93, 'blue3': 93, 'blue4': 93, 'edge': 12, 'hotbox2': 11, 'main 10': 37, 'main 11': 37, 'main 2': 37, 'main 3': 25, 'main 4': 37, 'main 5': 37, 'main 7': 37, 'main 8': 37, 'main 9': 37, 'marry1': 37, 'side l': 49, 'side r': 36, 'sidefill1': 37, 'sidefill2': 37, 'upfill2': 18, 'upfill3': 6, }
 

	
 
subs['*1-08-00-left cafe']={ 'b22': 40, 'cafe1': 71, 'edge': 41, }
 

	
 
subs['*1-08-10-right cafe']={ 'b32': 10, 'b34': 31, 'cafe2': 100, 'cuba1': 53, 'cuba2': 76, }
 

	
 
subs['*1-08-10-centerwalk']={ 'b23': 100, 'b24': 100, }
 

	
 
subs['*1-08-10-rightwalk']={ 'b25': 100, }
 

	
 
subs['*1-08-20-backdrop']={ 'upfill1': 100, 'upfill2': 100, 'upfill3': 100, 'upfill4': 100, }
 

	
 
subs['*1-08-30-full']={ 'b22': 100, 'b23': 100, 'b24': 100, 'b25': 100, 'b32': 23, 'b34': 24, 'blue1': 15, 'blue2': 15, 'blue3': 15, 'blue4': 15, 'cafe1': 100, 'cafe2': 50, 'cycleft': 15, 'cycright': 15, 'desk2': 30, 'edge': 31, 'gree1': 15, 'gree2': 15, 'gree3': 15, 'gree4': 15, 'hotbox1': 38, 'hotbox2': 38, 'main 10': 38, 'main 11': 38, 'main 2': 38, 'main 3': 38, 'main 4': 38, 'main 5': 38, 'main 7': 38, 'main 8': 38, 'main 9': 38, 'marry1': 38, 'marry2': 38, 'oran1': 82, 'oran2': 82, 'oran3': 82, 'oran4': 82, 'phone': 31, 'red1': 77, 'red2': 77, 'red3': 77, 'red4': 95, 'side l': 38, 'side r': 38, 'sidefill1': 38, 'sidefill2': 38, 'upfill1': 100, 'upfill2': 100, 'upfill3': 100, 'upfill4': 100, }
 

	
 
subs['*1-09-0']={ 'b22': 32, 'b23': 21, 'b24': 21, 'b25': 62, 'b34': 9, 'blue1': 92, 'blue2': 92, 'blue3': 92, 'blue4': 92, 'cafe1': 37, 'cafe2': 37, 'desk2': 16, 'gree1': 53, 'gree2': 53, 'gree3': 53, 'gree4': 53, 'main 10': 43, 'main 11': 37, 'main 2': 61, 'main 5': 64, 'main 8': 47, 'main 9': 38, 'marry2': 9, 'oran1': 31, 'oran2': 31, 'oran3': 31, 'oran4': 31, 'red1': 100, 'red2': 100, 'red3': 100, 'red4': 100, 'upfill1': 30, 'upfill2': 43, 'upfill3': 43, 'upfill4': 30, }
 

	
 
subs['*1-10-0']={ 'b13': 15, 'b22': 44, 'b23': 20, 'b24': 34, 'b25': 34, 'b32': 27, 'b34': 34, 'blue1': 84, 'blue2': 54, 'cuba1': 5, 'desk1': 17, 'desk2': 11, 'hotbox2': 34, 'main 10': 34, 'main 11': 34, 'main 2': 34, 'main 3': 25, 'main 4': 25, 'main 5': 34, 'main 7': 34, 'main 8': 34, 'main 9': 34, 'rock': 3, 'side l': 23, 'side r': 14, 'sidefill1': 6, 'sidefill2': 23, }
 

	
 
subs['*2-01-0-dance']={ 'b32': 43, 'b34': 30, 'cycleft': 19, 'cycright': 19, 'desk2': 24, 'hotback': 100, 'hotbox1': 42, 'hotbox2': 78, 'main 10': 100, 'main 11': 46, 'main 2': 46, 'main 3': 46, 'main 4': 46, 'main 5': 100, 'main 7': 100, 'main 8': 46, 'main 9': 46, 'red1': 100, 'red2': 100, 'red3': 100, 'red4': 100, 'upfill1': 26, 'upfill2': 46, 'upfill3': 32, 'upfill4': 26, }
 

	
 
subs['*2-01-01-solo']={ 'b23': 100, 'b24': 100, 'b32': 43, 'cycleft': 55, 'cycright': 55, 'desk2': 24, 'hotback': 100, 'hotbox1': 42, 'hotbox2': 78, 'main 7': 100, 'red1': 100, 'red2': 100, 'red3': 100, 'red4': 100, 'upfill1': 67, 'upfill2': 1, 'upfill4': 67, }
 

	
 
subs['*2-01-1-after dance']={ 'b32': 43, 'b34': 30, 'cycleft': 19, 'cycright': 19, 'desk2': 24, 'hotback': 100, 'hotbox1': 42, 'hotbox2': 78, 'main 10': 100, 'main 11': 46, 'main 2': 46, 'main 3': 46, 'main 4': 46, 'main 5': 100, 'main 7': 100, 'main 8': 46, 'main 9': 46, 'red1': 100, 'red2': 100, 'red3': 100, 'red4': 100, 'upfill1': 26, 'upfill2': 46, 'upfill3': 32, 'upfill4': 26, }
 

	
 
subs['*2-01-1-darker dance']={ 'b23': 93, 'b24': 93, 'b32': 4, 'b34': 9, 'cycleft': 19, 'cycright': 19, 'desk2': 10, 'hotback': 100, 'hotbox1': 42, 'hotbox2': 52, 'red1': 100, 'red2': 100, 'red3': 100, 'red4': 100, 'upfill4': 26, }
 

	
 
subs['*2-01-2-table']={ 'b22': 100, 'cuba1': 22, 'desk2': 58, 'hotbox2': 46, 'main 2': 62, 'main 3': 80, 'main 4': 100, 'main 5': 34, 'main 7': 10, 'main 8': 10, 'main 9': 64, 'red1': 100, 'rock': 22, 'upfill1': 76, 'upfill2': 76, 'upfill3': 76, 'upfill4': 76, }
 

	
 
subs['*2-01-3-small table']={ 'b22': 56, 'b25': 5, 'desk1': 47, 'desk2': 58, 'main 3': 18, 'main 9': 11, 'red1': 100, 'upfill1': 62, 'upfill4': 62, }
 

	
 
subs['*2-02-0']={ 'b23': 76, 'b24': 52, 'main 10': 53, 'main 2': 53, 'main 4': 24, 'main 5': 18, 'main 7': 42, 'main 8': 36, 'main 9': 60, 'marry2': 38, 'side r': 34, }
 

	
 
subs['*2-02-1-works']={'upfill2':50,'upfill3':50,'cycright':50}
 

	
 
subs['*2-03-00-open dance']={ 'b22': 11, 'blue1': 70, 'blue2': 70, 'blue3': 70, 'blue4': 92, 'cuba1': 20, 'gree1': 75, 'gree2': 75, 'gree3': 75, 'gree4': 75, 'hotback': 40, 'main 10': 40, 'main 11': 28, 'main 2': 60, 'main 4': 45, 'main 5': 20, 'main 8': 26, 'main 9': 42, 'red1': 75, 'red2': 75, 'red3': 75, 'red4': 97, 'side l': 31, 'side r': 31, 'upfill1': 27, 'upfill2': 31, 'upfill3': 26, 'upfill4': 17, }
 

	
 
subs['*2-03-10-dialogue']={ 'b13': 60, 'b22': 62, 'b23': 64, 'b24': 19, 'b25': 16, 'blue1': 70, 'blue2': 70, 'blue3': 70, 'blue4': 92, 'cuba1': 59, 'gree1': 75, 'gree2': 75, 'gree3': 75, 'gree4': 75, 'hotback': 40, 'main 10': 48, 'main 11': 40, 'main 2': 54, 'main 4': 45, 'main 5': 20, 'main 8': 22, 'main 9': 73, 'red1': 75, 'red2': 75, 'red3': 75, 'red4': 97, 'side l': 31, 'side r': 31, 'sidefill1': 20, 'sidefill2': 20, 'upfill1': 27, 'upfill2': 31, 'upfill3': 26, 'upfill4': 17, }
 

	
 
subs['*2-03-20-luckcover']={ 'b22': 20, 'b23': 20, 'b24': 20, 'b25': 20, 'blue1': 70, 'blue2': 70, 'blue3': 70, 'blue4': 92, 'cuba1': 5, 'gree1': 75, 'gree2': 75, 'gree3': 75, 'gree4': 75, 'hotback': 40, 'main 7': 100, 'main 8': 57, 'red1': 75, 'red2': 75, 'red3': 75, 'red4': 97, 'side l': 31, 'side r': 31, 'upfill1': 27, 'upfill2': 31, 'upfill3': 26, 'upfill4': 17, }
 

	
 
subs['*2-03-20-luck-l']={ 'b22': 100, }
 

	
 
subs['*2-03-20-luck-c']={ 'b23': 100, 'b24': 100, }
 

	
 
subs['*2-03-20-luck-r']={ 'b25': 100, }
 

	
 
subs['*2-04-0']={ 'b13': 39, 'b22': 50, 'b23': 67, 'b24': 67, 'b25': 71, 'b32': 57, 'b34': 34, 'blue1': 63, 'blue2': 63, 'blue3': 63, 'blue4': 63, 'cycright': 18, 'desk1': 24, 'desk2': 26, 'hotbox2': 59, 'main 10': 5, 'main 11': 5, 'main 2': 5, 'main 3': 45, 'main 5': 56, 'main 7': 5, 'main 8': 5, 'main 9': 5, 'marry2': 50, 'rock': 20, 'side r': 34, 'upfill1': 70, 'upfill4': 70, }
 

	
 
subs['*2-05-0']={ 'b22': 100, 'b23': 100, 'b24': 100, 'b32': 14, 'cuba2': 9, 'desk1': 53, 'desk2': 65, 'hotbox1': 25, 'hotbox2': 100, 'main 10': 100, 'main 11': 100, 'main 4': 100, 'main 5': 70, 'main 7': 100, 'main 8': 100, 'main 9': 100, 'marry1': 61, 'marry2': 47, 'rock': 23, 'sidefill2': 25, 'upfill2': 6, 'upfill3': 34, }
 

	
 
subs['*2-05-1-dream']={ 'desk2': 42, 'dream': 100, 'main 11': 7, 'upfill2': 16, }
 

	
 
subs['*2-05-2-boat']={ 'b22': 100, 'b23': 100, 'b24': 100, 'b32': 52, 'cuba2': 65, 'cycright': 55, 'desk1': 44, 'desk2': 84, 'hotbox1': 21, 'hotbox2': 95, 'main 10': 84, 'main 11': 84, 'main 3': 72, 'main 4': 100, 'main 5': 83, 'main 7': 100, 'main 8': 100, 'main 9': 100, 'marry1': 75, 'marry2': 100, 'rock': 43, 'sidefill2': 43, 'upfill2': 55, 'upfill3': 31, }
 

	
 
subs['*2-06-0']={ 'b22': 14, 'b23': 100, 'b24': 100, 'b32': 23, 'b34': 30, 'cycright': 100, 'desk2': 23, 'hotbox1': 49, 'hotbox2': 43, 'main 10': 55, 'main 11': 55, 'main 2': 30, 'main 7': 30, 'main 9': 30, 'marry1': 69, 'marry2': 34, 'rock': 17, 'side r': 30, 'upfill1': 48, 'upfill4': 48, }
 

	
 
subs['*2-06-1-patio right']={ 'patio2': 100, }
 

	
 
subs['*2-06-2 patio left']={ 'patio1': 100, }
 

	
 
subs['*2-07-0']={ 'b22': 100, 'b23': 100, 'b24': 100, 'b25': 100, 'b34': 100, 'cycleft': 41, 'cycright': 41, 'desk2': 78, 'edge': 63, 'hotbox1': 14, 'hotbox2': 5, 'main 10': 100, 'main 11': 100, 'main 2': 100, 'main 3': 83, 'main 4': 100, 'main 5': 100, 'main 7': 100, 'main 8': 100, 'main 9': 100, 'marry1': 100, 'marry2': 100, 'phone': 62, 'side l': 100, 'side r': 100, 'sidefill1': 83, 'sidefill2': 100, 'upfill1': 56, 'upfill2': 100, 'upfill3': 69, 'upfill4': 56, }
 

	
 
subs['*curtain']={ 'b22': 73, 'b24': 73, 'b25': 73, 'b34': 73, 'desk2': 57, 'edge': 58, 'hotbox2': 73, 'main 10': 73, 'main 11': 73, 'main 2': 73, 'main 3': 73, 'main 4': 73, 'main 5': 73, 'main 7': 73, 'main 8': 73, 'main 9': 73, 'marry1': 73, 'marry2': 73, 'phone': 58, 'side l': 73, 'side r': 73, 'sidefill1': 23, 'sidefill2': 23, 'upfill1': 9, 'upfill2': 68, 'upfill3': 18, 'upfill4': 9, }
 

	
 
subs['*phone booth']={ 'phone': 100, }
 

	
 
subs['*spare']={ }
 

	
 
subs['bank1ctr']={ 'b22': 100, 'b23': 100, 'b24': 100, 'b25': 100, }
 

	
 
subs['cyc']={ 'cycleft': 100, 'cycright': 100, }
 

	
 
subs['god']={ 'god': 100, }
 

	
 
subs['patio left']={ 'patio1': 100, }
 

	
 
subs['patio right']={ 'patio2': 100, }
 

	
 
subs['sidefill']={ 'sidefill1': 100, 'sidefill2': 100, }
 

	
 
subs['sidepost']={ 'side l': 100, 'side r': 100, }
 

	
 
subs['upfill sides']={ 'upfill1': 100, 'upfill4': 100, }
 

	
 
# instead of import, we exec to maintain a single namespace
 
the_dir_of_this_module=os.path.dirname(__file__)
 
execfile(os.path.join(the_dir_of_this_module,"Configsubs.py"))
 

	
 
subs["*interscene"] = {}
 
subs["*interscene"] = { "blue1" : 49, "blue3" : 49, "blue2" : 49,
 
    "blue4" : 49,}
 
subs["*1-08-30-full"] = { "cycright" : 15, "main 11" : 38, "main 10" : 38,
 
    "upfill1" : 0, "sidefill2" : 38, "b25" : 100, "side l" : 38,
 
    "b23" : 100, "b22" : 100, "desk2" : 30, "oran3" : 82, "upfill4" : 0,
 
    "side r" : 38, "upfill3" : 0, "blue3" : 15, "upfill2" : 0, "gree2" : 15,
 
    "gree3" : 15, "cafe2" : 100, "gree1" : 15, "gree4" : 15, "marry2" : 38,
 
    "marry1" : 38, "cuba1" : 100, "cuba2" : 100, "red3" : 77, "red2" : 77,
 
    "sidefill1" : 38, "b24" : 100, "red4" : 95, "b34" : 54, "cycleft" : 15,
 
    "b32" : 43, "hotbox2" : 38, "hotbox1" : 38, "blue1" : 15, "oran2" : 82,
 
    "oran1" : 82, "blue2" : 15, "blue4" : 15, "oran4" : 82, "main 3" : 38,
 
    "main 2" : 38, "main 5" : 38, "main 4" : 38, "main 7" : 38, "phone" : 31,
 
    "main 9" : 38, "main 8" : 38, "edge" : 31, "cafe1" : 100, "red1" : 77,}
 
subs["*2-03-20-luck-c"] = { "hotbox2" : 0, "b23" : 100, "b24" : 100,
 
    "main 5" : 52, "marry2" : 37,}
 
subs["*2-07-0"] = { "sidefill2" : 100, "sidefill1" : 83, "cycright" : 41,
 
    "main 11" : 100, "main 10" : 100, "upfill1" : 56, "b34" : 100,
 
    "b25" : 100, "cycleft" : 41, "b23" : 100, "b22" : 100, "side l" : 100,
 
    "hotbox2" : 5, "hotbox1" : 14, "upfill4" : 56, "b24" : 100, "desk2" : 78,
 
    "upfill3" : 69, "upfill2" : 100, "main 3" : 83, "main 2" : 100,
 
    "main 5" : 100, "main 4" : 100, "main 7" : 100, "phone" : 62,
 
    "main 9" : 100, "main 8" : 100, "edge" : 63, "marry2" : 100,
 
    "marry1" : 100, "xmas" : 80, "side r" : 100,}
 
subs["*1-01-0-sarah"] = { "sidefill2" : 100, "sidefill1" : 100,
 
    "cycright" : 41, "upfill3" : 60, "upfill2" : 91, "upfill1" : 56,
 
    "side l" : 100,  "b25" : 100, "cycleft" : 41, "b22" : 100,
 
    "desk2" : 78, "phone" : 80, "hotbox1" : 43, "upfill4" : 68, "b24" : 100,
 
    "side r" : 100, "main 11" : 100, "main 10" : 100, "main 3" : 100,
 
    "main 2" : 100, "main 5" : 100, "main 4" : 100, "main 7" : 100,
 
    "hotbox2" : 91, "main 9" : 100, "main 8" : 100, "b34" : 100,
 
    "edge" : 80, "marry2" : 100, "marry1" : 100,}
 
subs["*1-01-0-sarah"] = { "sidefill2" : 37, "sidefill1" : 39,
 
    "cycright" : 24, "upfill3" : 31, "upfill2" : 62, "upfill1" : 27,
 
    "b34" : 34, "b25" : 100, "side l" : 50, "b22" : 89,
 
    "desk2" : 30, "phone" : 80, "hotbox1" : 43, "upfill4" : 39, "b24" : 100,
 
    "side r" : 46, "main 11" : 100, "main 10" : 100, "main 3" : 5,
 
    "main 2" : 92, "main 5" : 100, "main 4" : 100, "main 7" : 100,
 
    "hotbox2" : 52, "main 9" : 58, "main 8" : 0, "cycleft" : 24,
 
    "edge" : 24, "marry2" : 71, "marry1" : 62,}
 
subs["*1-05-0-down"] = { "sidefill2" : 100, "sidefill1" : 100,
 
    "cycright" : 36, "upfill3" : 37, "upfill2" : 37, "upfill1" : 2,
 
    "side l" : 100,  "b25" : 100, "cycleft" : 18, "b23" : 100,
 
    "desk1" : 19, "desk2" : 31, "b22" : 100, "hotbox2" : 17, "upfill4" : 2,
 
    "b24" : 100, "side r" : 82, "main 11" : 89, "main 10" : 100,
 
    "main 3" : 85, "main 2" : 100, "main 5" : 100, "main 4" : 100,
 
    "main 7" : 100, "main 9" : 100, "main 8" : 100, "b34" : 13, "edge" : 37,
 
    "b13" : 100,}
 
subs["*1-05-0"] = { "sidefill2" : 68, "sidefill1" : 65, "cycright" : 42,
 
    "main 11" : 11, "main 10" : 22, "b34" : 0, "b25" : 67, "side l" : 100,
 
    "b23" : 67, "b22" : 67, "desk2" : 31, "desk1" : 19, "hotbox2" : 0,
 
    "b24" : 67, "side r" : 82, "upfill3" : 37, "upfill2" : 37, "main 3" : 53,
 
    "main 2" : 68, "main 5" : 68, "main 4" : 68, "main 7" : 22, "main 9" : 22,
 
    "main 8" : 22, "cycleft" : 24, "edge" : 0, "b13" : 100,}
 
subs["*1-05-0"] = { "sidefill2" : 68, "sidefill1" : 65, "cycright" : 42,
 
    "main 11" : 11, "main 10" : 22, "b34" : 0, "b25" : 67, "side l" : 100,
 
    "b23" : 67, "b22" : 67, "desk2" : 31, "desk1" : 19, "hotbox2" : 91,
 
    "hotbox1" : 100, "b24" : 67, "side r" : 82, "upfill3" : 61, "upfill2" : 61,
 
    "main 3" : 53, "main 2" : 68, "main 5" : 68, "main 4" : 68, "main 7" : 22,
 
    "main 9" : 22, "main 8" : 20, "cycleft" : 24, "edge" : 0, "b13" : 100,
 
    "marry2" : 19,}
 
subs["*1-05-0-down"] = { "sidefill2" : 70, "sidefill1" : 70, "cycright" : 0,
 
    "upfill3" : 25, "upfill2" : 25, "upfill1" : 15, "b34" : 13, 
 
    "b25" : 100, "side l" : 100, "b23" : 100, "desk1" : 19, "desk2" : 31,
 
    "b22" : 100, "hotbox2" : 17, "upfill4" : 15, "b24" : 100, "side r" : 82,
 
    "main 11" : 89, "main 10" : 100, "main 3" : 85, "main 2" : 100,
 
    "main 5" : 100, "main 4" : 100, "main 7" : 100, "main 9" : 100,
 
    "main 8" : 100, "cycleft" : 0, "edge" : 37, "b13" : 100,}
 
subs["*1-08-30-full"] = { "cycright" : 10, "main 11" : 38, "main 10" : 36,
 
    "upfill1" : 0, "sidefill2" : 0, "b25" : 100, "side l" : 38, "b23" : 100,
 
    "b22" : 100, "desk2" : 0, "oran3" : 64, "upfill4" : 0, "side r" : 38,
 
    "upfill3" : 0, "blue3" : 100, "upfill2" : 0, "gree2" : 15, "gree3" : 15,
 
    "cafe2" : 100, "gree1" : 15, "gree4" : 15, "marry2" : 38, "marry1" : 38,
 
    "cuba1" : 23, "cuba2" : 0, "red3" : 27, "red2" : 27, "sidefill1" : 0,
 
    "b24" : 100, "red4" : 45, "b34" : 28, "cycleft" : 10, "b32" : 43,
 
    "hotbox2" : 38, "hotbox1" : 38, "blue1" : 100, "oran2" : 64,
 
    "oran1" : 64, "blue2" : 100, "blue4" : 100, "oran4" : 64, "main 3" : 38,
 
    "main 2" : 38, "main 5" : 0, "main 4" : 38, "main 7" : 0, "phone" : 31,
 
    "main 9" : 38, "main 8" : 38, "edge" : 0, "cafe1" : 100, "red1" : 27,}
 
subs["*2-02-0"] = { "main 2" : 53, "main 5" : 18, "main 10" : 53,
 
    "main 7" : 42, "main 9" : 60, "main 8" : 36, "b24" : 52, "b23" : 76,
 
    "side r" : 34, "blue1" : 63, "marry2" : 38, "blue3" : 63, "blue2" : 63,
 
    "blue4" : 63, "main 4" : 24,}
 
subs["*2-03-20-luck-c"] = { "main 5" : 0, "main 10" : 0, "main 7" : 0,
 
    "b24" : 100, "b23" : 100, "b32" : 0, "hotbox2" : 0, "hotback" : 0,
 
    "b13" : 31, "rock" : 0, "marry2" : 0, "main 4" : 78,}
 
subs["*2-05-2-boat"] = { "sidefill2" : 43, "cycright" : 0, "main 11" : 84,
 
    "main 10" : 84, "upfill1" : 0, "b24" : 100, "b23" : 100, "b22" : 100,
 
    "desk2" : 84, "desk1" : 44, "hotbox2" : 95, "hotbox1" : 21, "upfill4" : 0,
 
    "b32" : 52, "upfill3" : 34, "upfill2" : 0, "main 3" : 72, "main 5" : 83,
 
    "main 4" : 100, "main 7" : 100, "main 9" : 100, "main 8" : 100,
 
    "rock" : 43, "marry2" : 100, "marry1" : 75, "cuba2" : 65,}
 
subs["*2-06-0"] = { "cycright" : 100, "main 11" : 55, "main 10" : 55,
 
    "upfill1" : 48, "hotbox2" : 43, "b34" : 30, "b24" : 100, "b23" : 100,
 
    "main 7" : 30, "desk2" : 23, "b22" : 14, "main 9" : 30, "hotbox1" : 71,
 
    "main 2" : 30, "b32" : 23, "rock" : 17, "marry2" : 34, "marry1" : 69,
 
    "upfill4" : 48, "side r" : 30,}
 
subs["*1-01-0-justback"] = { "sidefill2" : 100, "sidefill1" : 100,
 
    "cycright" : 41, "upfill3" : 60, "upfill2" : 91, "upfill1" : 56,
 
    "side l" : 100,  "b25" : 100, "cycleft" : 41, "b22" : 100,
 
    "desk2" : 78, "hotbox2" : 91, "hotbox1" : 43, "upfill4" : 68,
 
    "b24" : 100, "side r" : 100, "main 11" : 100, "main 10" : 100,
 
    "main 3" : 100, "main 2" : 100, "main 5" : 100, "main 4" : 100,
 
    "main 7" : 100, "main 9" : 100, "main 8" : 100, "b34" : 100,
 
    "edge" : 80, "marry2" : 100, "marry1" : 100,}
 
subs["*1-01-0-justleft"] = { "sidefill2" : 100, "sidefill1" : 100,
 
    "cycright" : 41, "upfill3" : 60, "upfill2" : 91, "upfill1" : 56,
 
    "side l" : 100,  "b25" : 100, "cycleft" : 41, "b22" : 100,
 
    "desk2" : 78, "hotbox2" : 91, "hotbox1" : 43, "upfill4" : 68,
 
    "b24" : 100, "side r" : 100, "main 11" : 100, "main 10" : 100,
 
    "main 3" : 100, "main 2" : 100, "main 5" : 100, "main 4" : 100,
 
    "main 7" : 100, "main 9" : 100, "main 8" : 100, "b34" : 100,
 
    "edge" : 80, "marry2" : 100, "marry1" : 100,}
 
subs["*1-01-0-justleft"] = { "sidefill2" : 100, "sidefill1" : 100,
 
    "cycright" : 0, "upfill3" : 0, "upfill2" : 0, "upfill1" : 0,
 
    "b34" : 7,  "b25" : 0, "side l" : 100, "b22" : 100,
 
    "desk2" : 78, "hotbox2" : 10, "hotbox1" : 43, "upfill4" : 0,
 
    "b24" : 0, "side r" : 100, "main 11" : 0, "main 10" : 100, "main 3" : 100,
 
    "main 2" : 100, "main 5" : 100, "main 4" : 100, "main 7" : 0,
 
    "main 9" : 0, "main 8" : 0, "cycleft" : 0, "edge" : 80, "marry2" : 100,
 
    "marry1" : 100,}
 
subs["*1-01-0-justback"] = { "sidefill2" : 100, "sidefill1" : 100,
 
    "cycright" : 41, "upfill3" : 60, "upfill2" : 91, "upfill1" : 56,
 
    "b34" : 100,  "b25" : 100, "side l" : 100, "b22" : 100,
 
    "desk2" : 78, "hotbox2" : 91, "hotbox1" : 43, "upfill4" : 68,
 
    "b24" : 100, "side r" : 100, "main 11" : 100, "main 10" : 100,
 
    "main 3" : 100, "main 2" : 100, "main 5" : 100, "main 4" : 100,
 
    "main 7" : 100, "main 9" : 100, "main 8" : 100, "cycleft" : 41,
 
    "edge" : 80, "marry2" : 100, "marry1" : 100,}
 
subs["*1-01-0-justright"] = { "sidefill2" : 100, "sidefill1" : 100,
 
    "cycright" : 41, "upfill3" : 60, "upfill2" : 91, "upfill1" : 56,
 
    "side l" : 100,  "b25" : 100, "cycleft" : 41, "b22" : 100,
 
    "desk2" : 78, "hotbox2" : 91, "hotbox1" : 43, "upfill4" : 68,
 
    "b24" : 100, "side r" : 100, "main 11" : 100, "main 10" : 100,
 
    "main 3" : 100, "main 2" : 100, "main 5" : 100, "main 4" : 100,
 
    "main 7" : 100, "main 9" : 100, "main 8" : 100, "b34" : 100,
 
    "edge" : 80, "marry2" : 100, "marry1" : 100,}
 
subs["*1-01-0-justright"] = { "sidefill2" : 100, "sidefill1" : 0,
 
    "cycright" : 0, "upfill3" : 0, "upfill2" : 0, "upfill1" : 0,
 
    "b34" : 100,  "b25" : 100, "side l" : 0, "b22" : 0,
 
    "desk2" : 0, "hotbox2" : 0, "hotbox1" : 0, "upfill4" : 0, "b24" : 100,
 
    "side r" : 100, "main 11" : 0, "main 10" : 0, "main 3" : 0, "main 2" : 100,
 
    "main 5" : 100, "main 4" : 0, "main 7" : 0, "main 9" : 100, "main 8" : 100,
 
    "cycleft" : 0, "edge" : 0, "marry2" : 7, "marry1" : 100,}
 
subs["*1-01-0-justleft"] = { "sidefill2" : 0, "sidefill1" : 100,
 
    "cycright" : 0, "upfill3" : 0, "upfill2" : 0, "upfill1" : 0,
 
    "b34" : 7,  "b25" : 0, "side l" : 100, "b22" : 100,
 
    "desk2" : 78, "hotbox2" : 10, "hotbox1" : 0, "upfill4" : 0, "b24" : 0,
 
    "side r" : 0, "main 11" : 0, "main 10" : 100, "main 3" : 100,
 
    "main 2" : 100, "main 5" : 100, "main 4" : 100, "main 7" : 0,
 
    "main 9" : 0, "main 8" : 0, "cycleft" : 0, "edge" : 80, "marry2" : 100,
 
    "marry1" : 0,}
 
subs["*1-01-0-justback"] = { "b32" : 7, "sidefill2" : 47, "sidefill1" : 47,
 
    "cycright" : 41, "upfill3" : 60, "upfill2" : 91, "upfill1" : 56,
 
    "b34" : 16, "b25" : 16, "side l" : 0, "b23" : 16,
 
    "b22" : 16, "desk2" : 0, "desk1" : 0, "hotbox2" : 7, "hotbox1" : 0,
 
    "upfill4" : 68, "b24" : 16, "side r" : 0, "main 11" : 100, "main 10" : 100,
 
    "main 3" : 13, "main 2" : 13, "main 5" : 13, "main 4" : 100,
 
    "main 7" : 100, "phone" : 0, "main 9" : 14, "main 8" : 13, "cycleft" : 41,
 
    "edge" : 0, "b13" : 16, "rock" : 0, "marry2" : 16, "marry1" : 16,
 
    "cuba1" : 16, "cuba2" : 0,}
 
subs["*1-01-0-justright"] = { "sidefill2" : 100, "sidefill1" : 0,
 
    "cycright" : 0, "upfill3" : 0, "upfill2" : 0, "upfill1" : 0,
 
    "b34" : 100, "b25" : 100, "side l" : 0, "b22" : 0,
 
    "desk2" : 0, "hotbox2" : 0, "hotbox1" : 0, "upfill4" : 0, "b24" : 100,
 
    "side r" : 100, "main 11" : 0, "main 10" : 0, "main 3" : 0, "main 2" : 100,
 
    "main 5" : 100, "main 4" : 0, "main 7" : 0, "phone" : 100, "main 9" : 100,
 
    "main 8" : 100, "cycleft" : 0, "edge" : 0, "marry2" : 7, "marry1" : 100,}
light8/ConfigDummy.py
Show inline comments
 
@@ -1010,6 +1010,8 @@ subs["*2-07-0"] = { "sidefill2" : 100, "
 
    "b25" : 100, "side l" : 100, "b23" : 100, "b22" : 100, "desk2" : 78,
 
    "phone" : 62, "hotbox1" : 14, "upfill4" : 56, "b24" : 100, "side r" : 100,
 
    "main 11" : 100, "main 10" : 100, "main 3" : 83, "main 2" : 100,
 
    "main 5" : 100, "main 4" : 100, "main 7" : 100, "hotbox2" : 5,
 
    "main 9" : 100, "main 8" : 100, "rock" : 0, "cycleft" : 41, "edge" : 63,
 
    "god" : 100, "marry2" : 100, "marry1" : 100, "xmas" : 100,}
 
subs["*interscene"] = { "blue1" : 38, "blue3" : 38, "blue2" : 38,
 
    "blue4" : 38,}
light8/ExtSliderMapper.py
Show inline comments
 
""" The External Slider Mapping widget determines which pots map to which
 
submasters.  It tells you the status of each mapping and saves and loads
 
presets.  The show is relying on this module!  Do not lose it!
 

	
 
FUQ (frequently unasked question)
 
FUQ (frequently unasked question(s))
 

	
 
1. What's with all the *args?
 

	
 
It lets functions take any number of arguments and throw them away.
 
Callbacks do this, and we typically don't care about what they have to say. """
 

	
 
from Tix import *
 
from uihelpers import FancyDoubleVar
 

	
 
stdfont = ('Arial', 8)
 

	
 
class SliderMapping:
 
    def __init__(self, default='disconnected', synced=0, extinputlevel=0, 
 
                 sublevel=0):
 
        self.subname = StringVar() # name of submaster we're connected to
 
        self.subname.set(default)
 
        self.sublevel = DoubleVar() # scalelevel variable of that submaster
 
        # self.sublevel = FancyDoubleVar() # scalelevel variable of that submaster
 
        self.sublevel.set(sublevel)
 
        self.synced = BooleanVar() # currently synced
 
        self.synced.set(synced)
 
        self.extlevel = DoubleVar() # external slider's input
 
        self.extlevel.set(extinputlevel)
 
        self.widgets = [] # list of widgets drawn
 
@@ -36,12 +40,25 @@ class SliderMapping:
 
        self.synced.set(0)
 
        self.color_bg()
 
    def issynced(self):
 
        return self.synced.get()
 
    def disconnect(self, *args):
 
        self.set_subname('disconnected') # a bit hack-like
 
        # self.sublevel.delete_named('sync')
 
        '''
 
        try:
 
            if self.sublevel.unsync_trace_cbname is not None:
 
                # self.sublevel.trace_vdelete('w', 
 
                    # self.sublevel.unsync_trace_cbname)
 
                self.sublevel._tk.call('trace', 'vdelete', self.sublevel._name, 
 
                    'w', self.sublevel.unsync_trace_cbname)
 
                self.sublevel.unsync_trace_cbname = None
 
        except AttributeError:
 
            pass
 
        '''
 
            
 
        self.sublabel.configure(text="N/A")
 
        self.color_bg()
 
    def isdisconnected(self):
 
        return self.subname.get() == 'disconnected' # a bit more hack-like
 
    def check_synced(self, *args):
 
        'If external level is near than the sublevel, it synces'
 
@@ -85,58 +102,71 @@ class SliderMapping:
 
                widget.configure(bg=color)
 
            self.lastbgcolor = color
 
    def set_sublevel_var(self, newvar):
 
        'newvar is one of the variables in scalelevels'
 

	
 
        if newvar is not self.sublevel:
 
            # self.sublevel.delete_named('sync')
 
            self.sublevel = newvar
 
            self.sublabel.configure(textvariable=newvar)
 
            # self.sublevel.trace_named('sync', lambda *args: self.unsync(*args))
 
            '''
 
            try:
 
                if self.sublevel.unsync_trace_cbname is not None:
 
                # remove an old trace
 
                self.sublevel.trace_vdelete('w',
 
                    self.sublevel.unsync_trace_cbname)
 
            except AttributeError:
 
                pass # it didn't have one
 

	
 
            self.sublevel = newvar
 
            self.sublevel.unsync_trace_cbname = self.sublevel.trace('w', 
 
                self.unsync)
 
            '''
 

	
 
        if self.sublabel:
 
            self.sublabel.configure(textvariable=newvar)
 
        # if self.sublabel:
 
            # self.sublabel.configure(textvariable=newvar)
 
        self.check_synced()
 
    def get_mapping(self):
 
        'Get name of submaster currently mapped'
 
        return self.subname.get()
 
    def get_level_pair(self):
 
        'Returns suitable output for ExtSliderMapper.get_levels()'
 
        return (self.subname.get(), self.extlevel.get())
 
    def draw_interface(self, master, subnames):
 
        'Draw interface into master, given a list of submaster names'
 
        frame = Frame(master)
 
        c = ComboBox(frame, variable=self.subname)
 
        c = ComboBox(frame, variable=self.subname, dropdown=0)
 
        c.slistbox.listbox.insert(END, "disconnected")
 
        # c.listbox.insert(END, "disconnected")
 
        for s in subnames:
 
            c.slistbox.listbox.insert(END, s)
 
        c.entry.configure(width=12)
 
            # c.listbox.insert(END, s)
 
        c.entry.configure(width=12, font=stdfont)
 
        c.slistbox.listbox.configure(font=stdfont, exportselection=0)
 
        statframe = Frame(frame)
 

	
 
        self.statuslabel = Label(statframe, text="No sync")
 
        self.statuslabel = Label(statframe, text="No sync", width=15, font=stdfont)
 
        self.statuslabel.grid(columnspan=2, sticky=W)
 
        ilabel = Label(statframe, text="Input", fg='blue')
 
        ilabel = Label(statframe, text="Input", fg='blue', font=stdfont)
 
        ilabel.grid(row=1, sticky=W)
 
        extlabel = Label(statframe, textvariable=self.extlevel, width=5)
 
        extlabel = Label(statframe, textvariable=self.extlevel, width=5, font=stdfont)
 
        extlabel.grid(row=1, column=1)
 
        rlabel = Label(statframe, text="Real")
 
        rlabel = Label(statframe, text="Real", font=stdfont)
 
        rlabel.grid(row=2, sticky=W)
 
        self.sublabel = Label(statframe, text="N/A", width=5)
 
        self.sublabel = Label(statframe, text="N/A", width=5, font=stdfont)
 
        self.sublabel.grid(row=2, column=1)
 
        statframe.pack(side=BOTTOM, expand=1, fill=X)
 
        c.pack()
 
        disc_button = Button(statframe, text="Disconnect", 
 
            command=self.disconnect, padx=0, pady=0, font=stdfont)
 
        disc_button.grid(row=3, columnspan=2)
 
        statframe.pack(side=BOTTOM, expand=1, fill=BOTH)
 
        c.pack(expand=1, fill=BOTH)
 
        frame.pack(side=LEFT, expand=1, fill=BOTH)
 

	
 
        self.widgets = [frame, c, statframe, self.statuslabel, ilabel, extlabel,
 
                        rlabel, self.sublabel]
 
                        rlabel, self.sublabel, disc_button]
 

	
 
class ExtSliderMapper(Frame):
 
    def __init__(self, parent, sliderlevels, sliderinput, filename='slidermapping',
 
                 numsliders=4):
 
        'Slider levels is scalelevels, sliderinput is an ExternalInput object'
 
        Frame.__init__(self, parent)
 
@@ -158,12 +188,13 @@ class ExtSliderMapper(Frame):
 
        self.current_mappings = []
 
        for i in range(self.numsliders):
 
            self.current_mappings.append(SliderMapping())
 

	
 
        self.draw_interface()
 
    def load_presets(self):
 
        self.presets = {}
 
        self.file = open(self.filename, 'r')
 
        lines = self.file.readlines()
 
        for l in lines:
 
            tokens = l[:-1].split('\t')
 
            name = tokens.pop(0)
 
            self.presets[name] = tokens
 
@@ -180,19 +211,21 @@ class ExtSliderMapper(Frame):
 
    def load_scalelevels(self):
 
        for slidermap in self.current_mappings:
 
            try:
 
                v = self.sliderlevels[slidermap.get_mapping()]
 
                slidermap.set_sublevel_var(v)
 
            except KeyError:
 
                pass
 
                name = slidermap.get_mapping()
 
                if name != 'disconnected':
 
                    print "ESM: No submaster named", name
 
                
 
    def get_levels(self):
 
        'Called by changelevels, returns a dict of new values for submasters'
 
        if not self.sliderinput: return {}
 

	
 
        self.load_scalelevels() # freshen our input from the physical sliders
 
        self.load_scalelevels() # freshen our input from the submasters
 

	
 
        rawlevels = self.sliderinput.get_levels()
 
        for rawlev, slidermap in zip(rawlevels, self.current_mappings):
 
            slidermap.changed_extinput(rawlev)
 

	
 
        return dict([m.get_level_pair()
 
@@ -214,17 +247,20 @@ class ExtSliderMapper(Frame):
 
        Button(presetframe, text="Add", padx=0, pady=0, 
 
                command=self.add_preset).pack(side=LEFT)
 
        Button(presetframe, text="Delete", padx=0, pady=0, 
 
                command=self.delete_preset).pack(side=LEFT)
 
        Button(presetframe, text="Disconnect", padx=0, pady=0, 
 
                command=self.disconnect_all).pack(side=LEFT)
 
        Button(presetframe, text="Reload", padx=0, pady=0, 
 
                command=self.load_presets).pack(side=LEFT)
 
        presetframe.pack(side=BOTTOM)
 
    def apply_preset(self, preset):
 
        if not preset: return
 
        preset_mapping = self.presets.get(preset)
 
        if not preset_mapping: return
 
        self.disconnect_all()
 
        for subname, slidermap in zip(preset_mapping, self.current_mappings):
 
            slidermap.set_subname(subname)
 
    def delete_preset(self, *args):
 
        del self.presets[self.current_preset.get()]
 
        self.presetcombo.slistbox.listbox.delete(0, END)
 
        self.draw_presets()
light8/Lightboard.py
Show inline comments
 
@@ -104,13 +104,14 @@ class Lightboard:
 
    def refresh(self, *args):
 
        'rebuild interface, reload data'
 
        self.get_data()
 
        self.subediting.refresh()
 
        self.buildinterface()
 
        bindkeys(self.master,'<Escape>', self.quit)
 
        self.master.tk_setPalette('gray40')
 
        self.slidermapper.setup()
 
        # self.master.tk_setPalette('gray40')
 

	
 
    def stageassub(self):
 
        """returns the current onstage lighting as a levels
 
        dictionary, skipping the zeros, and using names where
 
        possible"""
 
        levs=self.oldlevels
 
@@ -157,15 +158,15 @@ class Lightboard:
 

	
 
        # load levels from external sliders
 
        extlevels = self.slidermapper.get_levels()
 
        for name, val in extlevels.items():
 
            if name in self.scalelevels:
 
                sl = self.scalelevels[name]
 
                sl.disable_traces()
 
                # sl.disable_traces()
 
                sl.set(val)
 
                sl.recreate_traces()
 
                # sl.recreate_traces()
 
        
 
        for lev,lab,oldlev,numlab in zip(levels, self.channel_levels, 
 
                                         self.oldlevels, 
 
                                         self.leveldisplay.number_labels):
 
            if lev != oldlev:
 
                lab.config(text="%d" % lev) # update labels in lev display
light8/configconvert.py
Show inline comments
 
@@ -33,10 +33,10 @@ def read_tsv(filename,outname):
 
                    print >>out,"'%s': %s," %(channame,level),
 
            except ValueError:
 
                pass
 
        print >>out,"}\n"
 
        
 

	
 
print_tsv(filename="sublevs.txt",allchans=Patch.get_all_channels(),subs=subs)
 
read_tsv(filename="sublevs.txt",outname="Configsubs2.py")
 
#print_tsv(filename="sublevs.txt",allchans=Patch.get_all_channels(),subs=subs)
 
read_tsv(filename="sublevs-fixed",outname="Configsubs-fixed.py")
 

	
 
                    
light8/panels.py
Show inline comments
 
@@ -132,13 +132,14 @@ class Subpanels:
 
            f.pack(fill='both',exp=1,side=side2)
 
            
 

	
 
            # make DoubleVar (there might be one left around from
 
            # before a refresh)
 
            if name not in scalelevels:
 
                scalelevels[name]=FancyDoubleVar()
 
                # scalelevels[name]=FancyDoubleVar()
 
                scalelevels[name]=DoubleVar()
 

	
 
            sub.set_slider_var(scalelevels[name])
 

	
 
            scaleopts = {'troughcolor' : 'grey70'}
 
            if sub.color:
 
                scaleopts['troughcolor'] = sub.color
light8/rsn.py
Show inline comments
 
@@ -26,13 +26,13 @@ parportdmx = io.ParportDMX()
 

	
 
if not DUMMY:
 
    # this turns the parportdmx from dummy to live
 
    parportdmx.golive()
 

	
 
mr_lightboard = Lightboard(root,parportdmx,DUMMY)
 
root.tk_setPalette('gray40')
 
# root.tk_setPalette('gray40')
 

	
 
signal(SIGINT, mr_lightboard.quit)
 

	
 
#
 
# start net slider server in separate thread 
 
#
light8/slidermapping
Show inline comments
 
Disconnect all	disconnected	disconnected	disconnected	disconnected
 
1-00 opening	*curtain	house	god	*1-01-0
 
1-01	*1-01-0	*1-01-9 end conversations	*1-02-0	*interscene
 
1-02	*1-02-0	*1-02-1 desk solo	*1-03-0	*interscene
 
1-03	*1-03-0	*1-04-00-dance	*1-04-01 dark tables	*interscene
 
1-04	*1-04-00-dance	*1-04-01 dark tables	*1-04-02 solo ada	*1-04-10-after dance
 
1-04 - 2	*1-04-02 solo ada	*1-04-10-after dance	*1-04-20-table	*1-04-30-small table
 
1-04 -3, I.5, I.6	*1-04-30-small table	*1-05-0	*1-06-0	*interscene
 
1-06, I.7	*1-06-0	*1-07-0	*1-08-00-left cafe	*interscene
 
1-08 cuba intro	*1-08-00-left cafe	*1-08-10-right cafe	*1-08-10-centerwalk	*1-08-10-rightwalk
 
1-08 cuba travopen	*1-08-30-full	*1-08-10-right cafe	*1-08-20-backdrop	*1-08-10-rightwalk
 
1-10 - intermission	*1-10-0	*curtain	house	*2-01-0-dance
 
2-00 intermission	*curtain	house	god	*2-01-0-dance
 
2-01	*2-01-0-dance	*2-01-01-solo	*2-01-1-after dance	*2-01-1-darker dance
 
2-03 start	*2-03-00-open dance	*2-03-10-dialogue	god	*2-03-20-luckcover
 
2-03 luck	*2-03-20-luck-l	*2-03-20-luck-c	*2-03-20-luck-r	*2-03-20-luckcover
 
2-05	*2-05-0	*2-05-1-dream	*2-05-2-boat	*interscene
 
2-06	*2-06-0	*2-06-1-patio right	*2-06-2 patio left	*interscene
 
colors	col blue	col gree	col oran	col red
 
first four	*1-01-0	*1-02-0	*1-03-0	*1-04-00-dance
 
random	*1-03-0	*1-04-10-after dance	*1-06-0	*1-01-0
 
vitals	house	god	*curtain	phone booth
light8/stage.py
Show inline comments
 
@@ -74,13 +74,13 @@ class Stage(Canvas):
 
        print img.width()
 
#        self.create_image(0,0,anchor='nw',image=img)
 
#        self.config(width=img.width(),height=img.height())
 

	
 
        # we had the picture removed for good luck, but we remember
 
        # what the dimensions formerly was
 
        self.config(width=821,height=681)
 
        self.config(width=821,height=681, bg="grey40")
 

	
 

	
 
    def setsubediting(self,subeditor):
 
        self.subeditor = subeditor
 

	
 
    # (17:00:06) drewp: if yes, then self.itemconfigure(tagOrId, text=...)
light8/sub_analyzer.py
Show inline comments
 
#!/usr/bin/python
 
from Subs import *
 
from Patch import *
 
from types import TupleType
 

	
 
from Config import patch, subs
 

	
light8/uihelpers.py
Show inline comments
 
@@ -10,13 +10,12 @@ windowlocations = {
 
    'console' : '168x24+848+000',
 
    'leveldisplay' : '144x340+870+400',
 
    'cuefader' : '314x212+546+741',
 
    'effect' : '24x24+0963+338',
 
    'stage' : '823x683+37+030',
 
    'scenes' : '504x198+462+12',
 

	
 
}
 

	
 
def make_frame(parent):
 
    f = Frame(parent, bd=0)
 
    f.pack(side='left')
 
    return f
 
@@ -154,13 +153,14 @@ class Togglebutton(Button):
 
        return "break"
 

	
 

	
 
class FancyDoubleVar(DoubleVar):
 
    def __init__(self,master=None):
 
        DoubleVar.__init__(self,master)
 
        self.callbacklist = {}
 
        self.callbacklist = {} # cbname : mode
 
        self.namedtraces = {} # name : cbname
 
    def trace_variable(self,mode,callback):
 
        """Define a trace callback for the variable.
 

	
 
        MODE is one of "r", "w", "u" for read, write, undefine.
 
        CALLBACK must be a function which is called when
 
        the variable is read, written or undefined.
 
@@ -184,17 +184,49 @@ class FancyDoubleVar(DoubleVar):
 
            
 
    def recreate_traces(self):
 
        for cb,mode in self.callbacklist.items():
 
#            self.trace_variable(v[0],v[1])
 
            self._tk.call("trace", "variable", self._name, mode,cb)
 

	
 
    def trace_named(self, name, callback):
 
        if name in self.namedtraces:
 
            print "FancyDoubleVar: already had a trace named %s - replacing it" % name
 
            self.delete_named(name)
 

	
 
        cbname = self.trace_variable('w',callback) # this will register in self.callbacklist too
 
        
 
        self.namedtraces[name] = cbname
 
        return cbname
 
        
 
    def delete_named(self, name):
 
        if name in self.namedtraces:
 

	
 
            cbname = self.namedtraces[name]
 
            
 
            self.trace_vdelete('w',cbname)
 
	    #self._tk.call("trace","vdelete",self._name,'w',cbname)
 
            print "FancyDoubleVar: successfully deleted trace named %s" % name
 
        else:
 
            print "FancyDoubleVar: attempted to delete named %s which wasn't set to any function" % name
 

	
 

	
 

	
 

	
 
if __name__=='__main__':
 
    root=Tk()
 
    root.tk_focusFollowsMouse()
 
    iv=IntVar()
 
    def cb():
 
        print "cb!"
 
    t = Togglebutton(root,text="testbutton",command=cb,variable=iv)
 
    t.pack()
 
    Entry(root,textvariable=iv).pack()
 
    root.mainloop()
 

	
 

	
 

	
 

	
 

	
 

	
 

	
 

	
 

	
0 comments (0 inline, 0 general)