private Point getDropPoint ( QuickWidget element , DropPosition pos ) { Point dropPoint = new Point ( element . getCenterLocation ( ) . x , element . getCenterLocation ( ) . y ) ; if ( pos == DropPosition . CENTER ) { return dropPoint ; } Point dragPoint = new Point ( this . getCenterLocation ( ) . x , this . getCenterLocation ( ) . y ) ; // Find the side of the DesktopWindowRect of the widget that as the intersect Point dragIntersectPoint = intersection ( dragPoint . x , dragPoint . y , dropPoint . x , dropPoint . y , this . getRect ( ) ) ; if ( dragIntersectPoint != null ) { Point dropIntersectPoint = intersection ( dragPoint . x , dragPoint . y , dropPoint . x , dropPoint . y , element . getRect ( ) ) ; if ( dropIntersectPoint != null ) { if ( pos == DropPosition . EDGE ) { return dropIntersectPoint ; } // Get the mid point of the line return new Point ( ( dragIntersectPoint . x + dropIntersectPoint . x ) / 2 , ( dragIntersectPoint . y + dropIntersectPoint . y ) / 2 ) ; } } return null ; }
The drop point is on the quick widget passed in