throw new java.lang.IndexOutOfBoundsException("Range out of bound (left,top,right,bottom): "+left+", "+top+", "+right+", "+bottom);
}
_matrix.removeRange(left, top, right, bottom, toLeft);
final Collection changed = _matrixMerge.removeRange(left, top, right, bottom, toLeft);
final Range rng = new RangeSimple(this, null, left, top, right, bottom);
_book.fireSSDataEvent(new SSDataEvent(rng, SSDataEvent.RANGE_DELETE,
toLeft ? SSDataEvent.MOVE_H : SSDataEvent.MOVE_V));
for (final Iterator it = changed.iterator(); it.hasNext(); ) {
final Range[] rngs = (Range[]) it.next();
final Range org = rngs[0];
final Range mod = rngs[1];
_book.fireSSDataEvent(new SSDataEvent(mod, org,
mod == null ? SSDataEvent.MERGE_DELETE : SSDataEvent.MERGE_CHANGE,
toLeft ? SSDataEvent.MOVE_H : SSDataEvent.MOVE_V));
}
}