blob: bec6706a1834c1fa21b4f3c1211e4f14f5a995da [file] [log] [blame]
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);
}
}
};