IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ActionScript 3 Discussion :

[PureMVC] un mediator pour tous les contrôler ? [CS5]


Sujet :

ActionScript 3

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Par défaut [PureMVC] un mediator pour tous les contrôler ?
    Bonjour,

    dans mon apprentissage du framework PureMVC, je me demandais la chose suivante :

    est il préférable de déclarer les médiators via des event creationComplete sur les composants vue associés ou alors de tous les définir via une commande lancée par une notification ?

    Je pencherai pour la 2ieme option mais j'ai peut être pas saisi tout les tenants/aboutissants

    Merci

  2. #2
    Rédacteur

    Avatar de The_Pretender
    Homme Profil pro
    Formateur Développement / Programmation
    Inscrit en
    Juin 2004
    Messages
    739
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Formateur Développement / Programmation
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2004
    Messages : 739
    Par défaut
    Bonjour,

    Pour PureMVC, je déclare la classe ApplicationMediator via le controler.

    Ensuite, ApplicationMediator déclare toutes mes vues à la profondeur adéquate.

    J'ai publié un tutoriel vidéo avec un exemple entièrement en AS3 : Utiliser PureMVC avec Flash / ActionScript 3
    Réclamez La Méthode Développement Facile pour Créer Rapidement des Applications Performantes sur Mobiles et Ordinateurs : Développement Facile

    Développez des Applications Web Performantes avec la Formation Vidéos Developpez : Programmation Facile

    Découvrez : Tutoriels, ressources AS2 et AS3

  3. #3
    Membre Expert Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Par défaut
    Bonjour Matthieu,

    effectivement j'ai déjà vu ta vidéo avant de poster mais le cas exposé étant relativement simple et ne possédant à priori qu'un seul médiator, je n'ai pas regardé le code source

    Cependant, cette phrase :

    Citation Envoyé par The_Pretender Voir le message
    Ensuite, ApplicationMediator déclare toutes mes vues à la profondeur adéquate.
    répond entièrement à a question

    PS: pour être tout à fait clair, quand tu dis que tu déclares tes vues à la profondeur adéquate, tu veux en fait dire que ApplicationMediator via la méthode onRegister() déclare de nouveaux mediators qui eux via la référence app passée s'enregistreront ?

    Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    facade.registerMediator(new UnSousMediator(notification.getBody().uneSousVue));
    Merci de tes éclaircissements

  4. #4
    Rédacteur

    Avatar de The_Pretender
    Homme Profil pro
    Formateur Développement / Programmation
    Inscrit en
    Juin 2004
    Messages
    739
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Formateur Développement / Programmation
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2004
    Messages : 739
    Par défaut
    J'ai simplifié au maximum en utilisant le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    // position des vues
    			var viewMenu:Sprite = new Sprite();
    			var viewContent:Sprite = new Sprite();
    			stage.addChild(viewMenu);
    			stage.addChild(viewContent);
     
    			// création des vues
    			facade.registerMediator(new ContentViewMediator( viewContent ));
    			facade.registerMediator(new MenuViewMediator( viewMenu ));
    Le stage de l'application est transmis au moment de la création de la classe ApplicationMediator.

    Cette solution permet de très simplement mettre à jour la profondeur des vues à partir du même endroit
    Pratique dans l'évolution d'une application et l'ajout de nouvelles interfaces!
    Réclamez La Méthode Développement Facile pour Créer Rapidement des Applications Performantes sur Mobiles et Ordinateurs : Développement Facile

    Développez des Applications Web Performantes avec la Formation Vidéos Developpez : Programmation Facile

    Découvrez : Tutoriels, ressources AS2 et AS3

  5. #5
    Membre Expert Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Par défaut
    Merci

    après avoir analysé quelques sources notamment sur le site du framework, un ApplicationMediator est toujours utilisé pour instancier les autres médiators sous cette forme :

    Mediator de l'appli instancié via une notification :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    facade.registerMediator( new ApplicationMediator( note.getBody() ) );
    les "sous médiators" instanciés par ApplicationMediator :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    facade.registerMediator( new SousMediator1( app.idvue1 ) );    
    facade.registerMediator( new SousMediator2( app.idvue2 ) );
    Ca semble relativement clair et "normalisé" ainsi finalement donc je crois que je vais procéder ainsi

    Merci Matthieu et bonne continuation ici et sur as3 facile

    Je tag en résolu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 29/09/2005, 11h50
  2. TEdit numérique pour tous les claviers
    Par totofweb dans le forum C++Builder
    Réponses: 2
    Dernier message: 10/06/2004, 11h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo