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

Flash Discussion :

Redo et Undo


Sujet :

Flash

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Avril 2006
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 11
    Par défaut Redo et Undo
    Je dois ajouter les deux fonctionnalités Redo (ctr+y) et Undo (ctr+z) à une application Flash, et j'avoue ne pas savoir par quoi commencé
    Si quelqu'un a une piste, je suis preneur.

    Merci

  2. #2
    Membre chevronné Avatar de BrItneY
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    488
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 488
    Par défaut
    une chose sur laquel je m'etais renseigne est le faite de "combiner" deux touche...ctrl+z et ctrl+y pour ton cas...je ne retrouve plus le forum ou c'etait ecrit, donc je te le repete :
    la personne disait de faire un tableau, dans lequel tu rentres toutes les nouvelles touches qui sont pressees...si une de ces touches est relachees, tu dois la supprimer de ton tableau...apres tu regardes toutes les touches qui se dedans, et si il reste que ctrl et z ou y, tu peux faire ton undo et redo...

    perso j'ai pas tente, ca me parraissait beaucoup trop complique pour une chose si simple...tu est vraiment oblige de combiner deux touches ?

    pour le reste, di nous en quoi consiste ton application, on pourra peut etre te donner des pistes pour commencer...

  3. #3
    Membre habitué
    Inscrit en
    Avril 2006
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 11
    Par défaut Redo et Undo
    Merci d'abord,

    Mon application consiste en la mise en oeuve d'un outil de dessin de cartes de visites en ligne, donc je dois faire un outil texte, redo undo, ajout d'images, dessin....

    J'ai tout juste fini l'outil texte, et je veux entamer le Redo et le Undo, je n'ai pas besoin de combiner deux touches, je voulais juste bien expliquer ce ke je veux.
    J'ai deja entendu parler de cette hsitoire de tableau qui m'a un peu 'choqué' étant donné ca complexité...
    Si vous avez des pistes a me donner, je vous serais reconnaissant.

    Merci d'avance

  4. #4
    Membre Expert Avatar de dom_dev
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 073
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 073
    Par défaut
    bonjour,
    rien ne t'empeche donc de faire des touches explicites redo undo (des boutons) par contre l'implementation va dépendre de combien de undo successifs possibles et sur quelles opérations de ton animation ??

  5. #5
    Membre habitué
    Inscrit en
    Avril 2006
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 11
    Par défaut
    Je ne sais pas encore concernat l'historique que je veux sauver (ca depend de ce que voudrait le client).

    Le undo et redo doivent agir sur tous mon espace de travail (comme sur tous les logiciels), par exemlpe annuler un ajout de texte ou la supression d'une image....
    je suis sur une piste qui me semble bonne, mais je ne sais pas commentt sauver mes etats:

    Ma classe contiendra ,a priori, les methodes suivantes:

    save, upDate, undo ( elle decrementera le niveau dans le tableau d'historique), redo (elle incrementera le niveau).

    Mon probleme c'est comment mettre en oeuvre la sauveragrde des etats de mon espace de travail (qui contient un carte, des textes rajoutés, des images, des dessins.....donc differents objets de differentes classes).

    J'espere avoir ete clair. Merci pour votre aide

  6. #6
    Membre chevronné Avatar de BrItneY
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    488
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 488
    Par défaut
    je suppose que tout se fera par l'intermediaire de boutons, j'entends par la que pour créer un texte, il faudra cliquer sur un bouton pour selectionner l'outil texte...ce clic peut deja te donner le type de donnée qu'il faudra effacer ou supprimer par la suite, que tu peux sauvegarder dans un premier tableau...

    ensuite, chose qui est plus difficile (je crois), c'est de savoir quel est la manipulation faite...si c'est une création de texte, insertion d'image, tu peux le savoir grace au nom du clip, ou de la zone de texte...pour le déplacement d'un objet sur la carte, ce qu'il faut que tu fasses c'est enregistrer les coordonnées de départ et d'arrivée...de meme pour le redimmensionnement...

    je pense que le plus facile serait de passer par le xml...comme ca tu pourrais sauvegarder tes données de facon structurée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    <undoredo>
    	<action>
    		<objet>nom de l'objet</objet>
    		<type>type de l'objet</type>
    		<coordonnees x='200' y='200' />
    		<taille width='200' height='200' />
    	</action>
    	<action>
    		<objet>nom de l'objet</objet>
    		<type>type de l'objet</type>
    		<coordonnees x='200' y='200' />
    		<taille width='200' height='200' />
    	</action>
    </undoredo>
    c'est juste un exemple, apres, a toi de voir ce que tu dois sauvegarder afin de bien définir ton action...

    Une petite remarque avant que la question arrive : ce xml enregistre toutes actions, ca veut dire que si tu veux faire un undo, il faut remonter a la derniere action faite sur un clip...
    J'illustre par un exemple (au cas ou):
    - action 1 : tu deplaces le clip 32
    - action 2 : tu inseres une image
    - action 3 : tu redimmensionne le clip 32
    et la tu fais un undo...dans ce cas, tu regardes la derniere action effectuée. tu trouves que c'est sur le clip 32...il faut que tu recherche dans ce cas l'avant derniere action faite sur le clip 32 (ici, le deplacement...) et il faut que tu remettes le clip 32 avec les memes propriétés que celles qu'il avait apres le deplacement...c'est assez clair ?

    sinon tu peux utiliser un tableau en 2D ... genre chaque ligne est une action, et chaque colonne définit ce que tu souhaites enregistrer... le principe de recherche de la derniere action est le meme que celui que j'ai expliqué juste avant...

    Ce que je te dis, je ne l'ai jamais fait, je ne sais pas si c'est le plus simple, mais c'est ce que j'essayerais a ta place...

    une derniere precision : tu ne peux pas ecrire directement dans un fichier xml en actionscript, il te faut passer par un language tel que le php...moi qui veut faire un forum en flash et qui n'ai aucune connaissance en php, ca me fait bien chlup

Discussions similaires

  1. Redo logs, undo,.. DML ?
    Par pacmann dans le forum Administration
    Réponses: 2
    Dernier message: 05/11/2008, 10h40
  2. Undo / Redo. Peut-on enregistrer que certaines actions ?
    Par Peewee dans le forum Général Java
    Réponses: 2
    Dernier message: 03/04/2006, 11h33
  3. Réponses: 5
    Dernier message: 31/03/2006, 18h12
  4. Undo-Redo (Ctrl-Z, Ctrl-Y) : comment le gérer ?
    Par MiJack dans le forum Langage
    Réponses: 6
    Dernier message: 13/01/2006, 13h26
  5. [débutant][Stratégie]Gestion undo et redo
    Par pacha1 dans le forum Général Java
    Réponses: 12
    Dernier message: 28/06/2004, 11h55

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