-
Script onDraw Button ‘mouseup’ event not triggered in After Effects
Hi everyone,
I’ve been trying to use the onDraw function in After Effects for a button, and everything works fine except for the mouseup event—it doesn’t seem to trigger.
Here’s my script:
var icons1 = { normal1: "base64_encoded_image,
disable1: base64_encoded_image,
pressed1: base64_encoded_image,
rollover1: base64_encoded_image
};
var roll1 = ScriptUI.newImage(icons1.rollover1);
var norm1 = ScriptUI.newImage(icons1.normal1);
var down1 = ScriptUI.newImage(icons1.pressed1);
myButton.image = norm1;
myButton.onDraw = function (state) {
this.graphics.drawImage(this.image,0,0);
}
var mouseEventHandler = function(event) {
switch (event.type) {
case 'mouseover':
event.target.image = roll1;
break;
case 'mouseout':
event.target.image = norm1;
break;
case 'mousedown':
event.target.image = down1;
break;
case 'mouseup':
event.target.image = roll1;
break;
default:
event.target.image = norm1;
}
event.target.notify("onDraw");
}
myButton.addEventListener('mouseover', mouseEventHandler, false);
myButton.addEventListener('mouseout', mouseEventHandler, false);
myButton.addEventListener('mousedown', mouseEventHandler, false);
myButton.addEventListener('mouseup', mouseEventHandler, false);
It works fine for mouseover, mousedown, and mouseout, but the mouseup event doesn’t seem to trigger in After Effects. However, I’ve found that the mouseup event does work as expected when I use a left click—which is a bit strange.
Has anyone else encountered this? Any help would be appreciated!