Revision: 2828
          http://skim-app.svn.sourceforge.net/skim-app/?rev=2828&view=rev
Author:   hofman
Date:     2007-09-04 10:16:38 -0700 (Tue, 04 Sep 2007)

Log Message:
-----------
Draw history highlights using transparent color. Make sure the whole table is 
updated when selection changes, to make sure history highlighting is updated.

Modified Paths:
--------------
    trunk/SKThumbnailTableView.m
    trunk/SKTocOutlineView.m

Modified: trunk/SKThumbnailTableView.m
===================================================================
--- trunk/SKThumbnailTableView.m        2007-09-04 17:06:05 UTC (rev 2827)
+++ trunk/SKThumbnailTableView.m        2007-09-04 17:16:38 UTC (rev 2828)
@@ -99,8 +99,8 @@
             row = [[rows objectAtIndex:i] intValue];
             rect = [self rectOfRow:row];
             if (NSIntersectsRect(rect, clipRect) && [rowIndexes 
containsIndex:row] == NO) {
-                [[[self backgroundColor] blendedColorWithFraction:0.5 - 0.1 * 
i ofColor:color] setFill];
-                NSRectFill(rect);
+                [[color colorWithAlphaComponent:0.5 - 0.1 * i] setFill];
+                [NSBezierPath fillRect:rect];
             }
             [rowIndexes addIndex:row];
         }
@@ -118,6 +118,16 @@
     [NSGraphicsContext restoreGraphicsState];
 }
 
+- (void)selectRowIndexes:(NSIndexSet *)indexes 
byExtendingSelection:(BOOL)extend {
+    [super selectRowIndexes:indexes byExtendingSelection:extend];
+    [self setNeedsDisplay:YES];
+}
+
+- (void)deselectRow:(int)row {
+    [super deselectRow:row];
+    [self setNeedsDisplay:YES];
+}
+
 - (BOOL)isScrolling { return isScrolling; }
 
 - (void)handleScrollerWillScroll:(NSNotification *)note {

Modified: trunk/SKTocOutlineView.m
===================================================================
--- trunk/SKTocOutlineView.m    2007-09-04 17:06:05 UTC (rev 2827)
+++ trunk/SKTocOutlineView.m    2007-09-04 17:16:38 UTC (rev 2828)
@@ -76,8 +76,8 @@
             row = [[rows objectAtIndex:i] intValue];
             rect = [self rectOfRow:row];
             if (NSIntersectsRect(rect, clipRect) && [rowIndexes 
containsIndex:row] == NO) {
-                [[[self backgroundColor] blendedColorWithFraction:0.5 - 0.1 * 
i ofColor:color] setFill];
-                NSRectFill(rect);
+                [[color colorWithAlphaComponent:0.5 - 0.1 * i] setFill];
+                [NSBezierPath fillRect:rect];
             }
             [rowIndexes addIndex:row];
         }
@@ -88,13 +88,23 @@
         rect = [self rectOfRow:row];
         if (NSIntersectsRect(rect, clipRect)) {
             [color setFill];
-            NSRectFill([self rectOfRow:row]);
+            [NSBezierPath fillRect:rect];
         }
     }
     
     [NSGraphicsContext restoreGraphicsState];
 }
 
+- (void)selectRowIndexes:(NSIndexSet *)indexes 
byExtendingSelection:(BOOL)extend {
+    [super selectRowIndexes:indexes byExtendingSelection:extend];
+    [self setNeedsDisplay:YES];
+}
+
+- (void)deselectRow:(int)row {
+    [super deselectRow:row];
+    [self setNeedsDisplay:YES];
+}
+
 - (void)removeTrackingRects {
     if (trackingRects) {
         CFIndex idx = CFArrayGetCount(trackingRects);


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
Skim-app-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/skim-app-commit

Reply via email to