@Override public IStatus computeUndoableStatus(IProgressMonitor monitor) throws ExecutionException { if (triggeringOperation instanceof IAdvancedUndoableOperation) { try { return ((IAdvancedUndoableOperation) triggeringOperation).computeUndoableStatus(monitor); } catch (OperationCanceledException e) { return Status.CANCEL_STATUS; } } return Status.OK_STATUS; }
@Override public IStatus computeRedoableStatus(IProgressMonitor monitor) throws ExecutionException { if (triggeringOperation instanceof IAdvancedUndoableOperation) { try { return ((IAdvancedUndoableOperation) triggeringOperation).computeRedoableStatus(monitor); } catch (OperationCanceledException e) { return Status.CANCEL_STATUS; } } return Status.OK_STATUS; }
@Override public Object[] getAffectedObjects() { if (triggeringOperation instanceof IAdvancedUndoableOperation) { return ((IAdvancedUndoableOperation) triggeringOperation).getAffectedObjects(); } return null; }
@Override public void run(IProgressMonitor pm) { try { switch (doing) { case UNDOING: status = ((IAdvancedUndoableOperation) operation) .computeUndoableStatus(pm); break; case REDOING: status = ((IAdvancedUndoableOperation) operation) .computeRedoableStatus(pm); break; case EXECUTING: status = ((IAdvancedUndoableOperation2) operation) .computeExecutionStatus(pm); break; } } catch (ExecutionException e) { reportException(e, uiInfo); status = IOperationHistory.OPERATION_INVALID_STATUS; } }
@Override public void aboutToNotify(OperationHistoryEvent event) { if (triggeringOperation instanceof IAdvancedUndoableOperation) { ((IAdvancedUndoableOperation) triggeringOperation).aboutToNotify(event); } }
@Override public void run() throws Exception { advancedOp.aboutToNotify(event); } });
@Override public IStatus computeUndoableStatus(IProgressMonitor monitor) throws ExecutionException { if (triggeringOperation instanceof IAdvancedUndoableOperation) { try { return ((IAdvancedUndoableOperation) triggeringOperation).computeUndoableStatus(monitor); } catch (OperationCanceledException e) { return Status.CANCEL_STATUS; } } return Status.OK_STATUS; }
@Override public Object[] getAffectedObjects() { if (triggeringOperation instanceof IAdvancedUndoableOperation) { return ((IAdvancedUndoableOperation) triggeringOperation).getAffectedObjects(); } return null; }
@Override public void run() throws Exception { advancedOp.aboutToNotify(event); } });
@Override public IStatus computeRedoableStatus(IProgressMonitor monitor) throws ExecutionException { if (triggeringOperation instanceof IAdvancedUndoableOperation) { try { return ((IAdvancedUndoableOperation) triggeringOperation).computeRedoableStatus(monitor); } catch (OperationCanceledException e) { return Status.CANCEL_STATUS; } } return Status.OK_STATUS; }
@Override public IStatus computeUndoableStatus(IProgressMonitor monitor) throws ExecutionException { if (triggeringOperation instanceof IAdvancedUndoableOperation) { try { return ((IAdvancedUndoableOperation) triggeringOperation).computeUndoableStatus(monitor); } catch (OperationCanceledException e) { return Status.CANCEL_STATUS; } } return Status.OK_STATUS; }
@Override public Object[] getAffectedObjects() { if (triggeringOperation instanceof IAdvancedUndoableOperation) { return ((IAdvancedUndoableOperation) triggeringOperation).getAffectedObjects(); } return null; }
@Override public void run() throws Exception { advancedOp.aboutToNotify(event); } });
@Override public IStatus computeRedoableStatus(IProgressMonitor monitor) throws ExecutionException { if (triggeringOperation instanceof IAdvancedUndoableOperation) { try { return ((IAdvancedUndoableOperation) triggeringOperation).computeRedoableStatus(monitor); } catch (OperationCanceledException e) { return Status.CANCEL_STATUS; } } return Status.OK_STATUS; }
try { status = ((IAdvancedUndoableOperation) currentOp) .computeUndoableStatus(null); } catch (ExecutionException e) {
@Override public void aboutToNotify(OperationHistoryEvent event) { if (triggeringOperation instanceof IAdvancedUndoableOperation) { ((IAdvancedUndoableOperation) triggeringOperation).aboutToNotify(event); } }
@Override public void aboutToNotify(OperationHistoryEvent event) { if (triggeringOperation instanceof IAdvancedUndoableOperation) { ((IAdvancedUndoableOperation) triggeringOperation).aboutToNotify(event); } }