Package com.iizigo.editor
Class UndoTransaction
- java.lang.Object
- org.eclipse.core.commands.operations.AbstractOperation
- com.iizigo.editor.UndoTransaction
 
 
- All Implemented Interfaces:
- org.eclipse.core.commands.operations.IUndoableOperation
 - public class UndoTransaction extends org.eclipse.core.commands.operations.AbstractOperationClass used to create transactions in the operations history. Construct a new UndoTransaction instance to start the transaction, and call- commitat the end, as simple as that! If it fails, call- rollback, but ALWAYS make sure either- commitor- rollbackis called using- try-catch-finally, otherwise there may be leaks due to history listeners.- Author:
- Christopher Mindus
 
- Constructor Summary- Constructors - Constructor - Description - UndoTransaction(java.lang.String description, org.eclipse.core.commands.operations.IUndoContext undoContext)Constructor used to begin the undo transaction.
 - Method Summary- All Methods Instance Methods Concrete Methods - Modifier and Type - Method - Description - boolean- canExecute()- boolean- canRedo()- boolean- canUndo()- void- commit()Commits a series of operations in a transaction initiated with a prior call to- begin.- void- dispose()- org.eclipse.core.runtime.IStatus- execute(org.eclipse.core.runtime.IProgressMonitor monitor, org.eclipse.core.runtime.IAdaptable info)- org.eclipse.core.runtime.IStatus- redo(org.eclipse.core.runtime.IProgressMonitor monitor, org.eclipse.core.runtime.IAdaptable info)- boolean- rollback(org.eclipse.swt.widgets.Shell shell, boolean performUndo)Performs a rollback.- org.eclipse.core.runtime.IStatus- undo(org.eclipse.core.runtime.IProgressMonitor monitor, org.eclipse.core.runtime.IAdaptable info)
 
- Constructor Detail- UndoTransaction- public UndoTransaction(java.lang.String description, org.eclipse.core.commands.operations.IUndoContext undoContext)Constructor used to begin the undo transaction.- It is very important to call - commitor- rollbackin all cases, use- try-catch-finallyto ensure this is done even when exceptions occur.- Parameters:
- description- The description of the entire operation.
 
 
 - Method Detail- rollback- public boolean rollback(org.eclipse.swt.widgets.Shell shell, boolean performUndo)Performs a rollback.- Parameters:
- shell- The shell, can be set to null if performUndo is false.
- performUndo- Flag indicating that operations already performed should be undone as much as possible. The operations that have been undone are removed from history, the ones not successful are left without change and no "global" transaction undo operation is used.
- Returns:
- Success flag when performUndois true. false indicates at least one operation failed to be undone, true indicates all operations are undone.
 
 - commit- public void commit() Commits a series of operations in a transaction initiated with a prior call to- begin.
 - dispose- public void dispose() - Specified by:
- disposein interface- org.eclipse.core.commands.operations.IUndoableOperation
- Overrides:
- disposein class- org.eclipse.core.commands.operations.AbstractOperation
 
 - canExecute- public boolean canExecute() - Specified by:
- canExecutein interface- org.eclipse.core.commands.operations.IUndoableOperation
- Overrides:
- canExecutein class- org.eclipse.core.commands.operations.AbstractOperation
 
 - canRedo- public boolean canRedo() - Specified by:
- canRedoin interface- org.eclipse.core.commands.operations.IUndoableOperation
- Overrides:
- canRedoin class- org.eclipse.core.commands.operations.AbstractOperation
 
 - canUndo- public boolean canUndo() - Specified by:
- canUndoin interface- org.eclipse.core.commands.operations.IUndoableOperation
- Overrides:
- canUndoin class- org.eclipse.core.commands.operations.AbstractOperation
 
 - execute- public org.eclipse.core.runtime.IStatus execute(org.eclipse.core.runtime.IProgressMonitor monitor, org.eclipse.core.runtime.IAdaptable info) throws org.eclipse.core.commands.ExecutionException- Specified by:
- executein interface- org.eclipse.core.commands.operations.IUndoableOperation
- Specified by:
- executein class- org.eclipse.core.commands.operations.AbstractOperation
- Throws:
- org.eclipse.core.commands.ExecutionException
 
 - redo- public org.eclipse.core.runtime.IStatus redo(org.eclipse.core.runtime.IProgressMonitor monitor, org.eclipse.core.runtime.IAdaptable info) throws org.eclipse.core.commands.ExecutionException- Specified by:
- redoin interface- org.eclipse.core.commands.operations.IUndoableOperation
- Specified by:
- redoin class- org.eclipse.core.commands.operations.AbstractOperation
- Throws:
- org.eclipse.core.commands.ExecutionException
 
 - undo- public org.eclipse.core.runtime.IStatus undo(org.eclipse.core.runtime.IProgressMonitor monitor, org.eclipse.core.runtime.IAdaptable info) throws org.eclipse.core.commands.ExecutionException- Specified by:
- undoin interface- org.eclipse.core.commands.operations.IUndoableOperation
- Specified by:
- undoin class- org.eclipse.core.commands.operations.AbstractOperation
- Throws:
- org.eclipse.core.commands.ExecutionException