@ -1248,7 +1248,7 @@ public class FormDesigner extends TargetComponent<Form> implements TreeSelection
* @param currentDragEvent
* /
public void startDraggingNewWidget ( XCreator xCreator , MouseEvent startDragEvent , MouseEvent currentDragEvent ) {
if ( currentDragEvent = = null | | this . getDropTarget ( ) ! = null ) {
if ( currentDragEvent = = null ) {
return ;
}
@ -1270,7 +1270,7 @@ public class FormDesigner extends TargetComponent<Form> implements TreeSelection
* @param currentDragEvent
* /
public void startDraggingFormWidget ( XCreator xCreator , MouseEvent startDragEvent , MouseEvent currentDragEvent ) {
if ( currentDragEvent = = null | | this . getDropTarget ( ) ! = null ) {
if ( currentDragEvent = = null ) {
return ;
}
backUpCreator ( xCreator ) ;
@ -1318,7 +1318,14 @@ public class FormDesigner extends TargetComponent<Form> implements TreeSelection
DraggingModel model = this . draggingModel ;
MouseEvent dragEvent = model . getCurrentDragEvent ( ) ;
XCreator hotspot = this . getComponentAt ( dragEvent . getX ( ) , dragEvent . getY ( ) ) ;
return XCreatorUtils . getHotspotContainer ( hotspot ) ;
XLayoutContainer container = XCreatorUtils . getHotspotContainer ( hotspot ) ;
XLayoutContainer topLayout = container . getTopLayout ( ) ;
// REPORT-66939 Tab比较特殊,它是又多个LayoutContainer组成,直接返回container会导致误判,需要先找到最上层topLayout,取其父layout才是正确结果
if ( topLayout ! = null & & container ! = topLayout ) {
return ( XLayoutContainer ) topLayout . getParent ( ) ;
} else {
return container ;
}
}
/ * *