Pregunta

Así que la cuestión: Me cae un algunos artículos en un área de edición se crea una agrupación de deshacer ... bajo las sábanas, como todo el proceso de dejar caer los artículos es en realidad una colección de tareas. Si a continuación, eliminar las tareas, me dan una opción para deshacer la eliminación.

Si hago esto deshacer me sale un error en la consola:  _endUndoGroupRemovingIfEmpty :: NSUndoManager 0x343f5a0 está en estado no válido, endUndoGrouping llamada sin juego comenzará

Lo hace ... devolver todos los artículos de nuevo a la vista, sin embargo, desde este punto de deshacer mi pila están en mal estado y no lo hagas las cosas bien. REDO ni siquiera el trabajo de ahora en adelante.

También he intentado esto con solamente la supresión de un elemento del flujo de trabajo ... y luego deshacer el borrado ... el error aún es lanzada.

Así que dos cuestiones: 1. ¿Por qué el suceso de error. 2. ¿Por qué la función de rehacer no correctlty, también conocido en absoluto?

Gracias por cualquier ayuda

¿Fue útil?

Solución

El problema era que yo era willChange y didChange algunos valores MVA dentro del -undoManagerDidUndoOrRedo ... y que es una notificación de que se desencadena cuando undomanager completa una operación de deshacer, dentro de esa notificación (interna al estado de la acción de deshacer sistema) ... así que estaba creando algunos cambios anidados de forma incorrecta ..., que perdió mi pila de deshacer.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top