mirror of https://github.com/encounter/SDL.git
Updated the iOS Objective-C code to use NSDictionary/NSArray/NSNumber literals and subscripting, for improved code clarity.
This requires at least Xcode 4.5 and the iOS 6 SDK to build, but it doesn't change the minimum supported runtime version (iOS 5.1). Less than 2% of iOS users are running iOS 5, so I hope developers aren't trying to build SDL using an SDK which doesn't support iOS 6/7...
This commit is contained in:
parent
078ca9f078
commit
967549c9ad
|
@ -53,7 +53,7 @@ static SDL_bool s_showingMessageBox = SDL_FALSE;
|
||||||
return self;
|
return self;
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex;
|
- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex
|
||||||
{
|
{
|
||||||
*clickedButtonIndex = (int)buttonIndex;
|
*clickedButtonIndex = (int)buttonIndex;
|
||||||
}
|
}
|
||||||
|
@ -77,8 +77,8 @@ UIKit_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid)
|
||||||
@autoreleasepool {
|
@autoreleasepool {
|
||||||
UIAlertView* alert = [[UIAlertView alloc] init];
|
UIAlertView* alert = [[UIAlertView alloc] init];
|
||||||
|
|
||||||
alert.title = [NSString stringWithUTF8String:messageboxdata->title];
|
alert.title = @(messageboxdata->title);
|
||||||
alert.message = [NSString stringWithUTF8String:messageboxdata->message];
|
alert.message = @(messageboxdata->message);
|
||||||
alert.delegate = [[UIKit_UIAlertViewDelegate alloc] initWithButtonIndex:&clicked];
|
alert.delegate = [[UIKit_UIAlertViewDelegate alloc] initWithButtonIndex:&clicked];
|
||||||
|
|
||||||
for (i = 0; i < messageboxdata->numbuttons; ++i) {
|
for (i = 0; i < messageboxdata->numbuttons; ++i) {
|
||||||
|
|
|
@ -94,10 +94,10 @@
|
||||||
CAEAGLLayer *eaglLayer = (CAEAGLLayer *)self.layer;
|
CAEAGLLayer *eaglLayer = (CAEAGLLayer *)self.layer;
|
||||||
|
|
||||||
eaglLayer.opaque = YES;
|
eaglLayer.opaque = YES;
|
||||||
eaglLayer.drawableProperties = [NSDictionary dictionaryWithObjectsAndKeys:
|
eaglLayer.drawableProperties = @{
|
||||||
[NSNumber numberWithBool: retained], kEAGLDrawablePropertyRetainedBacking,
|
kEAGLDrawablePropertyRetainedBacking: @(retained),
|
||||||
colorFormat, kEAGLDrawablePropertyColorFormat,
|
kEAGLDrawablePropertyColorFormat: colorFormat
|
||||||
nil];
|
};
|
||||||
|
|
||||||
/* Set the appropriate scale (for retina display support) */
|
/* Set the appropriate scale (for retina display support) */
|
||||||
self.contentScaleFactor = scale;
|
self.contentScaleFactor = scale;
|
||||||
|
|
|
@ -25,20 +25,6 @@
|
||||||
|
|
||||||
#include "../SDL_sysvideo.h"
|
#include "../SDL_sysvideo.h"
|
||||||
|
|
||||||
#ifndef __IPHONE_6_0
|
|
||||||
/* This enum isn't available in older SDKs, but we use it for our own purposes on iOS 5.1 and for the system on iOS 6.0 */
|
|
||||||
enum UIInterfaceOrientationMask
|
|
||||||
{
|
|
||||||
UIInterfaceOrientationMaskPortrait = (1 << UIInterfaceOrientationPortrait),
|
|
||||||
UIInterfaceOrientationMaskLandscapeLeft = (1 << UIInterfaceOrientationLandscapeLeft),
|
|
||||||
UIInterfaceOrientationMaskLandscapeRight = (1 << UIInterfaceOrientationLandscapeRight),
|
|
||||||
UIInterfaceOrientationMaskPortraitUpsideDown = (1 << UIInterfaceOrientationPortraitUpsideDown),
|
|
||||||
UIInterfaceOrientationMaskLandscape = (UIInterfaceOrientationMaskLandscapeLeft | UIInterfaceOrientationMaskLandscapeRight),
|
|
||||||
UIInterfaceOrientationMaskAll = (UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskLandscapeLeft | UIInterfaceOrientationMaskLandscapeRight | UIInterfaceOrientationMaskPortraitUpsideDown),
|
|
||||||
UIInterfaceOrientationMaskAllButUpsideDown = (UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskLandscapeLeft | UIInterfaceOrientationMaskLandscapeRight),
|
|
||||||
};
|
|
||||||
#endif /* !__IPHONE_6_0 */
|
|
||||||
|
|
||||||
|
|
||||||
#endif /* _SDL_uikitvideo_h */
|
#endif /* _SDL_uikitvideo_h */
|
||||||
|
|
||||||
|
|
|
@ -61,7 +61,7 @@
|
||||||
- (void)showKeyboard;
|
- (void)showKeyboard;
|
||||||
- (void)hideKeyboard;
|
- (void)hideKeyboard;
|
||||||
- (void)initializeKeyboard;
|
- (void)initializeKeyboard;
|
||||||
@property (readonly) BOOL keyboardVisible;
|
@property (nonatomic, readonly) BOOL keyboardVisible;
|
||||||
@property (nonatomic, assign) SDL_Rect textInputRect;
|
@property (nonatomic, assign) SDL_Rect textInputRect;
|
||||||
@property (nonatomic, assign) int keyboardHeight;
|
@property (nonatomic, assign) int keyboardHeight;
|
||||||
|
|
||||||
|
|
|
@ -395,7 +395,7 @@ void _uikit_keyboard_init() {
|
||||||
queue:queue
|
queue:queue
|
||||||
usingBlock:^(NSNotification *notification) {
|
usingBlock:^(NSNotification *notification) {
|
||||||
int height = 0;
|
int height = 0;
|
||||||
CGSize keyboardSize = [[[notification userInfo] objectForKey:UIKeyboardFrameBeginUserInfoKey] CGRectValue].size;
|
CGSize keyboardSize = [[notification userInfo][UIKeyboardFrameBeginUserInfoKey] CGRectValue].size;
|
||||||
height = keyboardSize.height;
|
height = keyboardSize.height;
|
||||||
UIInterfaceOrientation ui_orient = [[UIApplication sharedApplication] statusBarOrientation];
|
UIInterfaceOrientation ui_orient = [[UIApplication sharedApplication] statusBarOrientation];
|
||||||
if (ui_orient == UIInterfaceOrientationLandscapeRight || ui_orient == UIInterfaceOrientationLandscapeLeft) {
|
if (ui_orient == UIInterfaceOrientationLandscapeRight || ui_orient == UIInterfaceOrientationLandscapeLeft) {
|
||||||
|
|
|
@ -70,9 +70,7 @@
|
||||||
const char *orientationsHint = SDL_GetHint(SDL_HINT_ORIENTATIONS);
|
const char *orientationsHint = SDL_GetHint(SDL_HINT_ORIENTATIONS);
|
||||||
|
|
||||||
if (orientationsHint != NULL) {
|
if (orientationsHint != NULL) {
|
||||||
NSString *orientationsString = [NSString stringWithCString:orientationsHint
|
NSArray *orientations = [@(orientationsHint) componentsSeparatedByCharactersInSet:
|
||||||
encoding:NSUTF8StringEncoding];
|
|
||||||
NSArray *orientations = [orientationsString componentsSeparatedByCharactersInSet:
|
|
||||||
[NSCharacterSet characterSetWithCharactersInString:@" "]];
|
[NSCharacterSet characterSetWithCharactersInString:@" "]];
|
||||||
|
|
||||||
if ([orientations containsObject:@"LandscapeLeft"]) {
|
if ([orientations containsObject:@"LandscapeLeft"]) {
|
||||||
|
|
Loading…
Reference in New Issue