package com.xrosstools.xunit.editor.commands;
import org.eclipse.gef.commands.Command;
import com.xrosstools.xunit.editor.model.UnitNode;
import com.xrosstools.xunit.editor.model.UnitNodeContainer;
public class UnitNodeContainerMoveChildCommand extends Command {
private UnitNodeContainer parent;
private UnitNode unit;
private int oldIndex;
private int index;
public UnitNodeContainerMoveChildCommand(UnitNodeContainer parent, UnitNode unit, int index){
this.parent = parent;
this.unit = unit;
oldIndex = parent.indexOf(unit);
this.index = index;
}
public void execute() {
parent.move(index, unit);
}
public String getLabel() {
return "Move Node";
}
public void redo() {
execute();
}
public void undo() {
parent.move(oldIndex, unit);
}
}