X-Git-Url: http://git.ithinksw.org/ITFoundation.git/blobdiff_plain/c416c477c4388a6ceff28c4614e0e2d394987935..922d541053280857031e373eddba3843555859ce:/ITAppleEventCenter.m diff --git a/ITAppleEventCenter.m b/ITAppleEventCenter.m index d6924e0..abb1823 100755 --- a/ITAppleEventCenter.m +++ b/ITAppleEventCenter.m @@ -21,7 +21,7 @@ static ITAppleEventCenter *_sharedAECenter = nil; + (id)sharedCenter { - if( _sharedAECenter != nil ) { + if( _sharedAECenter ) { return _sharedAECenter; } else { _sharedAECenter = [[ITAppleEventCenter alloc] init]; @@ -31,9 +31,9 @@ static ITAppleEventCenter *_sharedAECenter = nil; - (NSString*)sendAEWithRequestedKey:(NSString*)key eventClass:(NSString*)eventClass eventID:(NSString*)eventID appPSN:(ProcessSerialNumber)psn { - if ( (!key) || (!eventClass) || (!eventID) || (psn.highLongOfPSN == kNoProcess) ) { + /*if ( (!key) || (!eventClass) || (!eventID) || (psn.highLongOfPSN == kNoProcess) ) { return @""; - } else { + } else*/ { AEEventClass eClass = *((unsigned long*)[eventClass UTF8String]); AEEventID eID = *((unsigned long*)[eventID UTF8String]); @@ -85,6 +85,10 @@ static ITAppleEventCenter *_sharedAECenter = nil; err2 = AESizeOfParam(&replyEvent, keyDirectObject, &resultType, &resultSize); result=malloc(resultSize); + if (resultType == typeUInt32) { + NSLog(@"waffles"); + } + if (err2) { NSLog(@"Error After AESizeOfParam: %i", err2); } else { err3 = AEGetParamPtr(&replyEvent, keyDirectObject, resultType, NULL, result, resultSize, &charResultSize); @@ -106,9 +110,9 @@ static ITAppleEventCenter *_sharedAECenter = nil; - (NSString*)sendTwoTierAEWithRequestedKey:(NSString*)key fromObjectByKey:(NSString*)object eventClass:(NSString*)eventClass eventID:(NSString*)eventID appPSN:(ProcessSerialNumber)psn { - if ( (!key) || (!object) || (!eventClass) || (!eventID) || (psn.highLongOfPSN == kNoProcess) ) { + /*if ( (!key) || (!object) || (!eventClass) || (!eventID) || (psn.highLongOfPSN == kNoProcess) ) { return @""; - } else { + } else*/ { AEEventClass eClass = *((unsigned long*)[eventClass UTF8String]); AEEventID eID = *((unsigned long*)[eventID UTF8String]); @@ -154,7 +158,6 @@ static ITAppleEventCenter *_sharedAECenter = nil; if (err) { NSLog(@"Send Error: %i",err); } else { - unichar* result=0; err2 = AESizeOfParam(&replyEvent, keyDirectObject, &resultType, &resultSize); @@ -179,12 +182,26 @@ static ITAppleEventCenter *_sharedAECenter = nil; } } +- (NSString *)sendAEWithRequestedArray:(NSArray *)array eventClass:(NSString*)eventClass eventID:(NSString*)eventID appPSN:(ProcessSerialNumber)psn +{ + //Build the send string + NSString *curString = [NSString stringWithFormat:@"{ form:'prop', want:type('prop'), seld:type('%s'), from:'null'() }", [[array objectAtIndex:0] UTF8String]]; + int i; + for (i = 1; i < [array count]; i++) { + NSString *from = [NSString stringWithFormat:@"{ form:'prop', want:type('prop'), seld:type('%s'), from:obj %@ }", + [[array objectAtIndex:i] UTF8String], curString]; + curString = from; + NSLog(@"%@", from); + } + curString = [@"'----':obj " stringByAppendingString:curString]; + return curString; +} - (void)sendAEWithEventClass:(NSString*)eventClass eventID:(NSString*)eventID appPSN:(ProcessSerialNumber)psn { - if ( (!eventClass) || (!eventID) || (psn.highLongOfPSN == kNoProcess) ) { + /*if ( (!eventClass) || (!eventID) || (psn.highLongOfPSN == kNoProcess) ) { return; - } else { + } else */{ AEEventClass eClass = *((unsigned long*)[eventClass UTF8String]); AEEventID eID = *((unsigned long*)[eventID UTF8String]); AppleEvent event, reply;