lundi, mai 8 2006

[pixLib] - LibStack ou le multi-chargement

Bonjour,
suite à une question posé sur le forum de media-box, je me suis décidé à faire une introduction sur le multi-chargement dans pixLib.

Ce que j'appelle le multi-chargement est en fait la mise sous forme de pile (stack) une liste d'objets que l'on veut charger. Pour réaliser ce chargement progressif pixLib possède la classe LibStack. :)

Outils

Comment utiliser la LibStack ?

Avant toute chose il faut savoir que si on utilise pixLib ce n'est pas pour simplement charger un swf ou un jpeg et le manipuler tel quel, mais bien pour charger ceux-ci directement dans une librairie de pixLib (outils qui facilite leur manipulation).
Pour faire du multi-chargement il suffit tout d'abord de construire une instance de LibStack, à laquelle on ajoute la liste des éléments que l'on veut charger ainsi que le type de librairie que l'on veut obtenir à la sortie, il ne reste plus qu'a lancer le chargement. La LibStack va charger chaque éléments de la liste, les uns après les autres et les placer dans une instance de librairie voulu, que du bonheur. :) Bien évidement à quoi nous servirait cette outils si il n'était pas fourni avec un bon gestionnaire d'événement ?! Rassurez vous tout a été pensé. ;)

Voyons maintenant ce que ça donne pratiquement.

Ajouter un élément.

public function enqueue(o:ILib, sName:String, sURL:String) : String

La fonction enqueue prends trois arguments et retourne une chaine.

  • o:ILib -> ILib est une interface, qui est implémentée par AbstractLib, une classe abstraite qui est étendu par toutes les librairies de pixLib. En français cela veut dire que l'on peut utiliser n'importe quelle instance de ConfigLoader, GraphicLib, LibStack, VideoDisplay, XMLToObject ou une classe qui implémente ILib comme premier argument de la fonction enqueue().
  • sName:String -> Il s'agit du nom qui serra donné à o:ILib (nom d'instance), c'est ce dernier qui sort en retour de la fonction.
  • sURL:String -> Il s'agit de l'URL du fichier que l'on veut charger (swf, jpeg, xml).

Les événements.

L'instance de LibStack renvoi l'ensemble des événements reçu par la librairie qui est occupé d'être chargé (ILibListener) plus un événement propre à LibStack (onLoadComplete).

  • onLoadInit -> A chaque fois qu'une librairie est finie de charger.
  • onLoadProgress -> Tout au long des différents chargements.
  • onLoadComplete -> Quand toutes les librairies sont chargées.
  • onTimeOut -> Lancé à chaque fois que le timeOut est écoulé (10 secs par défaut).

Un exemple complet avec la GraphicLib :

import com.bourre.data.libs.GraphicLib;
import com.bourre.data.libs.LibEvent;
import com.bourre.data.libs.LibStack;
 
// On crée une instance de LibStack
var oLibStack:LibStack = new LibStack();
 
// On instancie les différentes librairies que l'on veut charger en stipulant la cible et la profondeur,
et en option si le contenu est visible à la fin du chargement (true par defaut).
var gl:GraphicLib = new GraphicLib(this, 5); var gl2:GraphicLib = new GraphicLib(this, 10, false);   // On ajoute les instances de GraphicLib dans la LibStack
en précisant le nom et l'URL des fichiers à charger dedans.
oLibStack.enqueue( gl, "Animation", "anim.swf"); oLibStack.enqueue( gl2, "Photoa", "image.jpg");   function onLoadInit(e:LibEvent) : Void { trace(e.getName()); } function onLoadProgress(e:LibEvent) : Void { trace(e.getName() + ' : ' + e.getPerCent() + '%'); } function onLoadComplete(e:LibEvent) { // Ici on peut lancer une fonction qui serra exécuter à la fin de tous les chargement. } function onTimeOut(e:LibEvent) : Void { // On peut utiliser setTimeOut pour le modifier le délais de 10 secs par défaut. trace("Le chargement de " + e.getName() + " a échoué!"); }   // On ajoute s'abonne au écouteurs écouteur oLibStack.addListener( this ); // On lance le chargement oLibStack.execute();

La suite au prochaine épisode. ;)

mardi, avril 18 2006

[Paris] - Flash festival

Affirmation

L'été approche et le temps des festivals aussi. :)

Après une courte hésitation (juste pour dire), j'ai décidé de m'offrir un petit week-end à Paris, genre arrivée le vendredi 26 mai fin d'aprem et retour le dimanche soir. :)

Par contre je connais pas bien le quartier, donc si vous avez des hôtels sympa pas trop loin du centre Pompidou, je suis preneur. :)

Question

Qui sera de la partie, le 27 mai ?

Informations


Flash Festival Paris 2006.

lundi, avril 3 2006

[web bundle] - Le parcours du combattant?!

Petit coup de gueule du lundi matin.

J'ai les boules, ça fait plus d'une semaine que j'essaye d'acheter la web bundle.

Tout à commencé lundi 27 mars, je me rends sur le site Adobe pour passer commande, je reçois un joli mail de confirmation. :) Le mercredi 29 mars je reçois un second mail pour m'annoncer que ma carte de crédit n'a plus assez de liquidité. :/ On me propose de prendre contact avec le service clientèle, ce qui je fais, je tombe sur une charmante opératrice à qui je demande si je peux payer par virement international (ce que j'avais fais à l'époque pour la studioMX2004), on me réponds que ça n'est pas possible, mais que je peux payer par chèque, je lui signale que je suis en Belgique et que les chèques ont disparu depuis un certains nombre d'années (y a plus que les Français qui utilisent ce système archaïque :p). Voyant que la commande en ligne n'était pas possible, je lui demande si je peux l'acheter en magasin, elle me réponds que oui. :)

Je prends donc contact avec un vendeur de chez Cami, je vous fais partager la correspondance tellement c'est à mourir de rire. Petite précision, j'étais un habitué du magasin et j'ai l'habitude de leurs passer commande par mail et de payer à la réception du produit. :)

Moi : 29 mars 2006 17:05

Bonjour,

Je voudrais savoir si vous avez en stock :
http://www.adobe.fr/products/bundles/web_bundle.html

Web Bundle2.0, Macintosh, French, enregistré sous la réf. 38022907 chez Adobe

Cordialement,
Laurent Deketelaere

Cami : 30 mars 2006 13:45

Bonjour Mr Deketelaere,

Nous n'avons malheureusement pas ce produit de stock, il y a un délai
de 5 jours ouvrables sur ce produit.

Bien à vous,

Sales Consultant

Moi : 30 mars 2006 14:04

Pouvez vous m'en commander un.

Bien à vous,

Cami : 30 mars 2006

Mr Deketelaere,

Oui sans problème mais il faudrait acheter le produit via notre site web www.cami.be
ou payer un acompte de 1000€ au magasin, le prix du produit en anglais étant de 2418€ ttc.

Bien à vous,

NB. je n'ai toujours pas trouvé le produit sur leurs site. :p

Moi : 30 mars 2006

C'est l'update dont j'ai besoin en version fr

Web Bundle2.0, Macintosh, French

Ce qui sur le site d'Adobe.be coût 1099€

Bien à vous,

Cami : 30 mars 2006 14:42

Adobe Web Bundle Upfrade Mac English est au prix de 1208,79€ ttc soit 999€ hors tva.
Nous demandons toujours un acompte de minimum 150€ car nous ne rentrons ce produit
que sur demande.

Bien à vous,

moi : 30 mars 2006 14:53

en version FR 1099€ htva, pas de souci pour l'acompte si le produit est là dans les 5 jours ouvrable. 
Par contre je ne peux pas me rendre au magasin, comment puis-je faire ?

Carte de crédit, virement ?

Bien à vous,

Alors je sais pas j'ai du lui faire peur avec l'update en VF, ou alors c'est l'acompte, mais j'attends toujours la réponse pour savoir comment payer l'acompte!!! :p

Je fais quoi maintenant, je suis un client qui a tout ce qu'il faut pour se payer un produit et je ne peux pas le faire!!!

Bonne semaine à tous,
Laurent

MAJ - Après avoir contacté ma banque pour une ouverture de crédit suplémentaire sur ma carte, j'ai pu ré-effectuer la commande et cette dernière est arrivé ce matin. :) Par contre toujours pas de nouvelle de mes copains de chez Cami. ^^

jeudi, mars 30 2006

[Freeman] - Tête la première, Design Patterns

traduction Marie-Cécile Baland

Tête la première, Design patterns

Ce livre est tout simplement énorme, c'est le genre de livre qui reste pendant des mois sur votre table de chevet, celui qui fait râler votre partenaire, celui qu'on ouvre trois à quatre fois par semaine avant de s'endormir, celui dont vous lisez plusieurs fois le même chapitre pour être certains de ne pas en perdre une miette, celui qui fait rêver, celui qui change un Homme, celui qui… (oula je m'emballe!). Que du bonheur quoi! :)

Pour ceux qui n'ont jamais ouvert un livre de la collection «Tête la première», laissez moi vous mettre dans l'ambiance (les autres vous pouvez sauter le paragraphe). :) Quand on ouvre ce genre de livre pour la première fois, on se demande vraiment où on est tombé! Dessins, graphiques, croquis dans tous les coins, imaginez l'état de votre cahier après une heure d'histoire (avec un grand H), vous en êtes pas loin. ;) Dans l'introduction du bouquin on nous explique que cette collection ce base sur les dernières recherches en matière de sciences cognitives (si ils le disent, c'est que c'est vrai?!). Le résultat donne un livre qui présente plusieurs fois la même matière avec des approches à chaque fois différentes (BD, exercices, «Face à face» de patterns et autres surprises) ce qui permet d'après les scientifiques (attention on ne rigole plus là) de garder le cerveau en éveil et de l'aider à mémoriser les informations. Si c'est un peu déroutant au début on se rends vite compte de l'efficacité de cette méthode. ;)

Le décors étant planté voyons ce qu'on trouve vraiment à l'intérieur. :p

Lire la suite...

mardi, mars 21 2006

[Flex2] - Beta2, ça se chargera

Si on se rends sur la page de chargement de la bêta de Flex2 et du FlashPlayer8.5 on apprends que la beta2 est disponible, quand on click sur les liens on tombe sur des «not found», sans pousser le résonnement bien loin, on peut se dire que la sortie de la beta2 est imminente, et qui sait une version pour osX :p , bien que aucun lien ne l'indique! :/

The requested URL /pub/esd/labs/flex2/FlexBuilder2_B2_03-16.exe was not found on this server.
The requested URL /pub/esd/labs/flex2/Player8.5_B2_OSX_03-20.dmg was not found on this server.

flex2 beta2 preview

MAJ - 22 mars

Après 24 heures sans connexion, ce qui était prévu arriva la beta2 est disponible au chargement. :)

Au programme des nouveautés on retrouve une nouvelle classe caché, Dictionary est une classe qui permet de stocker des paires clef/valeur et de les récupérer à tout moment à la manière d'une map. Pour en savoir plus sur cette classe je vous conseille d'aller faire un saut sur Tweenpix où Francis nous fait découvrir cette dernière.

lundi, mars 13 2006

[en vrac] - ça flash dans les chaumières

Bientôt le printemps, le soleil brille, les oiseaux arrivent et ça flash dans les chaumières. :)

Sinon get-url.net vient de changer de serveur, j'ai rencontré quelques souci avec les DNS, ce qui explique ce manque d'activité ces derniers jours.

vendredi, février 24 2006

[FDT] - La RC 1.1 est sortie

Salut,
Petite nouvelle du jour pour tous les utilisateurs de FDT. Depuis hier après-midi une version en release candidat de FDT est disponnible à cette adresse : http://fdt.powerflasher.com/updateTest/. La procédure d'installation est toujours la même, c'est juste l'adresse qui change.

Pour la liste des nouveautées :

All updates in detail 1.0.6.5(20060222)

IMPORTANT: FDT from now on needs Eclipse >= 3.1 and so is not running on 3.0.x any more!

BUGFIX: Semantic analysis allowes assignment of anything to booleans
BUGFIX: "return Function()();" is type "Function" -> Should be "Object"/untyped.
BUGFIX: variables with "$" in their name wont work on quickfix templates
BUGFIX: sometimes stackOverflow error at circular refs
BUGFIX: "Exception" as type in "BlaException" becomes "BlaException" after rename-refactoring
BUGFIX: Content Outline: Type is allways closed
BUGFIX: Type Hierarchy: target document has no focus
BUGFIX: SWF Viewer does not start when location string length < 4 Chars
BUGFIX: wrong error "missing returntype" if "throw" statement is there
BUGFIX: no typecheck at variable initializer
BUGFIX: unnecessary singleline folds
BUGFIX: duplicate UTF-8 BOM creation(UTF-8 BOM is now created when document is opened)
BUGFIX: FlashExplorer loops open editors if selected multiple asFiles while linking editors is enabled

NEW: Quickfixes for foreign types
NEW: Function Variable QF to create a method
NEW: Console LineTracker for MTASC Problems(enables ProblemHover)
NEW: Quick-View: Type Dependency (Ctrl-U)
NEW: Texthovers and Declarations in Comments and Strings
NEW: Editor "Mark Occurences"
NEW: "Set Returntype" Quickfix with type-detection
NEW: Search References
NEW: Show variable-initializer in JavaDoc e.g. var a : String = "Hallo";
NEW: TextEdit - Folding actions
NEW: Other Perspectives from Flash Perspective available
NEW: File associaton of AS-Files via Content Types ("ActionScript Source File")
NEW: Ant-View available from Flash Perspective
NEW: Parser Performance optimizations
NEW: Folding of multiple singleline comments
NEW: Autoclosing of blockcomments optional
NEW: ANT Task "fdt.browse" opens external browser
NEW: Editor Links to AS-Language Elements(use Ctrl + Mousehover)
NEW: TODO Marker "//!"
le post du forum de FDT

Bogue sous osX

Avec cette mise à jour j'ai rencontré un problème de gestion des DOM UTF-8 présent dans l'en-tête des fichiers. FDT retournait une erreur du type :

Lexical error at line 1, column 1. Encountered: "\ufeff" (65279), after : ""

En plus de cette erreur, MTASC signalait qu'il n'arrivait pas à parser correctement les classes : Object, Scene, Sound, NetStream, System, TextSnapshot.

Après quelques test et discution avec erixtekila j'ai capté qu'en supriment les BOM de l'en-tête des fichiers le problèmes était résolu (enregistré-sous UTF-8 NOT-BOM).

C'est une méthode pénible, mais qui à le mérite de fonctionner (je viens de le faire sur 200 classes), et pareil pour MTASC, les classe que FDT arrivait pas à parsé était encodé en UTF-8 avec BOM. J'ai fais une version sans BOM pou qui veut. std_not_bom.zip

le post du forum de FDT

Voilà sinon tout le reste à l'air de bien fonctionner, maintenant j'arrive à utliser le SWF Viewer. :)

++ LAurent

- page 14 de 17 -