[PE] Fix custom animation

This commit is contained in:
Julia Radzhabova 2022-01-21 16:56:42 +03:00
parent d94b41692c
commit ebe6e0495f

View file

@ -504,10 +504,12 @@ define([
setMenuParameters: function (effectId, effectGroup, option) setMenuParameters: function (effectId, effectGroup, option)
{ {
var arrEffectOptions,selectedElement; var arrEffectOptions,selectedElement;
var effect = _.findWhere(this.allEffects, {group: effectGroup, value: effectId}); var effect = _.findWhere(this.allEffects, {group: effectGroup, value: effectId}),
if(effect) updateFamilyEffect = true;
if (effect) {
arrEffectOptions = Common.define.effectData.getEffectOptionsData(effect.group, effect.value); arrEffectOptions = Common.define.effectData.getEffectOptionsData(effect.group, effect.value);
var updateFamilyEffect = (!this._familyEffect && !effect.familyEffect) ? true : (this._familyEffect != effect.familyEffect); updateFamilyEffect = this._familyEffect !== effect.familyEffect || !this._familyEffect; // family of effects are different or both of them = undefined (null)
}
if((this._effectId != effectId && updateFamilyEffect) || (this._groupName != effectGroup)) { if((this._effectId != effectId && updateFamilyEffect) || (this._groupName != effectGroup)) {
this.btnParameters.menu.removeAll(); this.btnParameters.menu.removeAll();
} }
@ -519,7 +521,7 @@ define([
this.btnParameters.menu.addItem(opt); this.btnParameters.menu.addItem(opt);
(opt.value == option) && (selectedElement = this.btnParameters.menu.items[index]); (opt.value == option) && (selectedElement = this.btnParameters.menu.items[index]);
}, this); }, this);
(effect.familyEffect) && this.btnParameters.menu.addItem({caption: '--'}); (effect && effect.familyEffect) && this.btnParameters.menu.addItem({caption: '--'});
} else { } else {
this.btnParameters.menu.items.forEach(function (opt) { this.btnParameters.menu.items.forEach(function (opt) {
if(opt.toggleGroup == 'animateeffects' && opt.value == option) if(opt.toggleGroup == 'animateeffects' && opt.value == option)
@ -529,7 +531,7 @@ define([
(selectedElement == undefined) && (selectedElement = this.btnParameters.menu.items[0]) (selectedElement == undefined) && (selectedElement = this.btnParameters.menu.items[0])
selectedElement.setChecked(true); selectedElement.setChecked(true);
} }
if (effect.familyEffect){ if (effect && effect.familyEffect){
if (this._familyEffect != effect.familyEffect) { if (this._familyEffect != effect.familyEffect) {
var effectsArray = Common.define.effectData.getSimilarEffectsArray(effectGroup, effect.familyEffect); var effectsArray = Common.define.effectData.getSimilarEffectsArray(effectGroup, effect.familyEffect);
effectsArray.forEach(function (opt) { effectsArray.forEach(function (opt) {
@ -549,7 +551,7 @@ define([
this._effectId = effectId; this._effectId = effectId;
this._groupName = effectGroup; this._groupName = effectGroup;
this._familyEffect = effect.familyEffect; this._familyEffect = effect ? effect.familyEffect : undefined;
return selectedElement ? selectedElement.value : undefined; return selectedElement ? selectedElement.value : undefined;
}, },