Files
@ 224505b0c21e
Branch filter:
Location: light9/light8/Patch.py - annotation
224505b0c21e
1.1 KiB
text/x-python
smaller text
smaller text
better bounds updating (now only on mouse-up)
cooler demo
smaller text
better bounds updating (now only on mouse-up)
cooler demo
174b35926067 174b35926067 174b35926067 174b35926067 174b35926067 174b35926067 174b35926067 174b35926067 174b35926067 174b35926067 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 5e4fb4ac2d18 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 f2eb20a52555 45b12307c695 f2eb20a52555 45b12307c695 f2eb20a52555 f2eb20a52555 45b12307c695 45b12307c695 45b12307c695 f2eb20a52555 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 f2eb20a52555 f2eb20a52555 f2eb20a52555 f2eb20a52555 | def resolve_name(channelname):
"Ensure that we're talking about the primary name of the light."
return get_channel_name(get_dmx_channel(channelname))
def get_all_channels():
"""returns primary names for all channels (sorted)"""
prinames = reverse_patch.values()[:]
prinames.sort()
return prinames
def get_dmx_channel(name):
if name in patch:
return patch[name]
try:
i = int(name)
return i
except ValueError:
raise ValueError("Invalid channel name: %s" % name)
def get_channel_name(dmxnum):
try:
return reverse_patch[dmxnum]
except KeyError:
return str(dmxnum)
def reload_data():
global patch, reverse_patch
import patchdata
reload(patchdata)
loadedpatch = patchdata.patch
patch = {}
reverse_patch = {}
for k, v in loadedpatch.items():
if type(k) is tuple:
for name in k:
patch[name] = v
reverse_patch[v] = k[0]
else:
patch[k] = v
reverse_patch[v] = k
# importing patch will load initial data
reload_data()
|