Revision: 4756
          http://skim-app.svn.sourceforge.net/skim-app/?rev=4756&view=rev
Author:   hofman
Date:     2008-10-07 22:09:21 +0000 (Tue, 07 Oct 2008)

Log Message:
-----------
Implement boundsCompare in NSString category, as notes documents use strings 
for bounds.

Modified Paths:
--------------
    trunk/NSString_SKExtensions.h
    trunk/NSString_SKExtensions.m

Modified: trunk/NSString_SKExtensions.h
===================================================================
--- trunk/NSString_SKExtensions.h       2008-10-07 22:05:41 UTC (rev 4755)
+++ trunk/NSString_SKExtensions.h       2008-10-07 22:09:21 UTC (rev 4756)
@@ -42,6 +42,7 @@
 @interface NSString (SKExtensions)
 
 - (NSComparisonResult)noteTypeCompare:(id)other;
+- (NSComparisonResult)boundsCompare:(NSString *)aString;
 
 - (NSString 
*)stringByCollapsingWhitespaceAndNewlinesAndRemovingSurroundingWhitespaceAndNewlines;
 - (NSString *)stringByRemovingAliens;

Modified: trunk/NSString_SKExtensions.m
===================================================================
--- trunk/NSString_SKExtensions.m       2008-10-07 22:05:41 UTC (rev 4755)
+++ trunk/NSString_SKExtensions.m       2008-10-07 22:09:21 UTC (rev 4756)
@@ -138,6 +138,28 @@
     return [[self noteTypeOrder] compare:[other noteTypeOrder]];
 }
 
+- (NSComparisonResult)boundsCompare:(NSString *)aString {
+    NSRect rect1 = NSRectFromString(self);
+    NSRect rect2 = NSRectFromString(aString);
+    float top1 = NSMaxY(rect1);
+    float top2 = NSMaxY(rect2);
+    
+    if (top1 > top2)
+        return NSOrderedAscending;
+    else if (top1 < top2)
+        return NSOrderedDescending;
+    
+    float left1 = NSMinX(rect1);
+    float left2 = NSMinX(rect2);
+    
+    if (left1 < left2)
+        return NSOrderedAscending;
+    else if (left1 > left2)
+        return NSOrderedDescending;
+    else
+        return NSOrderedSame;
+}
+
 - (NSString 
*)stringByCollapsingWhitespaceAndNewlinesAndRemovingSurroundingWhitespaceAndNewlines;
 {
     return 
[(id)SKStringCreateByCollapsingAndTrimmingWhitespaceAndNewlines(CFAllocatorGetDefault(),
 (CFStringRef)self) autorelease];


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 the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Skim-app-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/skim-app-commit

Reply via email to