@Override
  public void dragOver(DropTargetDragEvent dtde) {
    try {
      if (myComponentDragObject == null) {
        dtde.rejectDrag();
        return;
      }
      final int dx = dtde.getLocation().x - myLastPoint.x;
      final int dy = dtde.getLocation().y - myLastPoint.y;

      if (myDraggedComponentsCopy != null && myDraggedComponentList != null) {
        for (RadComponent aMySelection : myDraggedComponentsCopy) {
          aMySelection.shift(dx, dy);
        }
      }

      myLastPoint = dtde.getLocation();
      myEditor.getDragLayer().repaint();

      ComponentDropLocation location = myGridInsertProcessor.processDragEvent(dtde.getLocation(), myComponentDragObject);
      ComponentTree componentTree = DesignerToolWindowManager.getInstance(myEditor).getComponentTree();

      if (!location.canDrop(myComponentDragObject) ||
          (myDraggedComponentList != null && FormEditingUtil.isDropOnChild(myDraggedComponentList, location))) {
        if (componentTree != null) {
          componentTree.setDropTargetComponent(null);
        }
        dtde.rejectDrag();
      }
      else {
        if (componentTree != null) {
          componentTree.setDropTargetComponent(location.getContainer());
        }
        dtde.acceptDrag(dtde.getDropAction());
      }
    }
    catch (Exception e) {
      LOG.error(e);
    }
  }
@Override
  public void dragOver(DropTargetDragEvent dtde)