// NSStringExtension.m // Extension to NSString class // By lukhnos // This piece of code is public domain #import "NSStringExtension.h" @implementation NSString (SplitBySpaceWithQuote) + (NSString*)stringByColor:(NSColor*)c { return [NSString stringWithFormat:@"%f %f %f", [c redComponent], [c greenComponent], [c blueComponent]]; } - (NSColor*)colorByString { NSArray *s=[self splitBySpaceWithQuote]; if ([s count] < 3) return [NSColor blackColor]; return [NSColor colorWithDeviceRed:[[s objectAtIndex:0] floatValue] green:[[s objectAtIndex:1] floatValue] blue:[[s objectAtIndex:2] floatValue] alpha:1.0]; } - (NSString*)stringByQuoting { int l=[self length]; UniChar *s=(UniChar*)calloc(1, l*sizeof(UniChar)); [self getCharacters:s]; UniChar *buf=(UniChar*)calloc(1, (l*2+2)*sizeof(UniChar)); int i, p=0; buf[p++]='\"'; for (i=0; i=0; i--) { if ([self characterAtIndex:i]!='\n') break; } if (i==-1) return [[NSString new] autorelease]; NSRange r=(NSRange){0, i+1}; return [self substringWithRange:r]; } - (NSArray*)splitBySpaceWithQuote { NSMutableArray *ma=[[NSMutableArray new] autorelease]; int p=0, q=0; int l=[self length]; UniChar *s=(UniChar*)calloc(1, l*sizeof(UniChar)); [self getCharacters:s]; UniChar *buf=(UniChar*)calloc(1, l*sizeof(UniChar)); int bufp=0; int emptystr=0; while (p