Runtime

## org.eclipse.gmf.runtime.diagram.core.commands
Class UngroupCommand

    java.lang.Object
      org.eclipse.core.commands.operations.AbstractOperation
          org.eclipse.emf.workspace.AbstractEMFOperation
              org.eclipse.gmf.runtime.emf.commands.core.command.AbstractTransactionalCommand
                  org.eclipse.gmf.runtime.diagram.core.commands.UngroupCommand

All Implemented Interfaces:
  IUndoableOperation, ICommand, org.eclipse.gmf.runtime.common.core.internal.command.ICommandWithSettableResult

    public class UngroupCommand

extends AbstractTransactionalCommand

This command ungroups a group view. It reparents the children of the group so that their parent is the group's parent and it deletes the group view. The children's locations are also changed to be relative to the location of their new parent.

Since:
  2.1

Constructor Summary
`UngroupCommand(org.eclipse.emf.transaction.TransactionalEditingDomain editingDomain, Node groupView)` Creates a new instance.
`UngroupCommand(org.eclipse.emf.transaction.TransactionalEditingDomain editingDomain, Node group, java.util.Map options)` Creates a new instance.

Method Summary
`protected CommandResult` `doExecuteWithResult(IProgressMonitor progressMonitor, IAdaptable info)` Implemented by subclasses to perform the model changes.
`protected Node` `getGroup()` Returns the group to be ungrouped.
`protected void` `translateChildrenLocations()` Translate the location of the children to no longer be relative to the group's location.

Methods inherited from class org.eclipse.gmf.runtime.emf.commands.core.command.AbstractTransactionalCommand
`aggregateStatuses, cleanup, compose, didRedo, didUndo, doExecute, doRedo, doUndo, getAffectedFiles, getCommandResult, getWorkspaceFiles, getWorkspaceFiles, internalSetResult, reduce, setResult`

Methods inherited from class org.eclipse.emf.workspace.AbstractEMFOperation
`canRedo, canUndo, didCommit, dispose, execute, getChange, getEditingDomain, getOptions, redo, undo`

Methods inherited from class org.eclipse.core.commands.operations.AbstractOperation
`addContext, canExecute, getContexts, getLabel, hasContext, removeContext, setLabel, toString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface org.eclipse.gmf.runtime.common.core.command.ICommand
`setLabel`

Methods inherited from interface org.eclipse.core.commands.operations.IUndoableOperation
`addContext, canExecute, canRedo, canUndo, dispose, execute, getContexts, getLabel, hasContext, redo, removeContext, undo`

Constructor Detail

### UngroupCommand

    public UngroupCommand(org.eclipse.emf.transaction.TransactionalEditingDomain editingDomain,
                          Node groupView)

  Creates a new instance.

  Parameters:
    `editingDomain` - the editing domain
    `groupView` - the group view to ungroup

### UngroupCommand

    public UngroupCommand(org.eclipse.emf.transaction.TransactionalEditingDomain editingDomain,
                          Node group,
                          java.util.Map options)

  Creates a new instance.

  Parameters:
    `editingDomain` - the editing domain
    `groupView` - the group view to ungroup
    `options` - for the transaction in which this command executes, or `null` for the default options

Method Detail

### doExecuteWithResult

    protected CommandResult doExecuteWithResult(IProgressMonitor progressMonitor,
                                                IAdaptable info)
                                         throws ExecutionException

  Description copied from class: `AbstractTransactionalCommand`
  Implemented by subclasses to perform the model changes. These changes are applied by manipulation of the EMF metamodel's API, not by executing commands on the editing domain's command stack.

  Specified by:
    `doExecuteWithResult` in class `AbstractTransactionalCommand`
  Parameters:
    `progressMonitor` - the progress monitor provided by the operation history
    `info` - the adaptable provided by the operation history
  Returns:
    the result of the execution
  Throws:
    `ExecutionException` - if, for some reason, I fail to complete the operation

### translateChildrenLocations

    protected void translateChildrenLocations()

  Translate the location of the children to no longer be relative to the group's location.

### getGroup

    protected Node getGroup()

  Returns the group to be ungrouped.

  Returns:
    the group to be ungrouped.

Runtime

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp., Borland Software Corp., and others 2005,2006. All rights reserved.