# Package org.eclipse.ui.ide.undo

APIs that provide undo and redo behavior for operations that manipulate the workspace.

See: Description

Class Summary
AbstractWorkspaceOperation: An AbstractWorkspaceOperation represents an undoable operation that affects the workspace.
CopyProjectOperation: A CopyProjectOperation represents an undoable operation for copying a project, also specifying the location of its contents.
CopyResourcesOperation: A CopyResourcesOperation represents an undoable operation for copying one or more resources in the workspace.
CreateFileOperation: A CreateFileOperation represents an undoable operation for creating a file in the workspace.
CreateFolderOperation: A CreateFolderOperation represents an undoable operation for creating a folder in the workspace.
CreateMarkersOperation: A CreateMarkersOperation represents an undoable operation for creating one or more markers on one or more resources in the workspace.
CreateProjectOperation: A CreateProjectOperation represents an undoable operation for creating a project in the workspace.
DeleteMarkersOperation: A DeleteMarkersOperation represents an undoable operation for deleting one or more markers in the workspace.
DeleteResourcesOperation: A DeleteResourcesOperation represents an undoable operation for deleting one or more resources in the workspace.
MoveProjectOperation: A MoveProjectOperation represents an undoable operation for moving a project's content to a different location.
MoveResourcesOperation: A MoveResourcesOperation represents an undoable operation for moving one or more resources in the workspace.
ResourceDescription: ResourceDescription is a lightweight description that describes the common attributes of a resource to be created.
UpdateMarkersOperation: An UpdateMarkersOperation represents an undoable operation for updating one or more markers in the workspace with one or more sets of attributes.
WorkspaceUndoUtil: WorkspaceUndoUtil defines common utility methods and constants used by clients who create undoable workspace operations.

## Package org.eclipse.ui.ide.undo Description

APIs that provide undo and redo behavior for operations that manipulate the workspace.

## Package Specification

This package contains APIs for the Eclipse Platform User Interface that support the undo and redo of operations that manipulate the workspace. Undoable operations that create, delete, move, and copy resources are provided.

The typical usage pattern is that a client creates one of the concrete operations and executes it using the platform operation history. For example, the following snippet deletes the project "Blort" without deleting its contents, and adds it to the operation history so that it can be undone and redone.

    IProject project = getWorkspace().getRoot().getProject("Blort");
    // assume that getMonitor() returns a suitable progress monitor
    project.create(getMonitor());
    project.open(getMonitor());
    DeleteResourcesOperation op = new DeleteResourcesOperation(
            new IResource[] { project }, "Delete Project Blort", false);
    PlatformUI.getWorkbench().getOperationSupport()
            .getOperationHistory().execute(operation, getMonitor(), null);