From: <ho...@us...> - 2007-02-26 13:01:13
|
Revision: 9961 http://svn.sourceforge.net/bibdesk/?rev=9961&view=rev Author: hofman Date: 2007-02-26 05:01:13 -0800 (Mon, 26 Feb 2007) Log Message: ----------- Add cursor rects for resize regions of notes outlineView Modified Paths: -------------- skim/SKNoteOutlineView.m Modified: skim/SKNoteOutlineView.m =================================================================== --- skim/SKNoteOutlineView.m 2007-02-26 13:01:02 UTC (rev 9960) +++ skim/SKNoteOutlineView.m 2007-02-26 13:01:13 UTC (rev 9961) @@ -151,4 +151,34 @@ } } +- (void)collapseItem:(id)item collapseChildren:(BOOL)collapseChildren { + // NSOutlineView seems to call resetCursorRect when expanding, but not when collapsing + [super collapseItem:item collapseChildren:collapseChildren]; + [self resetCursorRects]; +} + +-(void)resetCursorRects { + if ([[self delegate] respondsToSelector:@selector(outlineView:canResizeRowByItem:)]) { + [self discardCursorRects]; + [super resetCursorRects]; + + NSRange visibleRows = [self rowsInRect:[self visibleRect]]; + unsigned int row; + + if (visibleRows.length == 0) + return; + + for (row = visibleRows.location; row < NSMaxRange(visibleRows); row++) { + id item = [self itemAtRow:row]; + if ([[self delegate] outlineView:self canResizeRowByItem:item] == NO) + continue; + NSRect ignored, rect = [self rectOfRow:row]; + NSDivideRect(rect, &rect, &ignored, 5.0, [self isFlipped] ? NSMaxYEdge : NSMinYEdge); + [self addCursorRect:rect cursor:[NSCursor resizeUpDownCursor]]; + } + } else { + [super resetCursorRects]; + } +} + @end This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |