@Override
    public boolean canStartDragging(DnDAction action, @NotNull Point dragOrigin) {
      LOG.debug("canStartDragging(): dragOrigin=" + dragOrigin);
      if (myResizeLine != -1) {
        LOG.debug("canStartDragging(): have resize line");
        return false;
      }
      RadContainer container = getSelectedGridContainer();
      if (container != null &&
          container.getGridLayoutManager().getGridLineNear(mySelectedContainer, myIsRow, dragOrigin, 4) != -1) {
        LOG.debug("canStartDragging(): have gridline near");
        return false;
      }
      int[] selectedCells = getSelectedCells(dragOrigin);
      for(int cell: selectedCells) {
        if (!canDragCell(cell)) {
          LOG.debug("canStartDragging(): cannot drag cell");
          return false;
        }
      }
      LOG.debug("canStartDragging(): starting drag");
      return true;
    }
@Override
    public boolean canStartDragging(DnDAction action, @NotNull Point dragOrigin)