Problem: 1666673

Title: TTextGridView::DrawCell uses wrong port

Received: Jul 5 1997 9:20PM


(1) Build the GrayScaleGridView app.
(2) Resize one of the columns so that it overlaps text of the column to its left
(3) See the column to its left still write text (now) over the newly shrunk column
(3a) Tracing the problem shows that the TTextGridView::DrawCell calls MADrawString--
       If the ColWidth < StringWidth(), DrawCell() makes no attempt to fix the problem and
       MADrawString() calls ::DrawString(), which just blasts the string, ovewritting
       the column to its right
There are two possible solutions that I know of: setting the clip region when a SetColWIdth() is done so that DrawString() doesn't draw past the col width, or calling another function, suchas MATextBox, when DOES check/truncate at drawing boundries.
Fix: Changed MADrawString so that it checks if the string is longer than the destination rectangle. If the string is too big to fit, the clipping region is temporarily set to the destination rectangle while the string is drawn.