@Override public void storeUndoInfo(StringBuilder currentUndoXML, boolean refresh) { doStoreUndoInfo(currentUndoXML); if (refresh) { restoreCurrentUndoInfo(); } informListener(); }
/** * inform listener that undo - action happened */ private void informListener() { for (UndoPossibleListener listener : mListener) { listener.undoPossible(undoPossible()); listener.redoPossible(redoPossible()); } }
/** * Adds construction state to undo info list. * * @param undoXML * string builder with construction XML */ private synchronized void doStoreUndoInfo(final StringBuilder undoXML) { AppState appStateToAdd = new StringAppState(undoXML.toString()); UndoCommand command = new UndoCommand(appStateToAdd); maybeStoreUndoCommand(command); pruneStateList(); app.getEventDispatcher().dispatchEvent(new Event(EventType.STOREUNDO, null)); }
@Override protected void updateUndoActions() { super.updateUndoActions(); informListener(); }
@Override protected void loadUndoInfo(AppState state, String slideID) { try { processXML(state.getXml(), false, null); } catch (Exception e) { e.printStackTrace(); } }
@Override public UndoManager getUndoManager(Construction cons) { return new DefaultUndoManager(cons); }