Herramientas Personales
gvSIG Desktop
gvSIG Desktop

Cached time 11/21/13 07:54:14 Clear cache and reload

 
Acciones de Documento

La pila de comandos de edición

por Joaquin Jose del Cerro MurcianoÚltima modificación 01/06/2010 23:48

Cuando un almacén se pone en edición, internamente genera una pila de comandos con las operaciones que se van realizando. De esta forma, dichas operaciones se podrán deshacer o rehacer.

Para ello el almacén implementa el interfaz UndoRedoStack . Dicho interfaz aporta operaciones para:

  • undo: deshacer la última o últimas operaciones realizadas.
Feature feature = store.createNewFeature();
feature.setAttribute("NOMBRE", "Burjasot");
feature.setAttribute("TIPO", "MUNICIPIO");

store.insert(feature);

// Se deshace la inserción de la feature anterior
store.undo();
  • redo: volver a rehacer la última o últimas operaciones que han sido deshechas.
// Se vuelve a insertar la feature
store.redo();
  • Ver si se puede seguir deshaciendo o rehaciendo operaciones.
if (store.canUndo()) {
     System.out.println("Hay operaciones que se pueden deshacer");
}
  • Obtener información acerca de la pila de operaciones que se pueden deshacer o rehacer.

De cada operación de la pila podemos obtener la siguiente información a través de la clase UndoRedoInfo:

  • Una descripción de la operación.
  • Fecha en la que se realizó la operación.
  • El tipo de operación realizada, desde el punto de vista de cambios en los datos: inserción, modificación o borrado.
List infos = store.getRedoInfos();
for (int i = 0; i < infos.size(); i++) {
     UndoRedoInfo info = (UndoRedoInfo)infos.get(i);
     System.out.println("Operación " + i + ": " + info.getDescription());
}

En un almacén, algunas de las operaciones que se incorporarán a la pila en el modo de edición son:

  • Inserción, modificación o borrado de fenómenos.
  • Cambios en la estructura de los fenómenos.
  • Cambios en la selección del almacén.

Hay que tener en cuenta que, una vez el almacén deja de estar en edición, la pila de comandos se descarta y los métodos del interfaz UndoRedoStack dejan de ser funcionales. Si volvemos a poner el almacén en edición, se creará una pila de comandos nueva.


Hecho con Plone CMS, el Sistema de Gestión de Contenidos de Fuentes Abiertos

Este sitio cumple con los siguientes estándares: