Comment implémenter un simple undo/redo pour les actions en java?

J'ai créé un éditeur XML et je suis coincé à la dernière phase: l'ajout d'annuler/rétablir la fonctionnalité.

J'ai seulement eu à ajouter undo/redo pour lorsque les utilisateurs ajoutent des éléments, des attributs, ou le texte à la JTree.

Je suis encore assez nouveau à cela, mais à l'école aujourd'hui, j'ai tenté (sans succès) pour créer deux pile object [] s'appelle défaire et refaire et à ajouter les actions effectuées.

Par exemple, j'ai:

Action AddElement() {

//some code
public void actionPerformed(ActionEvent e) {

                    performElementAction();
                }
}

la performElementAction juste ajouter un Élément à la JTree.

Je veux ajouter un moyen d'ajouter cette action effectuée à ma pile d'annulation. est-il un moyen simple de simplement annuler.push( l'ensemble de l'action réalisée) ou quelque chose?

Désolé pour sonner comme un méchant, mais qu'est ce que je suis 🙁

Assurez-vous de prendre un coup d'oeil à la construit-dans la fonction annuler; je n'ai jamais utilisé et je ne peux pas trouver un Swing tutoriel pour elle, mais ici est le gestionnaire.

OriginalL'auteur Chea Indian | 2012-07-17