void () { myContext.setLocation(getLocation()); if (myContext.getComponents() == null) { if (!ArrayUtil.contains(SimpleTransferable.getData(myEvent.getTransferable(), Class.class), myDragTargets)) { myContext.setComponents(Collections.emptyList()); return; } if (myToolProvider.getActiveTool() instanceof CreationTool tool) { myContext.setType(OperationContext.CREATE); try { myContext.setComponents(Collections.singletonList(tool.getFactory().create())); } catch (Throwable e) { myContext.setComponents(Collections.emptyList()); myToolProvider.loadDefaultTool(); } return; } List<RadComponent> components = RadComponent.getPureSelection(myArea.getSelection()); RadComponent parent = null; for (RadComponent component : components) { if (parent == null) { parent = component.getParent(); } else if (parent != component.getParent()) { components = Collections.emptyList(); break; } } myContext.setComponents(components); myContext.resetMoveAddEnabled(); for (RadComponent component : components) { component.processDropOperation(myContext); } } }