Obtenir les logs des problémes de “Security Policy” de Flash Player

Salut à tous,

Une petit astuce que j'ai découverte sur le site d'Adobe en cherchant à résoudre un problème de sécurité Crossodmain lié à la mise à jour de la sécurité dans le Flash Player 10 :
... la suite »


Avoir l’autocompletion sur ses propres événements

Oui, non , je ne suis pas mort.
J'ai juste (encore) changer de boulot.
Je suis maintenant dans un grosse entreprise de développement de logiciel.

Le sujet du jour :
Faire que Flex Builder 3 (ça doit fonctionner aussi pour le 2) nous affiche un beau menu listant les évènements émis par une classe (z'avez vu comment j'ai résisté à l'idée de mettre un anglicisme du style "dispatchés" ou "broadcastés", pourtant c'est dur).
Il le fait déjà pour les évènements par défaut, mais il peut aussi afficher les votre.
Il faut pour cela respecter un certain nombre de conditions :

1- Le type de l'évènement doit être une constante de sa propre classe.


package test
{
import flash.events.Event;

public class TestEvent extends Event
{
public static const TEST_EVENT : String = "testEvent";

public function TestEvent(type:String, bubbles:Boolean=false, cancelable:Boolean=false)
{
super(type, bubbles, cancelable);
}

}
}

Ceci nous oblige a avoir nos types stockés dans chaque classe. Pas possible de faire une liste d'enum pour plusieurs types d'évènements différents. Enfin, celà reste possible mais nous obligerait à multiplier les classes :


package test
{
import flash.events.Event;

public class TestEvent extends Event
{
public static const TEST_EVENT : String = EventEnum.TEST_EVENT;

public function TestEvent(type:String, bubbles:Boolean=false, cancelable:Boolean=false)
{
super(type, bubbles, cancelable);
}

}
}

Un peu redondant...

2- La classe émettrice de l'événement doit contenir un metadata Event.


package test
{
import flash.utils.setTimeout;

import mx.core.UIComponent;

[Event(name="testEvent",type="test.TestEvent")]
public class TestDispatcher extends UIComponent
{

public function TestDispatcher()
{
super();
setTimeout( dispatchEvent, 100, new TestEvent( TestEvent.TEST_EVENT ) );
}

}
}

[Event(name="testEvent",type="test.TestEvent")] est le metadata Event complet.
La chaine "testEvent" correspond bien a une constante de la classe TestEvent. Ainsi Flex Builder saura retrouver le nom de cette constante pour vous l'afficher :

Et voilà, le tour est joué :)


Preloader personnalisé dans Flex avec un swf

Dans un post, Jesse Warden explique comment créer un preloader presonnalisé. L'exemple est intéressant et complet mais j'ai eu une petite surprise en voulant mettre en place la même chose. Si on créé le swf avec Flash CS3, même en exportant en AS2 pour Flash 8, il semble que Flash CS3 rajoute dans les propriétés de liason une classe du même nom que l'identifiant de liaison du coup, Flex ne peut pas "transcoder" le swf publier.
La solution est de publier le swf en utilisant Flash 8...


Nouveau Blog

Salut à tous,

Peut-être avez vous noter qqs soucis dans l'accés à KiloOctet ces derniers temps.

Tout est rentré dans l'ordre avec le nouveau blog, maintenant propulsé par WordPress...

Encore qqs ajustements et tout devrait être d'équerre :D


LowRA est en train de passer à la prochaine étape

Une conférence en ligne a permis de faire un gros point sur l'état d'avancé de LowRA, le framework AS3 bâti sur PixLib et PixIOC. ... la suite »


Comparatif de frameworks FrontController (Cairngorm vs PureMVC vs LowRA)

Je vous propose un comparatif non exhaustif de 3 frameworks utilisant le principe du MVC+C. Une présentation rapide est une mise en avant de leurs point forts et faiblesses sera proposé. Il y a beaucoup d'autres frameworks proposant ce pattern, mais j'ai sélectionné ce qui me semblait les plus aboutis et les plus connus. Et que j'ai eu le temps d'utiliser un minimum... ... la suite »


PureMVC - Le KoMediator, un Mediator un petit peu plus souple (selon moi)

Salut à tous,

J'explore actuellement les frameworks proposant une implémentation du principe MVC+C (dit aussi FrontController) .

J'ai découvert PureMVC qui est pas mal dans son genre. ( Et je ne suis pas le seul à le dire :) ... la suite »


Manifeste pour un "vrai" Adobe Flash Platform User Group en France

Depuis le temps que j'en parle avec divers dev Flash / Flex en France, je me lance.

Pour moi la vocation première d'un Adobe User Group est d'organiser des réunions. Dans ces réunions, un ou plusieurs intervenants présentent un domaine d'expertise particulier et précis, puis la discussion s'engage autout de ce thème. On peut ainsi partager nos expériences, apprendre de nouvelles technique et surtout ne pas rester chacun dans son coin avec nos problèmes et nos solutions. ... la suite »


Utiliser une ViewList dans un ViewHelper de Cairngorm

Un petit truc en passant.

Venant de PixLib, je m'étais bien habitué en utilisant les ViewList, en gros une classe de constante public listant les identifiants uniques des vues. Pour prendre la même technique mais dans Cairngorm, il suffit d'overrider la function initialized de notre helper de la façon suivante :

 
override public function initialized(document:Object, id:String):void {
 	super.initialized( document, ViewList.VIEWNAME);
}
 

Où on remplace bien sur VIEWNAME par la constante de l'id unique. Simple, mais efficace. On est ainsi sur que c bien notre helper qui donne son id et non le mxml l'incluant.


PixLib + SWX = pixSWX

Laurent (Ali_o_Kan) vient de sortir une extension de PixLib nommée pixSWX (mais où va-t-il cherchr tout ça ?)

C'est l'alliance de deux grandes idées, le framework PixLib de Francis Bourre et le format d'échange de données SWX d'Aral Balkan.

Longue vie à pixSWX