Re: Problems with ScriptingBridge and iTunes
Re: Problems with ScriptingBridge and iTunes
- Subject: Re: Problems with ScriptingBridge and iTunes
- From: has <email@hidden>
- Date: Sun, 2 Mar 2008 12:05:28 +0000
Hannes Petri wrote:
I want to retrieve the path to the currently played file in iTunes. I
thought scripting bridge would be the perfect tool for this, however
i've run into some problem. I have this code:
iTunesApplication *iTunes = [[SBApplication alloc]
initWithBundleIdentifier:@"com.apple.iTunes"];
iTunesTrack *currentTrack = [iTunes currentTrack];
if ([currentTrack isKindOfClass:[iTunesFileTrack class]]) {
}
The problem is, that the class of the object returned is _always_
iTunesTrack, and not iTunesFileTrack, as i expect it to be.
Here's how you'd do it using objc-appscript <http://appscript.sourceforge.net/objc-appscript.html
>:
// To generate iTunes glue: osaglue -o ITGlue -p IT iTunes
#import <Foundation/Foundation.h>
#import "ITGlue/ITGlue.h"
int main (int argc, const char * argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
ITApplication *itunes = [[ITApplication alloc] initWithBundleID:
@"com.apple.itunes"];
ITReference *track = [itunes currentTrack];
ITConstant *trackClass = [[[track class_] get] send];
if (trackClass == [ITConstant fileTrack]) {
ASAlias *trackFile = [[[track location] get] send];
NSLog(@"%@", trackFile);
}
[itunes release];
[pool drain];
return 0;
}
HTH
has
--
http://appscript.sourceforge.net
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden