Bonjour tout le monde.

J'ai quelques mauvaises habitudes en JS qui font que j'utilise souvent des fonctions anonymes. Mais en AS, je le fais et je trouve cela un peu "sale".

Actuelement si je résume, mon code resemble à cela.
J'ai un tableau d'objets "media" que je parcours et pour chaque objet je créé un objet graphique (composant MXML), et ajoute un ecouteur sur le click :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
(mediasGroupManager.getMediasAll().getAllMedias() as Array).forEach(function(media:WMedia, index:int, array:Array):void {
	var mediaThumb:Box = new Box(); //objet mx.controls.Box
	mediaThumb.addEventListener(MouseEvent.CLICK, function(eve:MouseEvent):void {
		showMedia(media);
		mediaGetDownloadUrl(media);
	});
});
Donc ma question se porte surtout, sur le comment éviter cette fonction anonyme qui est collée sur le event de mediaThumb, tout en conservant le fait que mediaThumb est bien relié à mon objet "media".
En JS je serai passé par la fonction bind de mootools
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
// .....
	mediaThumb.addEventListener(MouseEvent.CLICK, clickHandler.bind(this, [media]);
});
// .....
private function clickHandler(media):void 
{
	showMedia(media);
	mediaGetDownloadUrl(media);
}
Donc je recherche un équivalent au bind, (donc etendre l'objet Function (creer une nouvelle classe ?)
ou bien faire propre et trouver une méthode utilisée souvent en AS, mais alors là je connais pas.

Merci