From 941e8d53a0475dd9935a6dcf8fef74c38f497126 Mon Sep 17 00:00:00 2001 From: Julian Eberius Date: Fri, 2 Apr 2010 00:00:19 +0200 Subject: [PATCH] much improved drawing performance --- AsyncBGDrawOperation.m | 2 +- AsyncDrawOperation.m | 95 +- BackgroundUpdater.m | 52 +- MinimapView.h | 14 +- MinimapView.m | 116 +- NSView+Minimap.m | 39 +- NSWindowController+Minimap.m | 69 +- Textmate-Minimap.xcodeproj/ebi.mode1v3 | 144 +-- Textmate-Minimap.xcodeproj/ebi.pbxuser | 1384 ++++++++++++------------ 9 files changed, 837 insertions(+), 1078 deletions(-) diff --git a/AsyncBGDrawOperation.m b/AsyncBGDrawOperation.m index 234e992..a871f23 100644 --- a/AsyncBGDrawOperation.m +++ b/AsyncBGDrawOperation.m @@ -75,7 +75,7 @@ - (void)partialBackgroundDraw [image lockFocus]; [drawnPart drawInRect:partToDraw - fromRect:rectToRedraw + fromRect:NSZeroRect operation:NSCompositeSourceOver fraction:1.0]; [image unlockFocus]; diff --git a/AsyncDrawOperation.m b/AsyncDrawOperation.m index 2adbd55..dfa697c 100644 --- a/AsyncDrawOperation.m +++ b/AsyncDrawOperation.m @@ -55,11 +55,11 @@ - (void)setPartToDraw:(NSRect)part partToDraw = part; } -- (void)main +- (void)main { - if ([self isCancelled]) + if ([self isCancelled]) return; - + switch (mode) { case MM_COMPLETE_IMAGE: [self makeCompleteSnapshot]; @@ -72,101 +72,62 @@ - (void)main } } -- (void)makePartialSnapshot +- (void)makePartialSnapshot { [[minimapView drawLock] lock]; NSImage* old_image = [minimapView theImage]; int gutterSize = [minimapView gutterSize]; - NSRect tvBounds = NSMakeRect(gutterSize, 0, - [[minimapView textView] bounds].size.width-gutterSize, + NSRect tvBounds = NSMakeRect(gutterSize, 0, + [[minimapView textView] bounds].size.width-gutterSize, [[minimapView textView] bounds].size.height); NSRect bounds = [minimapView bounds]; float scaleFactor = bounds.size.width / tvBounds.size.width; int h = tvBounds.size.height*scaleFactor; NSRect newImageRect = NSMakeRect(0, 0, bounds.size.width, h); NSImage* image = [[[NSImage alloc] initWithSize:newImageRect.size] autorelease]; - if ([self checkCancelled]) + if ([self checkCancelled]) return; - NSRect rectToRedraw = NSMakeRect(tvBounds.origin.x, - partToDraw.origin.y/scaleFactor, + NSRect rectToRedraw = NSMakeRect(tvBounds.origin.x, + partToDraw.origin.y/scaleFactor, tvBounds.size.width, partToDraw.size.height/scaleFactor); NSImage* drawnPart = [[minimapView textView] snapshotByDrawingInRect:rectToRedraw]; - if ([self checkCancelled]) + if ([self checkCancelled]) return; - + [image lockFocus]; [fillColor set]; NSRectFill(NSMakeRect(0, 0, [image size].width, [image size].height)); // new image is longer or equal if (h >= [old_image size].height) { [old_image drawInRect:NSMakeRect(0, 0, [image size].width, [old_image size].height) - fromRect:NSZeroRect + fromRect:NSZeroRect operation:NSCompositeSourceOver fraction:1.0]; } else { [old_image drawInRect:newImageRect - fromRect:NSMakeRect(0,0, [old_image size].width, [image size].height) + fromRect:NSMakeRect(0,0, [old_image size].width, [image size].height) operation:NSCompositeSourceOver fraction:1.0]; } - + [drawnPart drawInRect:partToDraw - fromRect:rectToRedraw + fromRect:NSZeroRect operation:NSCompositeSourceOver fraction:1.0]; [image unlockFocus]; - if ([self checkCancelled]) + if ([self checkCancelled]) return; [minimapView performSelectorOnMainThread:@selector(asyncDrawFinished:) withObject:image waitUntilDone:YES]; [[minimapView drawLock] unlock]; } -<<<<<<< HEAD -======= -- (void)partialBackgroundDraw -{ - [[minimapView drawLock] lock]; - NSImage* image = [minimapView theImage]; - - if ([self checkCancelled]) - return; - NSRect tvBounds = [[minimapView textView] bounds]; - int gutterSize = [minimapView gutterSize]; - float scaleFactor = tvBounds.size.height / [image size].height; - NSRect rectToRedraw = NSMakeRect(gutterSize, - partToDraw.origin.y*scaleFactor, - tvBounds.size.width - gutterSize, - partToDraw.size.height*scaleFactor); - NSImage* drawnPart = [[minimapView textView] snapshotByDrawingInRect:rectToRedraw]; - - if ([self checkCancelled]) - return; - - [image lockFocus]; - [drawnPart drawInRect:partToDraw - fromRect:rectToRedraw - operation:NSCompositeSourceOver fraction:1.0]; - [image unlockFocus]; - NSRect visRect = [minimapView getVisiblePartOfMinimap]; - int p1 = partToDraw.origin.y; - int p2 = partToDraw.origin.y+partToDraw.size.height; - int l1 = visRect.origin.y; - int l2 = visRect.origin.y+visRect.size.height; - if ((p1>=l1 && p1<=l2) || (p2>=l1 && p2 <= l2)) { - [minimapView performSelectorOnMainThread:@selector(minorRefresh) withObject:NULL waitUntilDone:FALSE]; - - } - [[minimapView drawLock] unlock]; -} - ->>>>>>> newesttry - (BOOL)checkCancelled { if ([self isCancelled]) { [[minimapView drawLock] unlock]; - return YES; + return YES; } return NO; } @@ -179,34 +140,34 @@ - (NSRect)scaleRect:(NSRect)rect withFactor:(float)factor - (void)makeCompleteSnapshot { [[minimapView drawLock] lock]; - if ([self checkCancelled]) + if ([self checkCancelled]) return; NSView* textView = [minimapView textView]; NSBitmapImageRep* snapshot = [textView snapshot]; int gutterSize = [minimapView gutterSize]; - NSBitmapImageRep* croppedSnapshot = [self cropImageRep:snapshot + NSBitmapImageRep* croppedSnapshot = [self cropImageRep:snapshot ToRect:NSMakeRect(gutterSize, 0, [snapshot size].width-gutterSize, [snapshot size].height)]; - if ([self checkCancelled]) + if ([self checkCancelled]) return; NSRect bounds = [minimapView bounds]; float scaleFactor = bounds.size.width / [croppedSnapshot size].width; int h = croppedSnapshot.size.height*scaleFactor; - + NSImage* image = [[[NSImage alloc] initWithSize:NSMakeRect(0, 0, bounds.size.width, h).size] autorelease]; - - if ([self checkCancelled]) + + if ([self checkCancelled]) return; [self initializeFillColorFromTextView]; - + [image setFlipped:YES]; [image lockFocus]; NSRect imgRect = NSMakeRect(0, 0, bounds.size.width, h); [croppedSnapshot drawInRect:imgRect]; [image unlockFocus]; [image setFlipped:NO]; - - if ([self checkCancelled]) + + if ([self checkCancelled]) return; [minimapView performSelectorOnMainThread:@selector(asyncDrawFinished:) withObject:image waitUntilDone:YES]; [[minimapView drawLock] unlock]; @@ -217,8 +178,8 @@ - (void)makeCompleteSnapshot */ - (NSBitmapImageRep*)cropImageRep:(NSBitmapImageRep*)rep ToRect:(NSRect)rect { CGImageRef cgImg = CGImageCreateWithImageInRect([rep CGImage], NSRectToCGRect(rect)); NSBitmapImageRep *result = [[NSBitmapImageRep alloc] initWithCGImage:cgImg]; - - CGImageRelease(cgImg); + + CGImageRelease(cgImg); return [result autorelease]; } diff --git a/BackgroundUpdater.m b/BackgroundUpdater.m index 63b142f..bfc7281 100644 --- a/BackgroundUpdater.m +++ b/BackgroundUpdater.m @@ -10,6 +10,7 @@ #include "math.h" #import "MinimapView.h" #import "AsyncBGDrawOperation.h" +#define REGION_LENGTH 200 @implementation BackgroundUpdater @@ -19,7 +20,7 @@ - (id)initWithMinimapView:(MinimapView*)mv andOperationQueue:(NSOperationQueue*) if (self) { minimapView = mv; operationQueue = opQueue; - dirtyRegions = [[NSMutableArray arrayWithCapacity:[[minimapView theImage] size].height/50] retain]; + dirtyRegions = [[NSMutableArray arrayWithCapacity:[[minimapView theImage] size].height/REGION_LENGTH] retain]; } return self; } @@ -52,38 +53,33 @@ - (void)rangeWasRedrawn:(NSValue*)range - (void)setDirtyExceptForVisiblePart { + [dirtyRegions removeAllObjects]; NSImage* image = [minimapView theImage]; NSRect visRect = [minimapView getVisiblePartOfMinimap]; -<<<<<<< HEAD - -======= - ->>>>>>> newesttry int i = visRect.origin.y+visRect.size.height; int t = visRect.origin.y; BOOL goUp = TRUE; BOOL goDown = TRUE; while (goUp || goDown) { if (goDown) { - int length = 50; + int length = REGION_LENGTH; if ((i+length) > [image size].height) { length = [image size].height - i; } -<<<<<<< HEAD NSRange range = NSMakeRange(i, length+1); [self setRangeDirty:range]; - i=i+50; + i=i+REGION_LENGTH; if (i>[image size].height) goDown = FALSE; } if (goUp) { - int length = 50; + int length = REGION_LENGTH; if ((t-length) < 0) { length = t; } - NSRange range = NSMakeRange(t, length+1); + NSRange range = NSMakeRange(t-length+1, length+1); [self setRangeDirty:range]; - t = t-50; + t = t-REGION_LENGTH; if (t<0) goUp = FALSE; } @@ -93,10 +89,12 @@ - (void)setDirtyExceptForVisiblePart - (void)setRangeDirty:(NSRange)range { NSValue* val = [NSValue valueWithRange:range]; +/* for (NSValue* v in dirtyRegions) if ([v isEqualToValue:val]) { return; } + */ [dirtyRegions addObject:val]; } @@ -107,40 +105,16 @@ - (void)addDirtyRegions:(NSArray *)regions - (void)setCompleteImageDirty { + [dirtyRegions removeAllObjects]; NSImage* image = [minimapView theImage]; int i; - for (i=0;i<[image size].height;i=i+50) { - int length = 50; + for (i=0;i<[image size].height;i=i+REGION_LENGTH) { + int length = REGION_LENGTH; if ((i+length) > [image size].height) { length = [image size].height - i; } NSRange range = NSMakeRange(i-1,length+1); [dirtyRegions addObject:[NSValue valueWithRange:range]]; -======= - - NSRect rectToDraw = NSMakeRect(visRect.origin.x, i-1, visRect.size.width, length+1); - AsyncDrawOperation* op = [[[AsyncDrawOperation alloc] initWithMinimapView:minimapView andMode:MM_BACKGROUND_DRAW] autorelease]; - [op setPartToDraw:rectToDraw]; - [operationQueue addOperation:op]; - i=i+50; - if (i>[image size].height) - goDown = FALSE; - } - if (goUp) { - int length = 50; - if ((t-length) < 0) { - length = t; - } - - NSRect rectToDraw = NSMakeRect(visRect.origin.x, t-length-1, visRect.size.width, length+1); - AsyncDrawOperation* op = [[[AsyncDrawOperation alloc] initWithMinimapView:minimapView andMode:MM_BACKGROUND_DRAW] autorelease]; - [op setPartToDraw:rectToDraw]; - [operationQueue addOperation:op]; - t = t-50; - if (t<0) - goUp = FALSE; - } ->>>>>>> newesttry } } @end diff --git a/MinimapView.h b/MinimapView.h index 73f40ef..5a9744f 100644 --- a/MinimapView.h +++ b/MinimapView.h @@ -21,13 +21,11 @@ extern int const scaleDownTo; NSTimer* timer; NSLock* drawLock; BackgroundUpdater* updater; - -<<<<<<< HEAD + + float lastScrollPosition; + + NSRange viewableRange; float visRectPosBeforeScrolling; -======= - float scrollDiffToTextView; - NSRange viewableRange; ->>>>>>> newesttry NSRect visiblePartOfImage; Boolean refreshAll; Boolean minimapIsScrollable; @@ -50,11 +48,7 @@ extern int const scaleDownTo; #pragma mark public-api - (void)refreshDisplay; - (void)refreshViewableRange; -<<<<<<< HEAD - (void)smallRefresh; -======= -- (void)minorRefresh; ->>>>>>> newesttry - (int)gutterSize; - (void)updateGutterSize; - (void)setNewDocument; diff --git a/MinimapView.m b/MinimapView.m index 8ebb150..9431cc8 100644 --- a/MinimapView.m +++ b/MinimapView.m @@ -46,20 +46,12 @@ - (id)initWithTextView:(NSView*) tv refreshAll = NO; viewableRangeScale = 1.0; gutterSize = -1; -<<<<<<< HEAD visRectPosBeforeScrolling = -1; textView = tv; firstDraw = YES; timer = NULL; drawLock = [[[NSLock alloc] init] retain]; updater = [[BackgroundUpdater alloc] initWithMinimapView:self andOperationQueue:queue]; -======= - scrollDiffToTextView = 0; - textView = tv; - firstDraw = YES; - timer = NULL; - updater = [[[BackgroundUpdater alloc] initWithMinimapView:self andOperationQueue:queue] retain]; ->>>>>>> newesttry } return self; } @@ -82,19 +74,13 @@ - (void)dealloc - (void)drawRect:(NSRect)rect { if (firstDraw) { - theImage = [[textView emptySnapshotImageFor:self] retain]; [windowController updateTrailingSpace]; firstDraw = NO; -<<<<<<< HEAD theImage = [[textView emptySnapshotImageFor:self] retain]; [self fillWithBackground]; [self setNeedsDisplay:NO]; //Defer first drawing by small interval ... don't know a better way to wait till the tv is fully initialized - NSTimer* t = [NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(firstRefresh) userInfo:nil repeats:NO]; - [self setTimer:t]; -======= - refreshAll = YES; ->>>>>>> newesttry + [NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(firstRefresh) userInfo:nil repeats:NO]; return; } @@ -120,20 +106,12 @@ - (void)drawRect:(NSRect)rect [queue addOperation:op]; [op release]; refreshAll = NO; -<<<<<<< HEAD return; -======= - scrollDiffToTextView = 0; ->>>>>>> newesttry } if (ppl < scaleUpThreshold) { NSRect rectToSnapshot = [self getVisiblePartOfMinimap]; -<<<<<<< HEAD [theImage drawInRect:drawTo fromRect:rectToSnapshot operation:NSCompositeSourceOver fraction:1.0]; -======= - [theImage drawInRect:[self bounds] fromRect:rectToSnapshot operation:NSCompositeSourceOver fraction:1.0]; ->>>>>>> newesttry } else { @@ -170,15 +148,9 @@ - (NSRect)updateVisiblePartOfImage float begin = middle - (percentage*mysteriousHeight) - ([textView visibleRect].size.height/2); NSRect visRect = NSMakeRect(0, -<<<<<<< HEAD begin*scaleFactor, [theImage size].width, (visiblePercentage * imgSize.height)); -======= - begin*scaleFactor, - [theImage size].width, - (visiblePercentage * imgSize.height)); ->>>>>>> newesttry [self setMinimapLinesStart:(begin/tvBounds.size.height)*numLines]; visiblePartOfImage = visRect; return visRect; @@ -228,14 +200,10 @@ - (void)drawVisRect:(NSRect)drawTo float middle = percentage*(bounds.size.height-visRectHeight) + visRectHeight/2; float mysteriousHeight = (rectProportion * bounds.size.height) - visRectHeight; visRectPos = middle - (percentage*mysteriousHeight) - (visRectHeight/2); -<<<<<<< HEAD if (visRectPosBeforeScrolling != -1) { float scrolledPixels = (visiblePartOfImage.origin.y - visRectPosBeforeScrolling); visRectPos -= scrolledPixels*(bounds.size.height/visiblePartOfImage.size.height); } -======= - visRectPos -= scrollDiffToTextView; ->>>>>>> newesttry } else { @@ -284,42 +252,27 @@ - (void)mouseDown:(NSEvent *)theEvent - (void)scrollWheel:(NSEvent *)theEvent { - NSRect tvBounds = [textView bounds]; -<<<<<<< HEAD - float scaleFactor = [theImage size].height / tvBounds.size.height; + if (minimapIsScrollable) { + NSRect tvBounds = [textView bounds]; + float scaleFactor = [theImage size].height / tvBounds.size.height; - NSRect newVisRect = visiblePartOfImage; - if (visRectPosBeforeScrolling == -1) - visRectPosBeforeScrolling = visiblePartOfImage.origin.y; - - float newBegin = (newVisRect.origin.y / scaleFactor) + ([theEvent deltaY]/scaleFactor)*(-5); - -======= - float scaleFactor = [theImage size].height / tvBounds.size.height; - - NSRect newVisRect = visiblePartOfImage; - float newBegin = (newVisRect.origin.y / scaleFactor) + ([theEvent deltaY]/scaleFactor)*(-5); - ->>>>>>> newesttry - if (newBegin < 0) - newBegin = 0; - float lowerBound = tvBounds.size.height-(newVisRect.size.height/scaleFactor); - if (newBegin > lowerBound) - newBegin = lowerBound; -<<<<<<< HEAD - - newVisRect.origin.y = newBegin*scaleFactor; - [self setMinimapLinesStart:(newBegin/tvBounds.size.height)*[self getNumberOfLines]]; - visiblePartOfImage = newVisRect; - [self setNeedsDisplay:YES]; -======= - - newVisRect.origin.y = newBegin*scaleFactor; - scrollDiffToTextView += newVisRect.origin.y-visiblePartOfImage.origin.y; - [self setMinimapLinesStart:(newBegin/tvBounds.size.height)*[self getNumberOfLines]]; - visiblePartOfImage = newVisRect; - [self setNeedsDisplayInRect:[self visibleRect]]; ->>>>>>> newesttry + NSRect newVisRect = visiblePartOfImage; + if (visRectPosBeforeScrolling == -1) + visRectPosBeforeScrolling = visiblePartOfImage.origin.y; + + float newBegin = (newVisRect.origin.y / scaleFactor) + ([theEvent deltaY]/scaleFactor)*(-5); + + if (newBegin < 0) + newBegin = 0; + float lowerBound = tvBounds.size.height-(newVisRect.size.height/scaleFactor); + if (newBegin > lowerBound) + newBegin = lowerBound; + + newVisRect.origin.y = newBegin*scaleFactor; + [self setMinimapLinesStart:(newBegin/tvBounds.size.height)*[self getNumberOfLines]]; + visiblePartOfImage = newVisRect; + [self setNeedsDisplay:YES]; + } } - (void) viewDidEndLiveResize @@ -352,13 +305,8 @@ - (void)firstRefresh { [self setNeedsDisplayInRect:[self visibleRect]];} - (void)refreshViewableRange{ -<<<<<<< HEAD [self updateVisiblePartOfImage]; visRectPosBeforeScrolling = -1; -======= - scrollDiffToTextView = 0; - [self updateVisiblePartOfImage]; ->>>>>>> newesttry [self setNeedsDisplayInRect:[self visibleRect]]; NSTimer* old_timer = [self timer]; @@ -369,11 +317,7 @@ - (void)refreshViewableRange{ NSTimer* t = [NSTimer scheduledTimerWithTimeInterval:0.05 target:self selector:@selector(refreshDisplay) userInfo:nil repeats:NO]; [self setTimer:t]; } -<<<<<<< HEAD - (void)smallRefresh -======= -- (void)minorRefresh ->>>>>>> newesttry { [self setNeedsDisplayInRect:[self visibleRect]]; } @@ -398,15 +342,10 @@ - (void)updateGutterSize } - (void)setNewDocument { -<<<<<<< HEAD [queue setSuspended:NO]; [queue cancelAllOperations]; // [theImage release]; // theImage = NULL; -======= - [theImage release]; - theImage = NULL; ->>>>>>> newesttry firstDraw = YES; } @@ -451,11 +390,10 @@ - (int)gutterSize - (void)asyncDrawFinished: (NSImage*) bitmap { [bitmap retain]; -<<<<<<< HEAD [theImage release]; theImage = bitmap; if (minimapIsScrollable) { - + [updater setDirtyExceptForVisiblePart]; [updater startRedrawInBackground]; } @@ -463,16 +401,6 @@ - (void)asyncDrawFinished: (NSImage*) bitmap pixelPerLine = [[NSUserDefaults standardUserDefaults] floatForKey:@"Minimap_scaleUpTo"]; else pixelPerLine = [self bounds].size.height / [self getNumberOfLines]; - -======= - [[self drawLock] lock]; - [theImage release]; - theImage = bitmap; - [updater startRedrawInBackground]; - [[self drawLock] lock]; - - pixelPerLine = [self bounds].size.height / [self getNumberOfLines]; ->>>>>>> newesttry [self setNeedsDisplay:YES]; } diff --git a/NSView+Minimap.m b/NSView+Minimap.m index 3f00b9f..929ba09 100644 --- a/NSView+Minimap.m +++ b/NSView+Minimap.m @@ -31,7 +31,7 @@ - (NSBitmapImageRep *)snapshot NSBitmapImageRep *imageRep = [self bitmapImageRepForCachingDisplayInRect:[self bounds]]; [self cacheDisplayInRect:[self bounds] toBitmapImageRep:imageRep]; [[[TextmateMinimap instance] theLock] unlock]; - + return imageRep; } /* @@ -42,8 +42,8 @@ - (NSBitmapImageRep *) snapshotInRect:(NSRect)rect [[[TextmateMinimap instance] theLock] lock]; NSBitmapImageRep *imageRep = [self bitmapImageRepForCachingDisplayInRect:[self bounds]]; [self cacheDisplayInRect:rect toBitmapImageRep:imageRep]; - [[[TextmateMinimap instance] theLock] unlock]; - + [[[TextmateMinimap instance] theLock] unlock]; + return imageRep; } /* @@ -58,22 +58,33 @@ - (NSImage *)snapshotByDrawing [self drawRect: [self frame]]; [snapshot unlockFocus]; [[[TextmateMinimap instance] theLock] unlock]; - + return [snapshot autorelease]; } /* Takes a snapshot of a part of the TextView, returning NSImage */ -- (NSImage *)snapshotByDrawingInRect:(NSRect)rect +- (NSImage *)snapshotByDrawingInRect:(NSRect)rect { [[[TextmateMinimap instance] theLock] lock]; - NSImage *snapshot = [[NSImage alloc] initWithSize: - [self bounds].size]; - [snapshot lockFocus]; - [self drawRect: rect]; - [snapshot unlockFocus]; + NSImage *snapshot = [[NSImage alloc] initWithSize: + rect.size]; + + + // recursively draw the subview and sub-subviews + [snapshot lockFocus]; + NSAffineTransform *transform = [NSAffineTransform transform]; + [transform translateXBy:-rect.origin.x yBy:-rect.origin.y]; + [transform concat]; + [self drawRect:rect]; + [transform invert]; + [transform concat]; + [snapshot unlockFocus]; + + // reset the transform to get back a clean graphic contexts for the rest of the drawing + [[[TextmateMinimap instance] theLock] unlock]; - + return [snapshot autorelease]; } @@ -127,10 +138,6 @@ - (void)refreshMinimap #pragma mark other_swizzled_events - (void)MM_selectTab:(id)sender { -<<<<<<< HEAD - -======= ->>>>>>> newesttry [[[TextmateMinimap instance] theLock] lock]; [[self getMinimap] setNewDocument]; [self MM_selectTab:sender]; @@ -165,7 +172,7 @@ - (void)MM_toggleSoftWrap:(id)sender int offset = [sender state] ? 56:40; NSDrawer* drawer = [wc getMinimapDrawer]; MinimapView* mm = [wc getMinimapView]; - + [drawer setTrailingOffset:offset]; [mm refreshDisplay]; } diff --git a/NSWindowController+Minimap.m b/NSWindowController+Minimap.m index 0574e32..8613487 100644 --- a/NSWindowController+Minimap.m +++ b/NSWindowController+Minimap.m @@ -14,7 +14,7 @@ #import "objc/runtime.h" #include "sys/xattr.h" -// stuff that the textmate-windowcontrollers (OakProjectController, OakDocumentControler) implement +// stuff that the textmate-windowcontrollers (OakProjectController, OakDocumentControler) implement @interface NSWindowController (TextMate_WindowControllers_Only) - (id)textView; - (void)goToLineNumber:(id)newLine; @@ -42,10 +42,10 @@ @implementation NSWindowController (MM_NSWindowController) /* Request a redraw of the minimap */ -- (void)refreshMinimap +- (void)refreshMinimap { MinimapView* textShapeView = [self getMinimapView]; - [textShapeView refreshDisplay]; + [textShapeView refreshDisplay]; } /* @@ -54,7 +54,7 @@ - (void)refreshMinimap - (int)getCurrentLine:(id)textView { NSMutableDictionary* dict = [NSMutableDictionary dictionary]; - [textView bind:@"lineNumber" toObject:dict + [textView bind:@"lineNumber" toObject:dict withKeyPath:@"line" options:nil]; int line = [(NSNumber*)[dict objectForKey:@"line"] intValue]; // unbinding (cleanup) would be nice, but calling unbind also deletes a binding that is needed by TextMate @@ -68,7 +68,7 @@ - (int)getCurrentLine:(id)textView - (void)toggleMinimap { NSDrawer* drawer = [self getMinimapDrawer]; - + int state = [drawer state]; if (state == NSDrawerClosedState || state == NSDrawerClosingState) { NSRectEdge edge = [self getCorrectMinimapDrawerSide]; @@ -77,17 +77,17 @@ - (void)toggleMinimap } else { [drawer close]; - [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"Minimap_lastDocumentHadMinimapOpen"]; + [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"Minimap_lastDocumentHadMinimapOpen"]; } } /* - Call TextMate's gotoLine function + Call TextMate's gotoLine function */ - (void)scrollToLine:(unsigned int)newLine { id textView = [self textView]; - MinimapView* textShapeView = [self getMinimapView]; + MinimapView* textShapeView = [self getMinimapView]; [textView goToLineNumber: [NSNumber numberWithInt:newLine]]; [textShapeView refreshDisplay]; } @@ -155,24 +155,24 @@ - (void)MM_windowDidLoad { // call original [self MM_windowDidLoad]; - + [[TextmateMinimap instance] setLastWindowController:self]; - + NSWindow* window=[self window]; NSSize contentSize = NSMakeSize(160, [window frame].size.height); NSRectEdge edge = [self getCorrectMinimapDrawerSide]; - + id minimapDrawer = [[NSDrawer alloc] initWithContentSize:contentSize preferredEdge:edge]; [minimapDrawer setParentWindow:window]; - - + + NSString* filename = nil; int trailingOffset = [self isSoftWrapEnabled] ? 40 : 56; if ([[self className] isEqualToString:@"OakProjectController"]) { [minimapDrawer setTrailingOffset:trailingOffset]; [minimapDrawer setLeadingOffset:24]; - filename = [self filename]; + filename = [self filename]; } else if ([[self className] isEqualToString:@"OakDocumentController"]) { [minimapDrawer setTrailingOffset:trailingOffset]; @@ -187,12 +187,12 @@ - (void)MM_windowDidLoad NSMutableDictionary* ivars = [[TextmateMinimap instance] getIVarsFor:self]; [ivars setObject:textshapeView forKey:@"minimap"]; [ivars setObject:minimapDrawer forKey:@"minimapDrawer"]; - + BOOL shouldOpen = [self shouldOpenMinimapDrawer:filename]; if (shouldOpen) [minimapDrawer openOnEdge:edge]; [[NSUserDefaults standardUserDefaults] setBool:shouldOpen forKey:@"Minimap_lastDocumentHadMinimapOpen"]; - + [minimapDrawer release]; [textshapeView release]; } @@ -204,19 +204,19 @@ - (void)MM_windowDidLoad - (void)MM_toggleGroupsAndFilesDrawer:(id)sender { [self MM_toggleGroupsAndFilesDrawer:sender]; - // if auto-mode is set, we need to check whether both drawers are now on the same side, in which case we need to + // if auto-mode is set, we need to check whether both drawers are now on the same side, in which case we need to // close the minimap and reopen it on the other side if ([[NSUserDefaults standardUserDefaults] integerForKey:@"Minimap_minimapSide"] == MinimapAutoSide) { - // the following code is quite ugly... well it works for now :-) + // the following code is quite ugly... well it works for now :-) NSDrawer* projectDrawer = nil; NSDrawer* minimapDrawer = [self getMinimapDrawer]; for (NSDrawer *drawer in [[self window] drawers]) - if (! [[drawer contentView] isKindOfClass:[MinimapView class]]) + if (! [[drawer contentView] isKindOfClass:[MinimapView class]]) projectDrawer = drawer; if (projectDrawer != nil && minimapDrawer != nil) { int projectDrawerState = [projectDrawer state]; - if ((projectDrawerState == NSDrawerOpeningState) || (projectDrawerState == NSDrawerOpenState)) + if ((projectDrawerState == NSDrawerOpeningState) || (projectDrawerState == NSDrawerOpenState)) { if ([projectDrawer edge] == [minimapDrawer edge]) { @@ -257,13 +257,13 @@ - (BOOL) shouldOpenMinimapDrawer:(NSString*)filename NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults]; int openBehaviour = [defaults integerForKey:@"Minimap_openDocumentBehaviour"]; int newDocBehaviour = [defaults integerForKey:@"Minimap_newDocumentBehaviour"]; - + // check the extended file attributes char value; int success = getxattr([filename UTF8String], MINIMAP_STATE_ATTRIBUTE_UID, &value, 1, 0, 0); - + // if there it is a new file || the openBehaviour is the same as for new files || the extended-file-attribute isn't set - if ((filename == nil) || (openBehaviour == MinimapAsNewDocument) || success == -1) { + if ((filename == nil) || (openBehaviour == MinimapAsNewDocument) || success == -1) { switch (newDocBehaviour) { default: case MinimapInheritShow: @@ -273,7 +273,7 @@ - (BOOL) shouldOpenMinimapDrawer:(NSString*)filename result = YES; break; case MinimapNeverShow: - result = NO; + result = NO; break; } } @@ -294,7 +294,7 @@ - (void)writeMinimapOpenStateToFileAttributes:(NSString*)filename { char value; NSDrawer* drawer = [self getMinimapDrawer]; - if (([drawer state] == NSDrawerOpenState) || ([drawer state] == NSDrawerOpeningState)) + if (([drawer state] == NSDrawerOpenState) || ([drawer state] == NSDrawerOpeningState)) value = 0x31; // xattr (on terminal) reads the extended file attributes as utf8 strings, this is the utf8 "1" else value = 0x30; // this is the "0" @@ -312,7 +312,7 @@ - (void)reopenMinimapDrawer:(NSNotification *)notification [drawer openOnEdge:NSMinXEdge]; else [drawer openOnEdge:NSMaxXEdge]; - + [[NSNotificationCenter defaultCenter] removeObserver:self name:NSDrawerDidCloseNotification object:drawer]; } @@ -323,26 +323,29 @@ - (NSRectEdge) getCorrectMinimapDrawerSide { int result; NSRectEdge projectDrawerSide = NSMinXEdge; - NSDrawer* drawer = [self getMinimapDrawer]; + for (NSDrawer *drawer in [[self window] drawers]) + if (! [[drawer contentView] isKindOfClass:[MinimapView class]]) { + projectDrawerSide = [drawer edge]; + } + switch ([[NSUserDefaults standardUserDefaults] integerForKey:@"Minimap_minimapSide"]) { default: case MinimapAutoSide: - projectDrawerSide = [drawer edge]; - if (projectDrawerSide == NSMaxXEdge) + if (projectDrawerSide == NSMaxXEdge) result = NSMinXEdge; - else + else result = NSMaxXEdge; break; - + case MinimapLeftSide: result = NSMinXEdge; break; - + case MinimapRightSide: result = NSMaxXEdge; break; } - + return result; } diff --git a/Textmate-Minimap.xcodeproj/ebi.mode1v3 b/Textmate-Minimap.xcodeproj/ebi.mode1v3 index fac6cdc..d3d7fe5 100644 --- a/Textmate-Minimap.xcodeproj/ebi.mode1v3 +++ b/Textmate-Minimap.xcodeproj/ebi.mode1v3 @@ -197,48 +197,7 @@ Notifications OpenEditors - - - Content - - PBXProjectModuleGUID - 045DA30C1164F39A00485919 - PBXProjectModuleLabel - NSView+Minimap.m - PBXSplitModuleInNavigatorKey - - Split0 - - PBXProjectModuleGUID - 045DA30D1164F39A00485919 - PBXProjectModuleLabel - NSView+Minimap.m - _historyCapacity - 0 - bookmark - 045DA30F1164F39A00485919 - history - - 045DA30E1164F39A00485919 - - - SplitCount - 1 - - StatusBarVisibility - - - Geometry - - Frame - {{0, 20}, {994, 681}} - PBXModuleWindowStatusBarHidden2 - - RubberWindowFrame - 15 151 994 722 0 0 1440 878 - - - + PerspectiveWidths -1 @@ -270,8 +229,6 @@ Layout - BecomeActive - ContentConfiguration PBXBottomSmartGroupGIDs @@ -318,14 +275,14 @@ PBXSmartGroupTreeModuleOutlineStateSelectionKey - 14 + 16 10 9 0 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey - {{0, 36}, {303, 768}} + {{0, 27}, {303, 768}} PBXTopSmartGroupGIDs @@ -344,7 +301,7 @@ 303 RubberWindowFrame - 0 51 1440 827 0 0 1440 878 + 1 51 1439 827 0 0 1440 878 Module PBXSmartGroupTreeModule @@ -355,12 +312,14 @@ Dock + BecomeActive + ContentConfiguration PBXProjectModuleGUID 1CE0B20306471E060097A5F4 PBXProjectModuleLabel - textmate-minimap.tiff + NSWindowController+Minimap.m PBXSplitModuleInNavigatorKey Split0 @@ -368,11 +327,11 @@ PBXProjectModuleGUID 1CE0B20406471E060097A5F4 PBXProjectModuleLabel - textmate-minimap.tiff + NSWindowController+Minimap.m _historyCapacity 0 bookmark - 045DA30B1164F39A00485919 + 0406702311654F4E0016EBBE history 04CA0FC111204A89006869D1 @@ -390,24 +349,11 @@ 04537BAE11382B2D0019F7BF 04537BB111382B2D0019F7BF 04537BE7113839750019F7BF - 04537C59113885570019F7BF 04F15496113978FD007CA3E2 0417C08D113AB43B007BB23C 04B46002113BE9CE00BD8E0D - 044AB1C3113D4F1C00304627 04DC1F291154DAE200F87F90 - 04467F8B1158D3C200BE3D86 - 0446805C1158E2F800BE3D86 - 0446848911592D2200BE3D86 - 04AEA8ED115930B900E337C5 - 04AEA92C115935B200E337C5 - 04AEA97E11593B7800E337C5 - 04C3FA9111594C7B006B7A99 - 045DA2B41164EC7F00485919 - 045DA2F91164F2F700485919 - 045DA3021164F36F00485919 - 045DA3091164F39A00485919 - 045DA30A1164F39A00485919 + 0406702211654F4E0016EBBE SplitCount @@ -419,9 +365,9 @@ GeometryConfiguration Frame - {{0, 0}, {1115, 781}} + {{0, 0}, {1114, 781}} RubberWindowFrame - 0 51 1440 827 0 0 1440 878 + 1 51 1439 827 0 0 1440 878 Module PBXNavigatorGroup @@ -439,9 +385,9 @@ GeometryConfiguration Frame - {{0, 786}, {1115, 0}} + {{0, 786}, {1114, 0}} RubberWindowFrame - 0 51 1440 827 0 0 1440 878 + 1 51 1439 827 0 0 1440 878 Module XCDetailModule @@ -450,7 +396,7 @@ Proportion - 1115pt + 1114pt Name @@ -465,9 +411,9 @@ TableOfContents - 045DA2AE1164E9A500485919 + 0406702411654F4E0016EBBE 1CE0B1FE06471DED0097A5F4 - 045DA2AF1164E9A500485919 + 0406702511654F4E0016EBBE 1CE0B20306471E060097A5F4 1CE0B20506471E060097A5F4 @@ -605,18 +551,16 @@ 5 WindowOrderList - 045DA2FD1164F2F700485919 - 045DA2B71164EC7F00485919 - 045DA2BA1164EC7F00485919 - 045DA2BB1164EC7F00485919 + 0406702E11654F4E0016EBBE + 0406702F11654F4E0016EBBE + 0406703011654F4E0016EBBE 1C78EAAD065D492600B07095 1CD10A99069EF8BA00B06720 047C7E4B110F278C00CC049E /Users/ebi/dev/Textmate-Minimap/Textmate-Minimap.xcodeproj - 045DA30C1164F39A00485919 WindowString - 0 51 1440 827 0 0 1440 878 + 1 51 1439 827 0 0 1440 878 WindowToolsV3 @@ -693,7 +637,7 @@ TableOfContents 047C7E4B110F278C00CC049E - 045DA2A01164E99F00485919 + 0406702611654F4E0016EBBE 1CD0528F0623707200166675 XCMainBuildResultsModuleGUID @@ -815,13 +759,13 @@ TableOfContents 1CD10A99069EF8BA00B06720 - 045DA2A11164E99F00485919 + 0406702711654F4E0016EBBE 1C162984064C10D400B95A72 - 045DA2A21164E99F00485919 - 045DA2A31164E99F00485919 - 045DA2A41164E99F00485919 - 045DA2A51164E99F00485919 - 045DA2A61164E99F00485919 + 0406702811654F4E0016EBBE + 0406702911654F4E0016EBBE + 0406702A11654F4E0016EBBE + 0406702B11654F4E0016EBBE + 0406702C11654F4E0016EBBE ToolbarConfiguration xcode.toolbar.config.debugV3 @@ -853,25 +797,25 @@ PBXProjectModuleGUID 1CDD528C0622207200134675 PBXProjectModuleLabel - + AsyncBGDrawOperation.m StatusBarVisibility GeometryConfiguration Frame - {{0, 0}, {781, 212}} + {{0, 0}, {899, 311}} RubberWindowFrame - 241 371 781 470 0 0 1440 878 + 241 170 899 671 0 0 1440 878 Module PBXNavigatorGroup Proportion - 781pt + 899pt Proportion - 212pt + 311pt BecomeActive @@ -886,18 +830,18 @@ GeometryConfiguration Frame - {{0, 217}, {781, 212}} + {{0, 316}, {899, 314}} RubberWindowFrame - 241 371 781 470 0 0 1440 878 + 241 170 899 671 0 0 1440 878 Module PBXProjectFindModule Proportion - 212pt + 314pt Proportion - 429pt + 630pt Name @@ -911,13 +855,13 @@ TableOfContents 1C530D57069F1CE1000CFCEE - 04DC1BA81153720B00F87F90 - 04DC1BA91153720B00F87F90 + 04066F6A116543BF0016EBBE + 04066F6B116543BF0016EBBE 1CDD528C0622207200134675 1CD0528E0623707200166675 WindowString - 241 371 781 470 0 0 1440 878 + 241 170 899 671 0 0 1440 878 WindowToolGUID 1C530D57069F1CE1000CFCEE WindowToolIsVisible @@ -975,7 +919,7 @@ TableOfContents 1C78EAAD065D492600B07095 - 045DA2B61164EC7F00485919 + 0406702D11654F4E0016EBBE 1C78EAAC065D492600B07095 ToolbarConfiguration @@ -1237,8 +1181,8 @@ TableOfContents - 045DA2B71164EC7F00485919 - 045DA2B81164EC7F00485919 + 04066D5C11651CDF0016EBBE + 04066D5D11651CDF0016EBBE 1CE0B1FE06471DED0097A5F4 1CA1AED706398EBD00589147 @@ -1247,7 +1191,7 @@ WindowString 377 323 886 421 0 0 1440 878 WindowToolGUID - 045DA2B71164EC7F00485919 + 04066D5C11651CDF0016EBBE WindowToolIsVisible diff --git a/Textmate-Minimap.xcodeproj/ebi.pbxuser b/Textmate-Minimap.xcodeproj/ebi.pbxuser index e6fffd1..5b43369 100644 --- a/Textmate-Minimap.xcodeproj/ebi.pbxuser +++ b/Textmate-Minimap.xcodeproj/ebi.pbxuser @@ -1,643 +1,773 @@ // !$*UTF8*$! { - 0417C08D113AB43B007BB23C /* PBXTextBookmark */ = { + 04066F18116541F80016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 089C167EFE841241C02AAC07 /* English */; - name = "InfoPlist.strings: 3"; + fRef = 044682CE11592AA000BE3D86 /* AsyncBGDrawOperation.h */; + name = "AsyncBGDrawOperation.h: 15"; + rLen = 22; + rLoc = 312; + rType = 0; + vrLen = 535; + vrLoc = 0; + }; + 04066F19116541F80016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 04AEA8E9115930A700E337C5 /* AsyncBGDrawOperation.m */; + name = "AsyncBGDrawOperation.m: 54"; rLen = 0; - rLoc = 75; + rLoc = 1113; rType = 0; - vrLen = 98; + vrLen = 1076; vrLoc = 0; }; - 0429C0FC111EFFDA0062C5AE /* JRSwizzle.h */ = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {990, 650}}"; - sepNavSelRange = "{574, 0}"; - sepNavVisRange = "{0, 574}"; - }; + 04066F2D116542530016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 048D065C11216C0F009F7865 /* MinimapView.h */; + name = "MinimapView.h: 25"; + rLen = 0; + rLoc = 494; + rType = 0; + vrLen = 1118; + vrLoc = 0; }; - 0429C0FD111EFFDA0062C5AE /* JRSwizzle.m */ = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {999, 1755}}"; - sepNavSelRange = "{1333, 0}"; - sepNavVisRange = "{411, 1148}"; - sepNavWindowFrame = "{{38, 83}, {994, 769}}"; - }; + 04066F2E116542530016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 048D064511216B1C009F7865 /* TextMateMinimap.m */; + name = "TextMateMinimap.m: 62"; + rLen = 0; + rLoc = 1960; + rType = 0; + vrLen = 1110; + vrLoc = 7563; }; - 0429C0FE111EFFDA0062C5AE /* TextMate.h */ = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1138, 747}}"; - sepNavSelRange = "{565, 0}"; - sepNavVisRange = "{0, 565}"; - sepNavWindowFrame = "{{15, 4}, {994, 769}}"; - }; + 04066F3E116543590016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; + name = "NSView+Minimap.m: 71"; + rLen = 0; + rLoc = 1894; + rType = 0; + vrLen = 1609; + vrLoc = 1257; }; - 0429D03B1120B00E0048EA21 /* PBXTextBookmark */ = { + 04066F3F116543590016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 0429D03C1120B00E0048EA21 /* NSWindow.h */; - name = "NSWindow.h: 692"; - rLen = 15; - rLoc = 32802; + fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; + name = "MinimapView.m: 185"; + rLen = 0; + rLoc = 5691; rType = 0; - vrLen = 2776; - vrLoc = 31555; + vrLen = 1848; + vrLoc = 4761; }; - 0429D03C1120B00E0048EA21 /* NSWindow.h */ = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.h; - name = NSWindow.h; - path = /Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/AppKit.framework/Versions/C/Headers/NSWindow.h; - sourceTree = ""; + 04066F40116543590016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; + name = "MinimapView.m: 46"; + rLen = 28; + rLoc = 1054; + rType = 0; + vrLen = 1414; + vrLoc = 869; }; - 042E4BC911609C970092B309 /* PBXTextBookmark */ = { + 04066F4A116543620016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 61"; - rLen = 0; - rLoc = 1393; + name = "MinimapView.m: 46"; + rLen = 28; + rLoc = 1054; + rType = 0; + vrLen = 1306; + vrLoc = 870; + }; + 04066F5C116543800016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; + name = "MinimapView.m: 46"; + rLen = 28; + rLoc = 1054; rType = 0; - vrLen = 1055; - vrLoc = 591; + vrLen = 1306; + vrLoc = 870; }; - 04467F8B1158D3C200BE3D86 /* PBXTextBookmark */ = { + 04066F5D116543800016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 048D06A1112171BE009F7865 /* NSWindowController+Minimap.h */; - name = "NSWindowController+Minimap.h: 12"; + fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; + name = "NSView+Minimap.m: 71"; rLen = 0; - rLoc = 265; + rLoc = 1894; rType = 0; - vrLen = 724; - vrLoc = 0; + vrLen = 1525; + vrLoc = 1257; }; - 0446805C1158E2F800BE3D86 /* PBXTextBookmark */ = { + 04066F5E116543800016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 048D06A2112171BE009F7865 /* NSWindowController+Minimap.m */; - name = "NSWindowController+Minimap.m: 173"; - rLen = 24; - rLoc = 4905; + fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; + name = "NSView+Minimap.m: 71"; + rLen = 0; + rLoc = 1885; rType = 0; - vrLen = 1852; - vrLoc = 5046; + vrLen = 1534; + vrLoc = 1257; }; - 044682CE11592AA000BE3D86 /* AsyncBGDrawOperation.h */ = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1104, 749}}"; - sepNavSelRange = "{312, 22}"; - sepNavVisRange = "{0, 535}"; - }; + 04066F64116543BF0016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; + name = "NSView+Minimap.m: 67"; + rLen = 50; + rLoc = 1722; + rType = 0; + vrLen = 278; + vrLoc = 1617; }; - 0446848911592D2200BE3D86 /* PBXTextBookmark */ = { + 04066F65116543BF0016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04DC1F501154DC5D00F87F90 /* BackgroundUpdater.h */; - name = "BackgroundUpdater.h: 22"; - rLen = 0; - rLoc = 528; + fRef = 048D067B11216DDE009F7865 /* NSView+Minimap.h */; + name = "NSView+Minimap.h: 18"; + rLen = 51; + rLoc = 369; rType = 0; - vrLen = 735; - vrLoc = 0; + vrLen = 405; + vrLoc = 252; }; - 044AB1C3113D4F1C00304627 /* PBXTextBookmark */ = { + 04066F66116543BF0016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04B78D4211258C48009189AC /* NSView.h */; - name = "NSView.h: 233"; - rLen = 74; - rLoc = 7741; + fRef = 04AEA8E9115930A700E337C5 /* AsyncBGDrawOperation.m */; + name = "AsyncBGDrawOperation.m: 71"; + rLen = 59; + rLoc = 1657; rType = 0; - vrLen = 1645; - vrLoc = 6826; + vrLen = 390; + vrLoc = 1388; }; - 0451552D11244E160097261D /* TextMateMinimap_Prefix.pch */ = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {993, 647}}"; - sepNavSelRange = "{162, 0}"; - sepNavVisRange = "{0, 162}"; - sepNavWindowFrame = "{{15, 104}, {994, 769}}"; - }; + 04066F67116543BF0016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 04066F68116543BF0016EBBE /* AsyncDrawOperation.m */; + rLen = 59; + rLoc = 2258; + rType = 0; }; - 0453792D113815CB0019F7BF /* SRRecorderControl.h */ = { + 04066F68116543BF0016EBBE /* AsyncDrawOperation.m */ = { isa = PBXFileReference; - lastKnownFileType = sourcecode.c.h; - name = SRRecorderControl.h; - path = "/Users/ebi/dev/Textmate-Minimap/Frameworks/ShortcutRecorder.framework/Headers/SRRecorderControl.h"; + lastKnownFileType = sourcecode.c.objc; + name = AsyncDrawOperation.m; + path = "/Users/ebi/dev/Textmate-Minimap/AsyncDrawOperation.m"; sourceTree = ""; }; - 04537946113817130019F7BF /* SRRecorderCell.h */ = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.h; - name = SRRecorderCell.h; - path = "/Users/ebi/dev/Textmate-Minimap/Frameworks/ShortcutRecorder.framework/Headers/SRRecorderCell.h"; - sourceTree = ""; + 04066F69116543BF0016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 04DC1B7411536F6700F87F90 /* AsyncDrawOperation.m */; + name = "AsyncDrawOperation.m: 94"; + rLen = 59; + rLoc = 2258; + rType = 0; + vrLen = 410; + vrLoc = 2060; }; - 04537B17113823D20019F7BF /* SRCommon.h */ = { + 04066F6C116543C20016EBBE /* AsyncBGDrawOperation.m */ = { isa = PBXFileReference; - lastKnownFileType = sourcecode.c.h; - name = SRCommon.h; - path = "/Users/ebi/dev/Textmate-Minimap/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRCommon.h"; + lastKnownFileType = sourcecode.c.objc; + name = AsyncBGDrawOperation.m; + path = "/Users/ebi/dev/Textmate-Minimap/AsyncBGDrawOperation.m"; sourceTree = ""; }; - 04537B61113828230019F7BF /* PBXTextBookmark */ = { + 04066F6E116543CF0016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04B9A497112AF27F0082EF25 /* LICENSE.txt */; - name = "LICENSE.txt: 22"; + fRef = 04066F6C116543C20016EBBE /* AsyncBGDrawOperation.m */; + name = "AsyncBGDrawOperation.m: 71"; + rLen = 59; + rLoc = 1657; + rType = 0; + vrLen = 390; + vrLoc = 1388; + }; + 04066F6F116543CF0016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 04066F68116543BF0016EBBE /* AsyncDrawOperation.m */; + name = "AsyncDrawOperation.m: 94"; + rLen = 59; + rLoc = 2258; + rType = 0; + vrLen = 410; + vrLoc = 2060; + }; + 04066F70116543D30016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; + rLen = 1; + rLoc = 66; + rType = 1; + }; + 04066F71116543D30016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; + name = "NSView+Minimap.m: 74"; rLen = 0; - rLoc = 1057; + rLoc = 2293; rType = 0; - vrLen = 1057; - vrLoc = 0; + vrLen = 1585; + vrLoc = 1257; }; - 04537BA911382B2D0019F7BF /* PBXTextBookmark */ = { + 04066F77116544390016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 0453792D113815CB0019F7BF /* SRRecorderControl.h */; - name = "SRRecorderControl.h: 47"; + fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; + name = "NSView+Minimap.m: 77"; rLen = 0; - rLoc = 999; + rLoc = 1894; rType = 0; - vrLen = 1347; - vrLoc = 440; + vrLen = 1573; + vrLoc = 1257; }; - 04537BAA11382B2D0019F7BF /* PBXTextBookmark */ = { + 04066F7B1165449E0016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04537BAB11382B2D0019F7BF /* SR_LeopardView.h */; - name = "SR_LeopardView.h: 1"; + fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; + name = "NSView+Minimap.m: 74"; rLen = 0; - rLoc = 0; + rLoc = 1894; rType = 0; - vrLen = 212; - vrLoc = 0; + vrLen = 1572; + vrLoc = 1257; }; - 04537BAB11382B2D0019F7BF /* SR_LeopardView.h */ = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.h; - name = SR_LeopardView.h; - path = "/Users/ebi/dev/Textmate-Minimap/Frameworks/ShortcutRecorder.framework/Headers/SR_LeopardView.h"; - sourceTree = ""; + 04066F7F116544C90016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; + name = "NSView+Minimap.m: 84"; + rLen = 0; + rLoc = 2317; + rType = 0; + vrLen = 1573; + vrLoc = 1257; }; - 04537BAC11382B2D0019F7BF /* PBXTextBookmark */ = { + 04066F83116545070016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04537BAD11382B2D0019F7BF /* ShortcutRecorder.h */; - name = "ShortcutRecorder.h: 1"; + fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; + name = "NSView+Minimap.m: 71"; rLen = 0; - rLoc = 0; + rLoc = 1876; rType = 0; - vrLen = 443; - vrLoc = 0; + vrLen = 1536; + vrLoc = 1356; }; - 04537BAD11382B2D0019F7BF /* ShortcutRecorder.h */ = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.h; - name = ShortcutRecorder.h; - path = "/Users/ebi/dev/Textmate-Minimap/Frameworks/ShortcutRecorder.framework/Headers/ShortcutRecorder.h"; - sourceTree = ""; + 04066F8B116545910016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 04066F68116543BF0016EBBE /* AsyncDrawOperation.m */; + name = "AsyncDrawOperation.m: 92"; + rLen = 0; + rLoc = 2185; + rType = 0; + vrLen = 1768; + vrLoc = 1411; }; - 04537BAE11382B2D0019F7BF /* PBXTextBookmark */ = { + 04066F8C116545910016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04537BAF11382B2D0019F7BF /* SRKeyCodeTransformer.h */; - name = "SRKeyCodeTransformer.h: 1"; + fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; + name = "NSView+Minimap.m: 71"; rLen = 0; - rLoc = 0; + rLoc = 1876; rType = 0; - vrLen = 302; - vrLoc = 0; + vrLen = 1536; + vrLoc = 1356; }; - 04537BAF11382B2D0019F7BF /* SRKeyCodeTransformer.h */ = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.h; - name = SRKeyCodeTransformer.h; - path = "/Users/ebi/dev/Textmate-Minimap/Frameworks/ShortcutRecorder.framework/Headers/SRKeyCodeTransformer.h"; - sourceTree = ""; + 04066F8D116545910016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; + name = "NSView+Minimap.m: 74"; + rLen = 0; + rLoc = 1894; + rType = 0; + vrLen = 1539; + vrLoc = 1356; }; - 04537BB111382B2D0019F7BF /* PBXTextBookmark */ = { + 04066F91116546160016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04537946113817130019F7BF /* SRRecorderCell.h */; - name = "SRRecorderCell.h: 1"; + fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; + name = "NSView+Minimap.m: 80"; + rLen = 0; + rLoc = 2156; + rType = 0; + vrLen = 1512; + vrLoc = 1356; + }; + 04066FA811654A2C0016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; + name = "NSView+Minimap.m: 80"; + rLen = 0; + rLoc = 2156; + rType = 0; + vrLen = 1489; + vrLoc = 1510; + }; + 04066FA911654A2C0016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 04B9A498112AF27F0082EF25 /* README */; + name = "README: 1"; rLen = 0; rLoc = 0; rType = 0; - vrLen = 1150; - vrLoc = 707; + vrLen = 768; + vrLoc = 0; }; - 04537BE7113839750019F7BF /* PBXTextBookmark */ = { + 04066FAA11654A2C0016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04537B17113823D20019F7BF /* SRCommon.h */; - name = "SRCommon.h: 28"; - rLen = 12; - rLoc = 501; + fRef = 04066F6C116543C20016EBBE /* AsyncBGDrawOperation.m */; + name = "AsyncBGDrawOperation.m: 77"; + rLen = 0; + rLoc = 1811; rType = 0; - vrLen = 1362; - vrLoc = 320; + vrLen = 1469; + vrLoc = 1039; }; - 04537BFD11383AF70019F7BF /* NSGeometry.h */ = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.h; - name = NSGeometry.h; - path = /Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Foundation.framework/Versions/C/Headers/NSGeometry.h; - sourceTree = ""; + 04066FAB11654A2C0016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 04066F6C116543C20016EBBE /* AsyncBGDrawOperation.m */; + name = "AsyncBGDrawOperation.m: 77"; + rLen = 0; + rLoc = 1811; + rType = 0; + vrLen = 1468; + vrLoc = 1039; }; - 04537C59113885570019F7BF /* PBXTextBookmark */ = { + 04066FAD11654B120016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04537C5A113885570019F7BF /* NSDrawer.h */; - name = "NSDrawer.h: 24"; - rLen = 32; - rLoc = 478; + fRef = 04066F68116543BF0016EBBE /* AsyncDrawOperation.m */; + name = "AsyncDrawOperation.m: 173"; + rLen = 21; + rLoc = 4654; + rType = 0; + vrLen = 553; + vrLoc = 4260; + }; + 04066FAE11654B120016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 04066FAF11654B120016EBBE /* AsyncBGDrawOperation.m */; + rLen = 21; + rLoc = 2564; rType = 0; - vrLen = 1086; - vrLoc = 0; }; - 04537C5A113885570019F7BF /* NSDrawer.h */ = { + 04066FAF11654B120016EBBE /* AsyncBGDrawOperation.m */ = { isa = PBXFileReference; - lastKnownFileType = sourcecode.c.h; - name = NSDrawer.h; - path = /Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/AppKit.framework/Versions/C/Headers/NSDrawer.h; + lastKnownFileType = sourcecode.c.objc; + name = AsyncBGDrawOperation.m; + path = "/Users/ebi/dev/Textmate-Minimap/AsyncBGDrawOperation.m"; sourceTree = ""; }; - 04537C5B113885570019F7BF /* PBXTextBookmark */ = { + 04066FB011654B120016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04537BFD11383AF70019F7BF /* NSGeometry.h */; - name = "NSGeometry.h: 69"; - rLen = 14; - rLoc = 1434; + fRef = 04066F6C116543C20016EBBE /* AsyncBGDrawOperation.m */; + name = "AsyncBGDrawOperation.m: 102"; + rLen = 21; + rLoc = 2564; rType = 0; - vrLen = 858; - vrLoc = 913; + vrLen = 477; + vrLoc = 2323; }; - 045DA2A91164E9A500485919 /* PBXTextBookmark */ = { + 04066FB111654B130016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04DC1B7411536F6700F87F90 /* AsyncDrawOperation.m */; - name = "AsyncDrawOperation.m: 163"; + fRef = 04066F6C116543C20016EBBE /* AsyncBGDrawOperation.m */; + name = "AsyncBGDrawOperation.m: 77"; rLen = 0; - rLoc = 4407; + rLoc = 1811; rType = 0; - vrLen = 1783; - vrLoc = 3404; + vrLen = 1480; + vrLoc = 1146; }; - 045DA2AA1164E9A500485919 /* PBXTextBookmark */ = { + 04066FB211654B130016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 39"; + fRef = 048D065C11216C0F009F7865 /* MinimapView.h */; + name = "MinimapView.h: 25"; rLen = 0; - rLoc = 869; + rLoc = 494; rType = 0; - vrLen = 1603; - vrLoc = 1488; + vrLen = 1137; + vrLoc = 0; }; - 045DA2AB1164E9A500485919 /* PBXTextBookmark */ = { + 04066FB311654B130016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04AEA8E9115930A700E337C5 /* AsyncBGDrawOperation.m */; - name = "AsyncBGDrawOperation.m: 88"; + fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; + name = "MinimapView.m: 335"; rLen = 0; - rLoc = 1075; + rLoc = 10141; rType = 0; - vrLen = 1709; - vrLoc = 1505; + vrLen = 1555; + vrLoc = 9688; }; - 045DA2AC1164E9A500485919 /* PBXBookmark */ = { - isa = PBXBookmark; - fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; + 04066FB411654B130016EBBE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 04066FB511654B130016EBBE /* AsyncDrawOperation.m */; + rLen = 21; + rLoc = 1450; + rType = 0; }; - 045DA2AD1164E9A500485919 /* PBXTextBookmark */ = { + 04066FB511654B130016EBBE /* AsyncDrawOperation.m */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.objc; + name = AsyncDrawOperation.m; + path = "/Users/ebi/dev/Textmate-Minimap/AsyncDrawOperation.m"; + sourceTree = ""; + }; + 04066FB611654B130016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; - name = "BackgroundUpdater.m: 32"; - rLen = 0; - rLoc = 663; + fRef = 04066F68116543BF0016EBBE /* AsyncDrawOperation.m */; + name = "AsyncDrawOperation.m: 77"; + rLen = 21; + rLoc = 1450; rType = 0; - vrLen = 1350; - vrLoc = 0; + vrLen = 1768; + vrLoc = 1411; }; - 045DA2B11164EC7A00485919 /* PBXTextBookmark */ = { + 04066FB911654B4E0016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - rLen = 1; - rLoc = 76; - rType = 1; + fRef = 04066FAF11654B120016EBBE /* AsyncBGDrawOperation.m */; + name = "AsyncBGDrawOperation.m: 102"; + rLen = 21; + rLoc = 2564; + rType = 0; + vrLen = 364; + vrLoc = 2323; }; - 045DA2B31164EC7F00485919 /* PBXTextBookmark */ = { + 04066FBE11654BB80016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; - name = "BackgroundUpdater.m: 4"; + fRef = 04066FB511654B130016EBBE /* AsyncDrawOperation.m */; + name = "AsyncDrawOperation.m: 81"; rLen = 0; - rLoc = 50; + rLoc = 1625; rType = 0; - vrLen = 1396; - vrLoc = 698; + vrLen = 1763; + vrLoc = 1416; }; - 045DA2B41164EC7F00485919 /* PBXTextBookmark */ = { + 04066FBF11654BB80016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04DC1B7411536F6700F87F90 /* AsyncDrawOperation.m */; - name = "AsyncDrawOperation.m: 91"; + fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; + name = "BackgroundUpdater.m: 13"; rLen = 0; - rLoc = 2127; + rLoc = 287; rType = 0; - vrLen = 1806; - vrLoc = 1420; + vrLen = 1237; + vrLoc = 153; }; - 045DA2B51164EC7F00485919 /* PBXTextBookmark */ = { + 04066FC011654BB80016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 77"; - rLen = 0; - rLoc = 1644; + name = "MinimapView.m: 396"; + rLen = 7; + rLoc = 11833; rType = 0; - vrLen = 1739; - vrLoc = 1612; + vrLen = 931; + vrLoc = 11535; }; - 045DA2BC1164EC8E00485919 /* PBXTextBookmark */ = { + 04066FC411654C000016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 77"; + name = "MinimapView.m: 388"; rLen = 0; - rLoc = 1644; + rLoc = 11694; rType = 0; - vrLen = 1739; - vrLoc = 1612; + vrLen = 934; + vrLoc = 11535; }; - 045DA2BD1164EC8E00485919 /* PBXTextBookmark */ = { + 04066FC511654C000016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; + name = "BackgroundUpdater.m: 13"; rLen = 0; - rLoc = 49; - rType = 1; + rLoc = 287; + rType = 0; + vrLen = 1296; + vrLoc = 94; }; - 045DA2BE1164EC8E00485919 /* PBXTextBookmark */ = { + 04066FC611654C000016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; - name = "BackgroundUpdater.m: 50"; + name = "BackgroundUpdater.m: 13"; rLen = 0; - rLoc = 1314; + rLoc = 285; rType = 0; - vrLen = 1396; - vrLoc = 698; + vrLen = 1293; + vrLoc = 94; }; - 045DA2C11164ECA000485919 /* PBXTextBookmark */ = { + 04066FCA11654C220016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; - name = "BackgroundUpdater.m: 50"; + name = "BackgroundUpdater.m: 13"; rLen = 0; - rLoc = 1314; + rLoc = 285; rType = 0; - vrLen = 1396; - vrLoc = 698; + vrLen = 1306; + vrLoc = 0; }; - 045DA2C21164ECA000485919 /* PBXTextBookmark */ = { + 04066FCB11654C220016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; + fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; + name = "BackgroundUpdater.m: 80"; rLen = 0; - rLoc = 75; - rType = 1; + rLoc = 2119; + rType = 0; + vrLen = 1021; + vrLoc = 1505; }; - 045DA2C31164ECA000485919 /* PBXTextBookmark */ = { + 04066FCF11654C570016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 76"; + fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; + name = "BackgroundUpdater.m: 80"; rLen = 0; - rLoc = 1644; + rLoc = 2119; rType = 0; - vrLen = 1539; - vrLoc = 1561; + vrLen = 924; + vrLoc = 2001; }; - 045DA2D01164ED0700485919 /* PBXTextBookmark */ = { + 04066FD011654C570016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 273"; + name = "MinimapView.m: 396"; rLen = 0; - rLoc = 1644; + rLoc = 11850; rType = 0; - vrLen = 1058; - vrLoc = 7934; + vrLen = 931; + vrLoc = 11535; }; - 045DA2D11164ED0700485919 /* PBXTextBookmark */ = { + 04066FD111654C570016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 398"; + name = "MinimapView.m: 396"; rLen = 0; - rLoc = 1644; + rLoc = 11850; rType = 0; - vrLen = 924; - vrLoc = 11418; + vrLen = 931; + vrLoc = 11535; }; - 045DA2D61164ED5700485919 /* PBXTextBookmark */ = { + 04066FD211654C580016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 317"; + name = "MinimapView.m: 396"; rLen = 0; - rLoc = 1644; + rLoc = 11850; rType = 0; - vrLen = 1292; - vrLoc = 9245; + vrLen = 931; + vrLoc = 11535; }; - 045DA2D71164ED5700485919 /* PBXTextBookmark */ = { + 04066FD711654C700016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; - name = "BackgroundUpdater.m: 43"; + fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; + name = "MinimapView.m: 396"; rLen = 0; - rLoc = 1230; + rLoc = 11850; rType = 0; - vrLen = 1366; - vrLoc = 698; + vrLen = 933; + vrLoc = 11535; }; - 045DA2D81164ED5700485919 /* PBXTextBookmark */ = { + 04066FDA11654E510016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04AEA8E9115930A700E337C5 /* AsyncBGDrawOperation.m */; - name = "AsyncBGDrawOperation.m: 88"; + fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; + name = "MinimapView.m: 396"; rLen = 0; - rLoc = 1075; + rLoc = 11850; rType = 0; - vrLen = 1462; - vrLoc = 1505; + vrLen = 933; + vrLoc = 11535; }; - 045DA2D91164ED5700485919 /* PBXTextBookmark */ = { + 04066FDB11654E510016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04AEA8E9115930A700E337C5 /* AsyncBGDrawOperation.m */; - name = "AsyncBGDrawOperation.m: 91"; + fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; + name = "MinimapView.m: 75"; rLen = 0; - rLoc = 2322; + rLoc = 1644; rType = 0; - vrLen = 1487; - vrLoc = 1747; + vrLen = 1635; + vrLoc = 2425; + }; + 0406702211654F4E0016EBBE /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 048D06A2112171BE009F7865 /* NSWindowController+Minimap.m */; }; - 045DA2DB1164ED6C00485919 /* PBXTextBookmark */ = { + 0406702311654F4E0016EBBE /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04AEA8E9115930A700E337C5 /* AsyncBGDrawOperation.m */; - name = "AsyncBGDrawOperation.m: 91"; + fRef = 048D06A2112171BE009F7865 /* NSWindowController+Minimap.m */; + name = "NSWindowController+Minimap.m: 350"; rLen = 0; - rLoc = 2322; + rLoc = 10341; rType = 0; - vrLen = 1487; - vrLoc = 1747; + vrLen = 1524; + vrLoc = 8727; }; - 045DA2DC1164ED6C00485919 /* PBXTextBookmark */ = { + 0417C08D113AB43B007BB23C /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; + fRef = 089C167EFE841241C02AAC07 /* English */; + name = "InfoPlist.strings: 3"; rLen = 0; rLoc = 75; - rType = 1; - }; - 045DA2DD1164ED6C00485919 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 76"; - rLen = 0; - rLoc = 1644; rType = 0; - vrLen = 1123; - vrLoc = 11030; + vrLen = 98; + vrLoc = 0; + }; + 0429C0FC111EFFDA0062C5AE /* JRSwizzle.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {990, 650}}"; + sepNavSelRange = "{574, 0}"; + sepNavVisRange = "{0, 574}"; + }; + }; + 0429C0FD111EFFDA0062C5AE /* JRSwizzle.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {999, 1755}}"; + sepNavSelRange = "{1333, 0}"; + sepNavVisRange = "{411, 1148}"; + sepNavWindowFrame = "{{38, 83}, {994, 769}}"; + }; + }; + 0429C0FE111EFFDA0062C5AE /* TextMate.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1138, 747}}"; + sepNavSelRange = "{565, 0}"; + sepNavVisRange = "{0, 565}"; + sepNavWindowFrame = "{{15, 4}, {994, 769}}"; + }; }; - 045DA2DE1164ED7300485919 /* PBXTextBookmark */ = { + 0429D03B1120B00E0048EA21 /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 76"; - rLen = 0; - rLoc = 1644; + fRef = 0429D03C1120B00E0048EA21 /* NSWindow.h */; + name = "NSWindow.h: 692"; + rLen = 15; + rLoc = 32802; rType = 0; - vrLen = 1026; - vrLoc = 8672; + vrLen = 2776; + vrLoc = 31555; }; - 045DA2E01164ED8C00485919 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - rLen = 1; - rLoc = 296; - rType = 1; + 0429D03C1120B00E0048EA21 /* NSWindow.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = NSWindow.h; + path = /Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/AppKit.framework/Versions/C/Headers/NSWindow.h; + sourceTree = ""; }; - 045DA2E21164ED9000485919 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 282"; - rLen = 0; - rLoc = 1644; - rType = 0; - vrLen = 924; - vrLoc = 11418; + 044682CE11592AA000BE3D86 /* AsyncBGDrawOperation.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1053, 749}}"; + sepNavSelRange = "{312, 22}"; + sepNavVisRange = "{0, 535}"; + }; }; - 045DA2E51164EE6500485919 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 395"; - rLen = 0; - rLoc = 1644; - rType = 0; - vrLen = 924; - vrLoc = 11418; + 0451552D11244E160097261D /* TextMateMinimap_Prefix.pch */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {993, 647}}"; + sepNavSelRange = "{162, 0}"; + sepNavVisRange = "{0, 162}"; + sepNavWindowFrame = "{{15, 104}, {994, 769}}"; + }; }; - 045DA2E61164EE6500485919 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; - name = "BackgroundUpdater.m: 43"; - rLen = 0; - rLoc = 1230; - rType = 0; - vrLen = 1366; - vrLoc = 698; + 0453792D113815CB0019F7BF /* SRRecorderControl.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = SRRecorderControl.h; + path = "/Users/ebi/dev/Textmate-Minimap/Frameworks/ShortcutRecorder.framework/Headers/SRRecorderControl.h"; + sourceTree = ""; + }; + 04537946113817130019F7BF /* SRRecorderCell.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = SRRecorderCell.h; + path = "/Users/ebi/dev/Textmate-Minimap/Frameworks/ShortcutRecorder.framework/Headers/SRRecorderCell.h"; + sourceTree = ""; }; - 045DA2E71164EE6500485919 /* PBXTextBookmark */ = { + 04537B17113823D20019F7BF /* SRCommon.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = SRCommon.h; + path = "/Users/ebi/dev/Textmate-Minimap/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRCommon.h"; + sourceTree = ""; + }; + 04537B61113828230019F7BF /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; - name = "BackgroundUpdater.m: 38"; + fRef = 04B9A497112AF27F0082EF25 /* LICENSE.txt */; + name = "LICENSE.txt: 22"; rLen = 0; - rLoc = 830; + rLoc = 1057; rType = 0; - vrLen = 1297; - vrLoc = 598; + vrLen = 1057; + vrLoc = 0; }; - 045DA2EB1164F21700485919 /* PBXTextBookmark */ = { + 04537BA911382B2D0019F7BF /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; - name = "BackgroundUpdater.m: 38"; + fRef = 0453792D113815CB0019F7BF /* SRRecorderControl.h */; + name = "SRRecorderControl.h: 47"; rLen = 0; - rLoc = 830; + rLoc = 999; rType = 0; - vrLen = 898; - vrLoc = 1841; - }; - 045DA2EC1164F21700485919 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - rLen = 1; - rLoc = 298; - rType = 1; + vrLen = 1347; + vrLoc = 440; }; - 045DA2ED1164F21700485919 /* PBXTextBookmark */ = { + 04537BAA11382B2D0019F7BF /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 299"; - rLen = 23; - rLoc = 8979; + fRef = 04537BAB11382B2D0019F7BF /* SR_LeopardView.h */; + name = "SR_LeopardView.h: 1"; + rLen = 0; + rLoc = 0; rType = 0; - vrLen = 1030; - vrLoc = 8721; + vrLen = 212; + vrLoc = 0; }; - 045DA2F41164F27A00485919 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 299"; - rLen = 23; - rLoc = 8979; - rType = 0; - vrLen = 1030; - vrLoc = 8721; + 04537BAB11382B2D0019F7BF /* SR_LeopardView.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = SR_LeopardView.h; + path = "/Users/ebi/dev/Textmate-Minimap/Frameworks/ShortcutRecorder.framework/Headers/SR_LeopardView.h"; + sourceTree = ""; }; - 045DA2F51164F27A00485919 /* PBXTextBookmark */ = { + 04537BAC11382B2D0019F7BF /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04AEA8E9115930A700E337C5 /* AsyncBGDrawOperation.m */; - name = "AsyncBGDrawOperation.m: 50"; - rLen = 12; - rLoc = 1063; + fRef = 04537BAD11382B2D0019F7BF /* ShortcutRecorder.h */; + name = "ShortcutRecorder.h: 1"; + rLen = 0; + rLoc = 0; rType = 0; - vrLen = 1049; - vrLoc = 698; + vrLen = 443; + vrLoc = 0; }; - 045DA2F61164F27A00485919 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 04AEA8E9115930A700E337C5 /* AsyncBGDrawOperation.m */; - name = "AsyncBGDrawOperation.m: 50"; - rLen = 12; - rLoc = 1063; - rType = 0; - vrLen = 1078; - vrLoc = 834; + 04537BAD11382B2D0019F7BF /* ShortcutRecorder.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = ShortcutRecorder.h; + path = "/Users/ebi/dev/Textmate-Minimap/Frameworks/ShortcutRecorder.framework/Headers/ShortcutRecorder.h"; + sourceTree = ""; }; - 045DA2F91164F2F700485919 /* PBXTextBookmark */ = { + 04537BAE11382B2D0019F7BF /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04AEA8E9115930A700E337C5 /* AsyncBGDrawOperation.m */; - name = "AsyncBGDrawOperation.m: 44"; + fRef = 04537BAF11382B2D0019F7BF /* SRKeyCodeTransformer.h */; + name = "SRKeyCodeTransformer.h: 1"; rLen = 0; - rLoc = 950; + rLoc = 0; rType = 0; - vrLen = 1078; - vrLoc = 834; + vrLen = 302; + vrLoc = 0; }; - 045DA2FA1164F2F700485919 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 303"; - rLen = 0; - rLoc = 9121; - rType = 0; - vrLen = 1066; - vrLoc = 8659; + 04537BAF11382B2D0019F7BF /* SRKeyCodeTransformer.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = SRKeyCodeTransformer.h; + path = "/Users/ebi/dev/Textmate-Minimap/Frameworks/ShortcutRecorder.framework/Headers/SRKeyCodeTransformer.h"; + sourceTree = ""; }; - 045DA2FB1164F2F700485919 /* PBXTextBookmark */ = { + 04537BB111382B2D0019F7BF /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; - name = "BackgroundUpdater.m: 33"; - rLen = 31; - rLoc = 664; + fRef = 04537946113817130019F7BF /* SRRecorderCell.h */; + name = "SRRecorderCell.h: 1"; + rLen = 0; + rLoc = 0; rType = 0; - vrLen = 1363; - vrLoc = 386; + vrLen = 1150; + vrLoc = 707; }; - 045DA2FC1164F2F700485919 /* PBXTextBookmark */ = { + 04537BE7113839750019F7BF /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; - name = "BackgroundUpdater.m: 33"; - rLen = 31; - rLoc = 664; + fRef = 04537B17113823D20019F7BF /* SRCommon.h */; + name = "SRCommon.h: 28"; + rLen = 12; + rLoc = 501; rType = 0; - vrLen = 1339; - vrLoc = 410; + vrLen = 1362; + vrLoc = 320; }; - 045DA3001164F36E00485919 /* MinimapView.m:303 */ = { + 045DA3001164F36E00485919 /* MinimapView.m:264 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -647,45 +777,15 @@ delayBeforeContinue = 0; fileReference = 048D065D11216C0F009F7865 /* MinimapView.m */; functionName = "-firstRefresh"; - hitCount = 2; + hitCount = 0; ignoreCount = 0; - lineNumber = 303; + lineNumber = 264; location = TextmateMinimap; - modificationTime = 291828611.500521; + modificationTime = 291851350.620395; originalNumberOfMultipleMatches = 1; - state = 1; + state = 0; }; - 045DA3021164F36F00485919 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; - name = "BackgroundUpdater.m: 33"; - rLen = 31; - rLoc = 664; - rType = 0; - vrLen = 1292; - vrLoc = 579; - }; - 045DA3031164F36F00485919 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 302"; - rLen = 0; - rLoc = 9064; - rType = 0; - vrLen = 1362; - vrLoc = 8822; - }; - 045DA3041164F36F00485919 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 302"; - rLen = 0; - rLoc = 9064; - rType = 0; - vrLen = 1362; - vrLoc = 8822; - }; - 045DA3071164F39900485919 /* NSView+Minimap.m:134 */ = { + 045DA3071164F39900485919 /* NSView+Minimap.m:141 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -697,49 +797,11 @@ functionName = "-MM_selectTab:"; hitCount = 0; ignoreCount = 0; - lineNumber = 134; + lineNumber = 141; location = TextmateMinimap; - modificationTime = 291828633.373253; + modificationTime = 291851350.620485; originalNumberOfMultipleMatches = 1; - state = 1; - }; - 045DA3091164F39A00485919 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 302"; - rLen = 0; - rLoc = 9064; - rType = 0; - vrLen = 1152; - vrLoc = 8767; - }; - 045DA30A1164F39A00485919 /* PBXBookmark */ = { - isa = PBXBookmark; - fRef = 04A843DA1136972E002743B0 /* textmate-minimap.tiff */; - }; - 045DA30B1164F39A00485919 /* PBXBookmark */ = { - isa = PBXBookmark; - fRef = 04A843DA1136972E002743B0 /* textmate-minimap.tiff */; - }; - 045DA30E1164F39A00485919 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; - name = "NSView+Minimap.m: 135"; - rLen = 0; - rLoc = 3882; - rType = 0; - vrLen = 901; - vrLoc = 3477; - }; - 045DA30F1164F39A00485919 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; - name = "NSView+Minimap.m: 135"; - rLen = 0; - rLoc = 3882; - rType = 0; - vrLen = 901; - vrLoc = 3477; + state = 0; }; 047C7E4D110F278C00CC049E /* Source Control */ = { isa = PBXSourceControlManager; @@ -798,41 +860,41 @@ }; 048D064511216B1C009F7865 /* TextMateMinimap.m */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1748, 4275}}"; + sepNavIntBoundsRect = "{{0, 0}, {1748, 5010}}"; sepNavSelRange = "{1960, 0}"; - sepNavVisRange = "{620, 2103}"; + sepNavVisRange = "{7563, 1110}"; sepNavWindowFrame = "{{286, 9}, {994, 769}}"; }; }; 048D065C11216C0F009F7865 /* MinimapView.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1104, 930}}"; - sepNavSelRange = "{718, 0}"; - sepNavVisRange = "{0, 1067}"; + sepNavIntBoundsRect = "{{0, 0}, {1053, 945}}"; + sepNavSelRange = "{494, 0}"; + sepNavVisRange = "{0, 1137}"; sepNavWindowFrame = "{{38, 83}, {994, 769}}"; }; }; 048D065D11216C0F009F7865 /* MinimapView.m */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1054, 6525}}"; - sepNavSelRange = "{9064, 0}"; - sepNavVisRange = "{8767, 1025}"; + sepNavIntBoundsRect = "{{0, 0}, {1053, 6540}}"; + sepNavSelRange = "{1644, 0}"; + sepNavVisRange = "{2425, 1635}"; sepNavWindowFrame = "{{107, 9}, {994, 769}}"; }; }; 048D067B11216DDE009F7865 /* NSView+Minimap.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1084, 723}}"; - sepNavSelRange = "{481, 0}"; - sepNavVisRange = "{0, 915}"; + sepNavIntBoundsRect = "{{0, 0}, {720, 495}}"; + sepNavSelRange = "{369, 51}"; + sepNavVisRange = "{252, 405}"; sepNavWindowFrame = "{{15, 104}, {994, 769}}"; }; }; 048D067C11216DDE009F7865 /* NSView+Minimap.m */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {971, 2850}}"; - sepNavSelRange = "{3882, 0}"; - sepNavVisRange = "{3477, 901}"; + sepNavIntBoundsRect = "{{0, 0}, {1053, 3030}}"; + sepNavSelRange = "{2156, 0}"; + sepNavVisRange = "{1510, 1489}"; sepNavWindowFrame = "{{15, 104}, {994, 769}}"; }; }; @@ -846,9 +908,9 @@ }; 048D06A2112171BE009F7865 /* NSWindowController+Minimap.m */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1379, 5370}}"; - sepNavSelRange = "{1447, 0}"; - sepNavVisRange = "{1106, 573}"; + sepNavIntBoundsRect = "{{0, 0}, {1053, 5490}}"; + sepNavSelRange = "{10341, 0}"; + sepNavVisRange = "{8727, 1524}"; sepNavWindowFrame = "{{38, 83}, {994, 769}}"; }; }; @@ -918,7 +980,7 @@ argumentStrings = ( ); autoAttachOnCrash = 1; - breakpointsEnabled = 1; + breakpointsEnabled = 0; configStateDict = { "PBXLSLaunchAction-0" = { PBXLSLaunchAction = 0; @@ -989,92 +1051,12 @@ }; 04AEA8E9115930A700E337C5 /* AsyncBGDrawOperation.m */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1379, 2385}}"; - sepNavSelRange = "{1113, 0}"; - sepNavVisRange = "{1061, 572}"; + sepNavIntBoundsRect = "{{0, 0}, {720, 2430}}"; + sepNavSelRange = "{1657, 59}"; + sepNavVisRange = "{1388, 390}"; sepNavWindowFrame = "{{15, 104}, {994, 769}}"; }; }; - 04AEA8ED115930B900E337C5 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 044682CE11592AA000BE3D86 /* AsyncBGDrawOperation.h */; - name = "AsyncBGDrawOperation.h: 15"; - rLen = 22; - rLoc = 312; - rType = 0; - vrLen = 535; - vrLoc = 0; - }; - 04AEA90F1159323100E337C5 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D067C11216DDE009F7865 /* NSView+Minimap.m */; - name = "NSView+Minimap.m: 134"; - rLen = 0; - rLoc = 3870; - rType = 0; - vrLen = 1171; - vrLoc = 3612; - }; - 04AEA9101159323100E337C5 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */; - name = "BackgroundUpdater.m: 36"; - rLen = 36; - rLoc = 794; - rType = 0; - vrLen = 1348; - vrLoc = 263; - }; - 04AEA92C115935B200E337C5 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D064411216B1C009F7865 /* TextMateMinimap.h */; - name = "TextMateMinimap.h: 39"; - rLen = 0; - rLoc = 1001; - rType = 0; - vrLen = 1332; - vrLoc = 150; - }; - 04AEA95B115939F800E337C5 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 04AEA8E9115930A700E337C5 /* AsyncBGDrawOperation.m */; - name = "AsyncBGDrawOperation.m: 88"; - rLen = 0; - rLoc = 1075; - rType = 0; - vrLen = 1711; - vrLoc = 1505; - }; - 04AEA97D11593B7800E337C5 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D065C11216C0F009F7865 /* MinimapView.h */; - name = "MinimapView.h: 35"; - rLen = 0; - rLoc = 718; - rType = 0; - vrLen = 1067; - vrLoc = 0; - }; - 04AEA97E11593B7800E337C5 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 04DC1B7311536F6700F87F90 /* AsyncDrawOperation.h */; - name = "AsyncDrawOperation.h: 10"; - rLen = 23; - rLoc = 185; - rType = 0; - vrLen = 646; - vrLoc = 0; - }; - 04AEA9A311593DD000E337C5 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 04DC1B7411536F6700F87F90 /* AsyncDrawOperation.m */; - name = "AsyncDrawOperation.m: 163"; - rLen = 0; - rLoc = 4407; - rType = 0; - vrLen = 1628; - vrLoc = 3519; - }; 04B46002113BE9CE00BD8E0D /* PlistBookmark */ = { isa = PlistBookmark; fRef = 8D5B49B7048680CD000E48DA /* Info.plist */; @@ -1103,13 +1085,6 @@ vrLen = 1624; vrLoc = 12198; }; - 04B78D4211258C48009189AC /* NSView.h */ = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.h; - name = NSView.h; - path = /Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/AppKit.framework/Versions/C/Headers/NSView.h; - sourceTree = ""; - }; 04B78ECE1125AAB5009189AC /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 04B78ECF1125AAB5009189AC /* runtime.h */; @@ -1136,21 +1111,11 @@ }; 04B9A498112AF27F0082EF25 /* README */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1279, 647}}"; - sepNavSelRange = "{806, 0}"; - sepNavVisRange = "{0, 806}"; + sepNavIntBoundsRect = "{{0, 0}, {1118, 749}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 768}"; }; }; - 04C3FA9111594C7B006B7A99 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D064511216B1C009F7865 /* TextMateMinimap.m */; - name = "TextMateMinimap.m: 62"; - rLen = 0; - rLoc = 1960; - rType = 0; - vrLen = 2103; - vrLoc = 620; - }; 04CA0FA711204A6D006869D1 /* NSView.h */ = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; @@ -1195,9 +1160,9 @@ }; 04DC1B7411536F6700F87F90 /* AsyncDrawOperation.m */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1174, 3060}}"; - sepNavSelRange = "{2127, 0}"; - sepNavVisRange = "{1420, 1806}"; + sepNavIntBoundsRect = "{{0, 0}, {789, 3150}}"; + sepNavSelRange = "{2258, 59}"; + sepNavVisRange = "{2060, 410}"; sepNavWindowFrame = "{{84, 41}, {994, 769}}"; }; }; @@ -1220,22 +1185,12 @@ }; 04DC1F511154DC5D00F87F90 /* BackgroundUpdater.m */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1054, 1665}}"; - sepNavSelRange = "{664, 31}"; - sepNavVisRange = "{579, 1292}"; + sepNavIntBoundsRect = "{{0, 0}, {1053, 1815}}"; + sepNavSelRange = "{2119, 0}"; + sepNavVisRange = "{2001, 924}"; sepNavWindowFrame = "{{69, 5}, {994, 769}}"; }; }; - 04DC693311609D7D003E9EAA /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 048D065D11216C0F009F7865 /* MinimapView.m */; - name = "MinimapView.m: 48"; - rLen = 0; - rLoc = 1101; - rType = 0; - vrLen = 1027; - vrLoc = 619; - }; 04F15496113978FD007CA3E2 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 04F15497113978FD007CA3E2 /* xattr.h */; @@ -1255,16 +1210,16 @@ }; 089C1669FE841209C02AAC07 /* Project object */ = { activeArchitecturePreference = i386; - activeBuildConfigurationName = Debug; + activeBuildConfigurationName = Release; activeExecutable = 04AB5CE91125E495004C4D62 /* TextMate */; - activeSDKPreference = macosx10.5; + activeSDKPreference = macosx10.6; activeTarget = 8D5B49AC048680CD000E48DA /* TextmateMinimap */; addToTargets = ( 8D5B49AC048680CD000E48DA /* TextmateMinimap */, ); breakpoints = ( - 045DA3001164F36E00485919 /* MinimapView.m:303 */, - 045DA3071164F39900485919 /* NSView+Minimap.m:134 */, + 045DA3001164F36E00485919 /* MinimapView.m:264 */, + 045DA3071164F39900485919 /* NSView+Minimap.m:141 */, ); codeSenseManager = 047C7E4E110F278C00CC049E /* Code sense */; executables = ( @@ -1328,7 +1283,7 @@ PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; PBXFileTableDataSourceColumnWidthsKey = ( 20, - 876, + 875, 20, 48, 43, @@ -1391,17 +1346,70 @@ PBXFileDataSource_Warnings_ColumnID, ); }; - PBXPerProjectTemplateStateSaveDate = 291825872; - PBXWorkspaceStateSaveDate = 291825872; + PBXPerProjectTemplateStateSaveDate = 291852093; + PBXWorkspaceStateSaveDate = 291852093; }; perUserProjectItems = { + 04066F18116541F80016EBBE = 04066F18116541F80016EBBE /* PBXTextBookmark */; + 04066F19116541F80016EBBE = 04066F19116541F80016EBBE /* PBXTextBookmark */; + 04066F2D116542530016EBBE = 04066F2D116542530016EBBE /* PBXTextBookmark */; + 04066F2E116542530016EBBE = 04066F2E116542530016EBBE /* PBXTextBookmark */; + 04066F3E116543590016EBBE = 04066F3E116543590016EBBE /* PBXTextBookmark */; + 04066F3F116543590016EBBE = 04066F3F116543590016EBBE /* PBXTextBookmark */; + 04066F40116543590016EBBE = 04066F40116543590016EBBE /* PBXTextBookmark */; + 04066F4A116543620016EBBE = 04066F4A116543620016EBBE /* PBXTextBookmark */; + 04066F5C116543800016EBBE = 04066F5C116543800016EBBE /* PBXTextBookmark */; + 04066F5D116543800016EBBE = 04066F5D116543800016EBBE /* PBXTextBookmark */; + 04066F5E116543800016EBBE = 04066F5E116543800016EBBE /* PBXTextBookmark */; + 04066F64116543BF0016EBBE = 04066F64116543BF0016EBBE /* PBXTextBookmark */; + 04066F65116543BF0016EBBE = 04066F65116543BF0016EBBE /* PBXTextBookmark */; + 04066F66116543BF0016EBBE = 04066F66116543BF0016EBBE /* PBXTextBookmark */; + 04066F67116543BF0016EBBE = 04066F67116543BF0016EBBE /* PBXTextBookmark */; + 04066F69116543BF0016EBBE = 04066F69116543BF0016EBBE /* PBXTextBookmark */; + 04066F6E116543CF0016EBBE = 04066F6E116543CF0016EBBE /* PBXTextBookmark */; + 04066F6F116543CF0016EBBE = 04066F6F116543CF0016EBBE /* PBXTextBookmark */; + 04066F70116543D30016EBBE = 04066F70116543D30016EBBE /* PBXTextBookmark */; + 04066F71116543D30016EBBE = 04066F71116543D30016EBBE /* PBXTextBookmark */; + 04066F77116544390016EBBE = 04066F77116544390016EBBE /* PBXTextBookmark */; + 04066F7B1165449E0016EBBE = 04066F7B1165449E0016EBBE /* PBXTextBookmark */; + 04066F7F116544C90016EBBE = 04066F7F116544C90016EBBE /* PBXTextBookmark */; + 04066F83116545070016EBBE = 04066F83116545070016EBBE /* PBXTextBookmark */; + 04066F8B116545910016EBBE = 04066F8B116545910016EBBE /* PBXTextBookmark */; + 04066F8C116545910016EBBE = 04066F8C116545910016EBBE /* PBXTextBookmark */; + 04066F8D116545910016EBBE = 04066F8D116545910016EBBE /* PBXTextBookmark */; + 04066F91116546160016EBBE = 04066F91116546160016EBBE /* PBXTextBookmark */; + 04066FA811654A2C0016EBBE = 04066FA811654A2C0016EBBE /* PBXTextBookmark */; + 04066FA911654A2C0016EBBE = 04066FA911654A2C0016EBBE /* PBXTextBookmark */; + 04066FAA11654A2C0016EBBE = 04066FAA11654A2C0016EBBE /* PBXTextBookmark */; + 04066FAB11654A2C0016EBBE = 04066FAB11654A2C0016EBBE /* PBXTextBookmark */; + 04066FAD11654B120016EBBE = 04066FAD11654B120016EBBE /* PBXTextBookmark */; + 04066FAE11654B120016EBBE = 04066FAE11654B120016EBBE /* PBXTextBookmark */; + 04066FB011654B120016EBBE = 04066FB011654B120016EBBE /* PBXTextBookmark */; + 04066FB111654B130016EBBE = 04066FB111654B130016EBBE /* PBXTextBookmark */; + 04066FB211654B130016EBBE = 04066FB211654B130016EBBE /* PBXTextBookmark */; + 04066FB311654B130016EBBE = 04066FB311654B130016EBBE /* PBXTextBookmark */; + 04066FB411654B130016EBBE = 04066FB411654B130016EBBE /* PBXTextBookmark */; + 04066FB611654B130016EBBE = 04066FB611654B130016EBBE /* PBXTextBookmark */; + 04066FB911654B4E0016EBBE = 04066FB911654B4E0016EBBE /* PBXTextBookmark */; + 04066FBE11654BB80016EBBE = 04066FBE11654BB80016EBBE /* PBXTextBookmark */; + 04066FBF11654BB80016EBBE = 04066FBF11654BB80016EBBE /* PBXTextBookmark */; + 04066FC011654BB80016EBBE = 04066FC011654BB80016EBBE /* PBXTextBookmark */; + 04066FC411654C000016EBBE = 04066FC411654C000016EBBE /* PBXTextBookmark */; + 04066FC511654C000016EBBE = 04066FC511654C000016EBBE /* PBXTextBookmark */; + 04066FC611654C000016EBBE = 04066FC611654C000016EBBE /* PBXTextBookmark */; + 04066FCA11654C220016EBBE = 04066FCA11654C220016EBBE /* PBXTextBookmark */; + 04066FCB11654C220016EBBE = 04066FCB11654C220016EBBE /* PBXTextBookmark */; + 04066FCF11654C570016EBBE = 04066FCF11654C570016EBBE /* PBXTextBookmark */; + 04066FD011654C570016EBBE = 04066FD011654C570016EBBE /* PBXTextBookmark */; + 04066FD111654C570016EBBE = 04066FD111654C570016EBBE /* PBXTextBookmark */; + 04066FD211654C580016EBBE = 04066FD211654C580016EBBE /* PBXTextBookmark */; + 04066FD711654C700016EBBE = 04066FD711654C700016EBBE /* PBXTextBookmark */; + 04066FDA11654E510016EBBE = 04066FDA11654E510016EBBE /* PBXTextBookmark */; + 04066FDB11654E510016EBBE = 04066FDB11654E510016EBBE /* PBXTextBookmark */; + 0406702211654F4E0016EBBE /* PBXBookmark */ = 0406702211654F4E0016EBBE /* PBXBookmark */; + 0406702311654F4E0016EBBE /* PBXTextBookmark */ = 0406702311654F4E0016EBBE /* PBXTextBookmark */; 0417C08D113AB43B007BB23C = 0417C08D113AB43B007BB23C /* PBXTextBookmark */; 0429D03B1120B00E0048EA21 = 0429D03B1120B00E0048EA21 /* PBXTextBookmark */; - 042E4BC911609C970092B309 = 042E4BC911609C970092B309 /* PBXTextBookmark */; - 04467F8B1158D3C200BE3D86 = 04467F8B1158D3C200BE3D86 /* PBXTextBookmark */; - 0446805C1158E2F800BE3D86 = 0446805C1158E2F800BE3D86 /* PBXTextBookmark */; - 0446848911592D2200BE3D86 = 0446848911592D2200BE3D86 /* PBXTextBookmark */; - 044AB1C3113D4F1C00304627 = 044AB1C3113D4F1C00304627 /* PBXTextBookmark */; 04537B61113828230019F7BF = 04537B61113828230019F7BF /* PBXTextBookmark */; 04537BA911382B2D0019F7BF = 04537BA911382B2D0019F7BF /* PBXTextBookmark */; 04537BAA11382B2D0019F7BF = 04537BAA11382B2D0019F7BF /* PBXTextBookmark */; @@ -1409,75 +1417,15 @@ 04537BAE11382B2D0019F7BF = 04537BAE11382B2D0019F7BF /* PBXTextBookmark */; 04537BB111382B2D0019F7BF = 04537BB111382B2D0019F7BF /* PBXTextBookmark */; 04537BE7113839750019F7BF = 04537BE7113839750019F7BF /* PBXTextBookmark */; - 04537C59113885570019F7BF = 04537C59113885570019F7BF /* PBXTextBookmark */; - 04537C5B113885570019F7BF = 04537C5B113885570019F7BF /* PBXTextBookmark */; - 045DA2A91164E9A500485919 /* PBXTextBookmark */ = 045DA2A91164E9A500485919 /* PBXTextBookmark */; - 045DA2AA1164E9A500485919 /* PBXTextBookmark */ = 045DA2AA1164E9A500485919 /* PBXTextBookmark */; - 045DA2AB1164E9A500485919 /* PBXTextBookmark */ = 045DA2AB1164E9A500485919 /* PBXTextBookmark */; - 045DA2AC1164E9A500485919 /* PBXBookmark */ = 045DA2AC1164E9A500485919 /* PBXBookmark */; - 045DA2AD1164E9A500485919 /* PBXTextBookmark */ = 045DA2AD1164E9A500485919 /* PBXTextBookmark */; - 045DA2B11164EC7A00485919 /* PBXTextBookmark */ = 045DA2B11164EC7A00485919 /* PBXTextBookmark */; - 045DA2B31164EC7F00485919 /* PBXTextBookmark */ = 045DA2B31164EC7F00485919 /* PBXTextBookmark */; - 045DA2B41164EC7F00485919 /* PBXTextBookmark */ = 045DA2B41164EC7F00485919 /* PBXTextBookmark */; - 045DA2B51164EC7F00485919 /* PBXTextBookmark */ = 045DA2B51164EC7F00485919 /* PBXTextBookmark */; - 045DA2BC1164EC8E00485919 /* PBXTextBookmark */ = 045DA2BC1164EC8E00485919 /* PBXTextBookmark */; - 045DA2BD1164EC8E00485919 /* PBXTextBookmark */ = 045DA2BD1164EC8E00485919 /* PBXTextBookmark */; - 045DA2BE1164EC8E00485919 /* PBXTextBookmark */ = 045DA2BE1164EC8E00485919 /* PBXTextBookmark */; - 045DA2C11164ECA000485919 /* PBXTextBookmark */ = 045DA2C11164ECA000485919 /* PBXTextBookmark */; - 045DA2C21164ECA000485919 /* PBXTextBookmark */ = 045DA2C21164ECA000485919 /* PBXTextBookmark */; - 045DA2C31164ECA000485919 /* PBXTextBookmark */ = 045DA2C31164ECA000485919 /* PBXTextBookmark */; - 045DA2D01164ED0700485919 /* PBXTextBookmark */ = 045DA2D01164ED0700485919 /* PBXTextBookmark */; - 045DA2D11164ED0700485919 /* PBXTextBookmark */ = 045DA2D11164ED0700485919 /* PBXTextBookmark */; - 045DA2D61164ED5700485919 /* PBXTextBookmark */ = 045DA2D61164ED5700485919 /* PBXTextBookmark */; - 045DA2D71164ED5700485919 /* PBXTextBookmark */ = 045DA2D71164ED5700485919 /* PBXTextBookmark */; - 045DA2D81164ED5700485919 /* PBXTextBookmark */ = 045DA2D81164ED5700485919 /* PBXTextBookmark */; - 045DA2D91164ED5700485919 /* PBXTextBookmark */ = 045DA2D91164ED5700485919 /* PBXTextBookmark */; - 045DA2DB1164ED6C00485919 /* PBXTextBookmark */ = 045DA2DB1164ED6C00485919 /* PBXTextBookmark */; - 045DA2DC1164ED6C00485919 /* PBXTextBookmark */ = 045DA2DC1164ED6C00485919 /* PBXTextBookmark */; - 045DA2DD1164ED6C00485919 /* PBXTextBookmark */ = 045DA2DD1164ED6C00485919 /* PBXTextBookmark */; - 045DA2DE1164ED7300485919 /* PBXTextBookmark */ = 045DA2DE1164ED7300485919 /* PBXTextBookmark */; - 045DA2E01164ED8C00485919 /* PBXTextBookmark */ = 045DA2E01164ED8C00485919 /* PBXTextBookmark */; - 045DA2E21164ED9000485919 /* PBXTextBookmark */ = 045DA2E21164ED9000485919 /* PBXTextBookmark */; - 045DA2E51164EE6500485919 /* PBXTextBookmark */ = 045DA2E51164EE6500485919 /* PBXTextBookmark */; - 045DA2E61164EE6500485919 /* PBXTextBookmark */ = 045DA2E61164EE6500485919 /* PBXTextBookmark */; - 045DA2E71164EE6500485919 /* PBXTextBookmark */ = 045DA2E71164EE6500485919 /* PBXTextBookmark */; - 045DA2EB1164F21700485919 /* PBXTextBookmark */ = 045DA2EB1164F21700485919 /* PBXTextBookmark */; - 045DA2EC1164F21700485919 /* PBXTextBookmark */ = 045DA2EC1164F21700485919 /* PBXTextBookmark */; - 045DA2ED1164F21700485919 /* PBXTextBookmark */ = 045DA2ED1164F21700485919 /* PBXTextBookmark */; - 045DA2F41164F27A00485919 /* PBXTextBookmark */ = 045DA2F41164F27A00485919 /* PBXTextBookmark */; - 045DA2F51164F27A00485919 /* PBXTextBookmark */ = 045DA2F51164F27A00485919 /* PBXTextBookmark */; - 045DA2F61164F27A00485919 /* PBXTextBookmark */ = 045DA2F61164F27A00485919 /* PBXTextBookmark */; - 045DA2F91164F2F700485919 /* PBXTextBookmark */ = 045DA2F91164F2F700485919 /* PBXTextBookmark */; - 045DA2FA1164F2F700485919 /* PBXTextBookmark */ = 045DA2FA1164F2F700485919 /* PBXTextBookmark */; - 045DA2FB1164F2F700485919 /* PBXTextBookmark */ = 045DA2FB1164F2F700485919 /* PBXTextBookmark */; - 045DA2FC1164F2F700485919 /* PBXTextBookmark */ = 045DA2FC1164F2F700485919 /* PBXTextBookmark */; - 045DA3021164F36F00485919 /* PBXTextBookmark */ = 045DA3021164F36F00485919 /* PBXTextBookmark */; - 045DA3031164F36F00485919 /* PBXTextBookmark */ = 045DA3031164F36F00485919 /* PBXTextBookmark */; - 045DA3041164F36F00485919 /* PBXTextBookmark */ = 045DA3041164F36F00485919 /* PBXTextBookmark */; - 045DA3091164F39A00485919 /* PBXTextBookmark */ = 045DA3091164F39A00485919 /* PBXTextBookmark */; - 045DA30A1164F39A00485919 /* PBXBookmark */ = 045DA30A1164F39A00485919 /* PBXBookmark */; - 045DA30B1164F39A00485919 /* PBXBookmark */ = 045DA30B1164F39A00485919 /* PBXBookmark */; - 045DA30E1164F39A00485919 /* PBXTextBookmark */ = 045DA30E1164F39A00485919 /* PBXTextBookmark */; - 045DA30F1164F39A00485919 /* PBXTextBookmark */ = 045DA30F1164F39A00485919 /* PBXTextBookmark */; 0486C2A4112323380075832F = 0486C2A4112323380075832F /* PBXTextBookmark */; 0486C2A6112323380075832F = 0486C2A6112323380075832F /* PBXTextBookmark */; 04900F7B1137CB4200B2592C = 04900F7B1137CB4200B2592C /* PBXTextBookmark */; 04AB5D3B1125EDAA004C4D62 = 04AB5D3B1125EDAA004C4D62 /* PBXTextBookmark */; - 04AEA8ED115930B900E337C5 = 04AEA8ED115930B900E337C5 /* PBXTextBookmark */; - 04AEA90F1159323100E337C5 = 04AEA90F1159323100E337C5 /* PBXTextBookmark */; - 04AEA9101159323100E337C5 = 04AEA9101159323100E337C5 /* PBXTextBookmark */; - 04AEA92C115935B200E337C5 = 04AEA92C115935B200E337C5 /* PBXTextBookmark */; - 04AEA95B115939F800E337C5 = 04AEA95B115939F800E337C5 /* PBXTextBookmark */; - 04AEA97D11593B7800E337C5 = 04AEA97D11593B7800E337C5 /* PBXTextBookmark */; - 04AEA97E11593B7800E337C5 = 04AEA97E11593B7800E337C5 /* PBXTextBookmark */; - 04AEA9A311593DD000E337C5 = 04AEA9A311593DD000E337C5 /* PBXTextBookmark */; 04B46002113BE9CE00BD8E0D = 04B46002113BE9CE00BD8E0D /* PlistBookmark */; 04B78CEB11258866009189AC = 04B78CEB11258866009189AC /* PBXTextBookmark */; 04B78ECE1125AAB5009189AC = 04B78ECE1125AAB5009189AC /* PBXTextBookmark */; - 04C3FA9111594C7B006B7A99 = 04C3FA9111594C7B006B7A99 /* PBXTextBookmark */; 04CA0FC111204A89006869D1 = 04CA0FC111204A89006869D1 /* PBXTextBookmark */; 04DC1F291154DAE200F87F90 = 04DC1F291154DAE200F87F90 /* PBXTextBookmark */; - 04DC693311609D7D003E9EAA = 04DC693311609D7D003E9EAA /* PBXTextBookmark */; 04F15496113978FD007CA3E2 = 04F15496113978FD007CA3E2 /* PBXTextBookmark */; }; sourceControlManager = 047C7E4D110F278C00CC049E /* Source Control */;