@Override
  public boolean canExecute() {
    if (myContext.isMove()) {
      if (myComponents.contains(myChildTarget)) {
        return false;
      }

      List<RadComponent> children = getChildren();
      int index = children.indexOf(myChildTarget) + (myInsertBefore ? -1 : 1);
      if (0 <= index && index < children.size()) {
        return !myComponents.contains(children.get(index));
      }
    }
    return true;
  }
@Override
  public boolean canExecute()