!7 // function: voidfunc(S) srecord VoiceTarget(S moduleID, Component guiComponent, O function) {} module VoiceTargets > DynObjectTable { // API void addVoiceTarget(S moduleID, Component guiComponent, O function) enter { final VoiceTarget vt = new(moduleID, guiComponent, function); bindToComponent(guiComponent, r { add(vt) }, r { remove(vt) }); } VoiceTarget getTopTarget() { ret syncLast(data); } }