Fix for redrawing issues in tableview. Closes #627

This commit is contained in:
Randall Luecke committed 2010-07-12 21:14:48 -05:00
1 parent 70f2d86b58
commit 0cbdb3b2d1
1 file changed
+9 -3
+9 -3
View File
@@ -880,7 +880,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
_selectedColumnIndexes = [columns copy];
[self _updateHighlightWithOldColumns:previousSelectedIndexes newColumns:_selectedColumnIndexes];
[_tableDrawView display]; // FIXME: should be setNeedsDisplayInRect:enclosing rect of new (de)selected columns
[self setNeedsDisplay:YES]; // FIXME: should be setNeedsDisplayInRect:enclosing rect of new (de)selected columns
// but currently -drawRect: is not implemented here
if (_headerView)
[_headerView setNeedsDisplay:YES];
@@ -896,7 +896,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
_selectedRowIndexes = [rows copy];
[self _updateHighlightWithOldRows:previousSelectedIndexes newRows:_selectedRowIndexes];
[_tableDrawView display]; // FIXME: should be setNeedsDisplayInRect:enclosing rect of new (de)selected rows
[self setNeedsDisplay:YES]; // FIXME: should be setNeedsDisplayInRect:enclosing rect of new (de)selected rows
// but currently -drawRect: is not implemented here
[[CPKeyValueBinding getBinding:@"selectionIndexes" forObject:self] reverseSetValueFor:@"selectedRowIndexes"];
@@ -2237,7 +2237,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
[_tableDrawView setFrame:exposedRect];
[_tableDrawView display];
[self setNeedsDisplay:YES];
// Now clear all the leftovers
// FIXME: this could be faster!
@@ -2474,6 +2474,12 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
return [self convertRect:CGRectIntersection([superview bounds], [self frame]) fromView:superview];
}
- (void)setNeedsDisplay:(BOOL)aFlag
{
[super setNeedsDisplay:aFlag];
[_tableDrawView setNeedsDisplay:aFlag];
}
- (void)_drawRect:(CGRect)aRect
{
// FIX ME: All three of these methods will likely need to be rewritten for 1.0