# Package org.eclipse.ui.ide.undo

package org.eclipse.ui.ide.undo
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);

Related Packages
Package
Description
org.eclipse.ui.ide
APIs for the IDE-specific portion of the Eclipse Platform User Interface.
org.eclipse.ui.ide.dialogs
APIs for dialogs in the IDE-specific portion of the Eclipse Platform User Interface.
org.eclipse.ui.ide.fileSystem
APIs for the IDE-specific support for the org.eclipse.core.filesystem.fileSystem extension.
Classes
Class
Description
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
Deprecated.
Replaced by IResourceSnapshot and ResourceSnapshotFactory in the org.eclipse.core.resources.undo.snapshot package
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.