@Override
  public void moveTo(int x, int y) {
    if (x == myX && y == myY) {
      return;
    }

    int xOld = myX;
    int yOld = myY;
    super.moveTo(x, y);
    for (jetbrains.mps.nodeEditor.cells.EditorCell myEditorCell : getCells()) {
      myEditorCell.moveTo(myEditorCell.getX() + x - xOld, myEditorCell.getY() + y - yOld);
      if (((EditorCell_Basic) myEditorCell).isNeedsRelayout()) {
        markNeedsRelayout();
      }
    }
    adjustNeedsRelayout(xOld, yOld, x, y);
  }