| function EffectsManager(data,element){ |
| var effects = data.ef || []; |
| this.effectElements = []; |
| var i,len = effects.length; |
| var effectItem; |
| for(i=0;i<len;i++) { |
| effectItem = new GroupEffect(effects[i],element); |
| this.effectElements.push(effectItem); |
| } |
| } |
| |
| function GroupEffect(data,element){ |
| this.init(data,element); |
| } |
| |
| extendPrototype([DynamicPropertyContainer], GroupEffect); |
| |
| GroupEffect.prototype.getValue = GroupEffect.prototype.iterateDynamicProperties; |
| |
| GroupEffect.prototype.init = function(data,element){ |
| this.data = data; |
| this.effectElements = []; |
| this.initDynamicPropertyContainer(element); |
| var i, len = this.data.ef.length; |
| var eff, effects = this.data.ef; |
| for(i=0;i<len;i+=1){ |
| eff = null; |
| switch(effects[i].ty){ |
| case 0: |
| eff = new SliderEffect(effects[i],element,this); |
| break; |
| case 1: |
| eff = new AngleEffect(effects[i],element,this); |
| break; |
| case 2: |
| eff = new ColorEffect(effects[i],element,this); |
| break; |
| case 3: |
| eff = new PointEffect(effects[i],element,this); |
| break; |
| case 4: |
| case 7: |
| eff = new CheckboxEffect(effects[i],element,this); |
| break; |
| case 10: |
| eff = new LayerIndexEffect(effects[i],element,this); |
| break; |
| case 11: |
| eff = new MaskIndexEffect(effects[i],element,this); |
| break; |
| case 5: |
| eff = new EffectsManager(effects[i],element,this); |
| break; |
| //case 6: |
| default: |
| eff = new NoValueEffect(effects[i],element,this); |
| break; |
| } |
| if(eff) { |
| this.effectElements.push(eff); |
| } |
| } |
| }; |