private TimePeriod calculate(InternalDrag drag) {
// TODO this fails when the layout decorator is itself decorated (e.g. by a WindowBorder!
ScheduleLayout layout = (ScheduleLayout) getParent().getSpecification();
Location location = drag.getLocation();
location.move(0, -getView().getLocation().getY());
int top = drag.getOverlay().getLocation().getY() - location.getY();
int bottom = top + drag.getOverlay().getSize().getHeight();
LOG.debug(top + " " + bottom);