¿Cómo implemento un sencillo deshacer / rehacer para acciones en java?
He creado un editor XML y estoy atascado en la última fase: agregando la funcionalidad de deshacer / rehacer.
Solo tengo que agregar deshacer / rehacer para cuando los usuarios agreguen elementos, atributos o texto a JTree.
Todavía soy bastante nuevo en esto, pero hoy en la escuela intenté (sin éxito) crear dos objetos de pila [] llamados "deshacer y rehacer" y agregar las acciones realizadas en ellos.
Por ejemplo, tengo:
Action AddElement() {
// some code
public void actionPerformed(ActionEvent e) {
performElementAction();
}
}
the performElementAction solo agrega un elemento al JTree.
Quiero agregar una forma de agregar esta acción realizada a mi pila de deshacer. ¿hay una forma sencilla de deshacer.push (la acción completa realizada) o algo así?
Lo siento por sonar como un malo, pero eso es lo que soy :(