границы вы вычисляете сами, в разных случая по разному
нужно представить в голове прямоугольник который лежит на родителе, за его пределы нельзя вытащить объект
вот к примеру мой текущий код:
не позволяет вытаскивать объект за пределы visibleRect

Код AS3:
protected function downHandler(event:MouseEvent):void
{
// view.maxX / view.maxY - размер таскаемого объекта
// visibleRect - видимая область экрана
// Check sizes.
if ( view.maxX > visibleRect.width )
{
view.dragRect.x = - (view.maxX - visibleRect.width);
view.dragRect.width = view.maxX - visibleRect.width;
}
else
{
view.dragRect.x = (visibleRect.width-view.maxX)/2;
view.dragRect.width = 0;
}
if ( view.maxY > visibleRect.height )
{
view.dragRect.y = - (view.maxY - visibleRect.height);
view.dragRect.height = view.maxY-visibleRect.height;
}
else
{
view.dragRect.y = ( visibleRect.height - view.maxY ) / 2;
view.dragRect.height = 0;
}
// Need to limit drag coords.
view.startDrag( false, view.dragRect );
}