У нас похожий подход (так что это не столько ответ, сколько подтверждение вашего подхода):
public class myClass extends EventDispatcher{
public function foo() : void {
var thisObject : myClass = this;
this.addEventListener(EVENT, function(event : Event) : void {
thisObject.foo_internal();
}, false, 0, true);
}
protected function foo_interal() : void {
}
}
Конечно, пурист может сказать, что вы не должны добавлятьслушатели таким образом, что мешает вам удалить их!Тем не менее, мы используем это соглашение в других местах, где мы используем внутренние функции вне контекста слушателя.