Files
swift-mirror/stdlib/public/Darwin/UIKit/DesignatedInitializers.mm
Saleem Abdulrasool 41d9c2cc59 stdlib: restructure for OS family layout of SDK overlay
The SDK directory is now confusing as the Windows target also has a SDK
overlay.  In order to make this more uniform, move the SDK directory to
Darwin which covers the fact that this covers the XNU family of OSes.
The Windows directory contains the SDK overlay for the Windows target.
2018-12-06 11:32:05 -08:00

77 lines
2.5 KiB
Plaintext

//===----------------------------------------------------------------------===//
//
// This source file is part of the Swift.org open source project
//
// Copyright (c) 2014 - 2017 Apple Inc. and the Swift project authors
// Licensed under Apache License v2.0 with Runtime Library Exception
//
// See https://swift.org/LICENSE.txt for license information
// See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
//
//===----------------------------------------------------------------------===//
//
// This file contains replacements for the designated initializers of some
// UIKit classes that take variadic parameters and thus cannot be used in
// Swift as-is.
//
//===----------------------------------------------------------------------===//
#import <UIKit/UIKit.h>
#include <TargetConditionals.h>
#if (!defined(TARGET_OS_WATCH) || !TARGET_OS_WATCH) && \
(!defined(TARGET_OS_TV) || !TARGET_OS_TV)
@interface UIActionSheet (_SwiftInterop)
- (instancetype)initWithTitle:(NSString *)title
delegate:(id<UIActionSheetDelegate>)delegate
cancelButtonTitle:(NSString *)cancelButtonTitle
destructiveButtonTitle:(NSString *)destructiveButtonTitle;
@end
@implementation UIActionSheet (_SwiftInterop)
- (instancetype)initWithTitle:(NSString *)title
delegate:(id<UIActionSheetDelegate>)delegate
cancelButtonTitle:(NSString *)cancelButtonTitle
destructiveButtonTitle:(NSString *)destructiveButtonTitle {
return [self initWithTitle:title
delegate:delegate
cancelButtonTitle:cancelButtonTitle
destructiveButtonTitle:destructiveButtonTitle
otherButtonTitles:nil];
}
@end
#endif
#if (!defined(TARGET_OS_WATCH) || !TARGET_OS_WATCH) && \
(!defined(TARGET_OS_TV) || !TARGET_OS_TV)
@interface UIAlertView (_SwiftInterop)
- (instancetype)initWithTitle:(NSString *)title
message:(NSString *)message
delegate:(id <UIAlertViewDelegate>)delegate
cancelButtonTitle:(NSString *)cancelButtonTitle;
@end
@implementation UIAlertView (_SwiftInterop)
- (instancetype)initWithTitle:(NSString *)title
message:(NSString *)message
delegate:(id <UIAlertViewDelegate>)delegate
cancelButtonTitle:(NSString *)cancelButtonTitle {
return [self initWithTitle:title
message:message
delegate:delegate
cancelButtonTitle:cancelButtonTitle
otherButtonTitles:nil];
}
@end
#endif