On Nov 23, 2009, at 4:16 PM, Kevin Walzer wrote:

> Does this address the problem of only one NSURL being returned?

No. But BTW I looked at your code again and I see why it's failing to get the 
paths.

>  for (NSString *type in types) {
>    //string type
>    if ([type isEqualToString:NSStringPboardType]) {
>      pasteboardvalue = [dragpasteboard stringForType:NSStringPboardType];
>      //URL; convert to string
>    } else if ([type isEqualToString:NSURLPboardType]) {
>      pasteboardvalue =  [[NSURL URLFromPasteboard:dragpasteboard] 
> absoluteString];

You're looping over all the types on the drag pasteboard, and every time you 
stuff your resulting 'pasteboardvalue' string into the general pasteboard. 
Since each iteration overwrites the result of the previous ones, you only end 
up handling the last type on the pasteboard. I'm not sure exactly what your 
code is intending to do, but you need to restructure it somehow.

The thing that tends to make the most sense usually is not to loop but to ask 
the pasteboard for the data for each type you're interested in, the best type 
first, and then use the first type you get. So in your case you'd probably ask 
for filenames first, then URLs, then strings.

—Jens_______________________________________________

Cocoa-dev mailing list ([email protected])

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to