Re: Deprecated APIs
Re: Deprecated APIs
- Subject: Re: Deprecated APIs
- From: Charles Srstka <email@hidden>
- Date: Tue, 23 Feb 2010 17:26:52 -0600
On Feb 23, 2010, at 2:25 PM, Steve Christensen wrote:
> As others have already pointed out, it's your choice of whether or not to support a deprecated API method. When I decide to use OS version-specific API methods, I code as follows. The benefit is that, when you decide to support a minimum of 10.6, the code to support older OS versions is automatically stripped out at compile time.
>
>
> #if MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_6
> if (![panel respondsToSelector:@selector(beginSheetModalForWindow:completionHandler:)])
> {
> // code to run on Leopard and earlier
> [panel beginSheetForDirectory: @"/Users/whatever/Pictures/"
> file: @"Untitled"
> modalForWindow: mWindow
> modalDelegate: self
> didEndSelector: @selector(sheedDidEnd:returnCode:contextInfo:)
> contextInfo: nil];
> }
> else
> #endif
> {
> // code to run on Snow Leopard or later
> [panel setDirectoryURL: @"/Users/whatever/Pictures/"];
> [panel setNameFieldStringValue:@"Untitled"];
> [panel beginSheetModalForWindow:mWindow
> completionHandler:^(NSInteger returnCode) {
> [panel orderOut:self];
> [self didEndPathSelectorSheet: returnCode
> filename: [ [panel URL] relativePath] ];
> } ];
> }
That code uses blocks, though, which implies that it will be compiled using a later version of Objective-C. Will that code really run on older versions of OS X?
Charles_______________________________________________
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