Interface ITransactionalOperation
- All Superinterfaces:
IUndoableOperation
- All Known Implementing Classes:
AbstractCompositeOperation,AddContentChildOperation,AddSnapToStrategyOperation,AttachToContentAnchorageOperation,BendContentOperation,BendVisualOperation,ChangeContentsOperation,ChangeFocusOperation,ChangeSelectionOperation,ChangeViewportOperation,DeselectOperation,DetachFromContentAnchorageOperation,ForwardUndoCompositeOperation,RemoveContentChildOperation,RemoveSnapToStrategyOperation,ResizeContentOperation,ResizeOperation,RevealOperation,ReverseUndoCompositeOperation,SelectOperation,SetPropertyValueOperation,SetRefreshVisualOperation,TransformContentOperation,TransformVisualOperation
An
ITransactionalOperation is an IUndoableOperation that
tolerates successive calls to
IUndoableOperation.execute(IProgressMonitor, IAdaptable) and
IUndoableOperation.undo(IProgressMonitor, IAdaptable) and allows
to check whether it has an overall effect (isNoOp()) compared to the
initial state upon construction.
It is used by transaction policies to
encapsulate their applied changes. The transaction policy will potentially execute the operation locally (to
realize "live-feedback") before returning it in its
AbstractPolicy.commit() method. It will then be executed
on the IOperationHistory, but only if it has an overall effect that
needs to be undoable.
-
Method Summary
Modifier and TypeMethodDescriptionbooleanReturnstrueif thisITransactionalOperationis actually changing model data (instead of only affecting the visualization).booleanisNoOp()Returnstrueif thisITransactionalOperationhas no effect (in comparison to its initial state).Methods inherited from interface org.eclipse.core.commands.operations.IUndoableOperation
addContext, canExecute, canRedo, canUndo, dispose, execute, getContexts, getLabel, hasContext, redo, removeContext, undo
-
Method Details
-
isContentRelevant
boolean isContentRelevant()Returnstrueif thisITransactionalOperationis actually changing model data (instead of only affecting the visualization). Otherwise returnsfalse. The content relevance of anITransactionalOperationcan be checked to determine if the execution of the operation will affect the model, for example, to set an editor's dirty flag.- Returns:
trueif thisITransactionalOperationis actually changing model data, otherwisefalse.
-
isNoOp
boolean isNoOp()Returnstrueif thisITransactionalOperationhas no effect (in comparison to its initial state). Otherwise returnsfalse.- Returns:
trueif thisITransactionalOperationhas no effect, otherwisefalse.
-