More cleanup of the iOS Objective-C code. iOS-improvements
authorAlex Szpakowski <slime73@gmail.com>
Wed, 23 Jul 2014 03:05:31 -0300
branchiOS-improvements
changeset 9501 574db299498f
parent 9500 cbf5c5ecf5ac
child 9502 933ed557b7c1
More cleanup of the iOS Objective-C code.
src/video/uikit/SDL_uikitappdelegate.m
src/video/uikit/SDL_uikitmessagebox.m
src/video/uikit/SDL_uikitopenglview.h
src/video/uikit/SDL_uikitopenglview.m
src/video/uikit/SDL_uikitview.h
src/video/uikit/SDL_uikitview.m
src/video/uikit/SDL_uikitviewcontroller.h
src/video/uikit/SDL_uikitwindow.m
--- a/src/video/uikit/SDL_uikitappdelegate.m	Wed Jul 23 01:33:59 2014 -0300
+++ b/src/video/uikit/SDL_uikitappdelegate.m	Wed Jul 23 03:05:31 2014 -0300
@@ -75,17 +75,18 @@
     [UIApplication sharedApplication].idleTimerDisabled = disable;
 }
 
-@interface SDL_splashviewcontroller : UIViewController {
+@interface SDL_splashviewcontroller : UIViewController
+
+- (void)updateSplashImage:(UIInterfaceOrientation)interfaceOrientation;
+
+@end
+
+@implementation SDL_splashviewcontroller {
     UIImageView *splash;
     UIImage *splashPortrait;
     UIImage *splashLandscape;
 }
 
-- (void)updateSplashImage:(UIInterfaceOrientation)interfaceOrientation;
-@end
-
-@implementation SDL_splashviewcontroller
-
 - (id)init
 {
     self = [super init];
--- a/src/video/uikit/SDL_uikitmessagebox.m	Wed Jul 23 01:33:59 2014 -0300
+++ b/src/video/uikit/SDL_uikitmessagebox.m	Wed Jul 23 03:05:31 2014 -0300
@@ -30,17 +30,16 @@
 
 static SDL_bool s_showingMessageBox = SDL_FALSE;
 
-@interface UIKit_UIAlertViewDelegate : NSObject <UIAlertViewDelegate> {
-@private
-    int *clickedButtonIndex;
-}
+@interface UIKit_UIAlertViewDelegate : NSObject <UIAlertViewDelegate>
 
 - (id)initWithButtonIndex:(int *)_buttonIndex;
 - (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex;
 
 @end
 
-@implementation UIKit_UIAlertViewDelegate
+@implementation UIKit_UIAlertViewDelegate {
+    int *clickedButtonIndex;
+}
 
 - (id)initWithButtonIndex:(int *)buttonIndex
 {
@@ -48,7 +47,8 @@
     if (self == nil) {
         return nil;
     }
-    self->clickedButtonIndex = buttonIndex;
+
+    clickedButtonIndex = buttonIndex;
 
     return self;
 }
--- a/src/video/uikit/SDL_uikitopenglview.h	Wed Jul 23 01:33:59 2014 -0300
+++ b/src/video/uikit/SDL_uikitopenglview.h	Wed Jul 23 03:05:31 2014 -0300
@@ -29,38 +29,7 @@
     The view content is basically an EAGL surface you render your OpenGL scene into.
     Note that setting the view non-opaque will only work if the EAGL surface has an alpha channel.
  */
-@interface SDL_uikitopenglview : SDL_uikitview {
-
-@private
-    /* The pixel dimensions of the backbuffer */
-    GLint backingWidth;
-    GLint backingHeight;
-
-    EAGLContext *context;
-
-    /* OpenGL names for the renderbuffer and framebuffers used to render to this view */
-    GLuint viewRenderbuffer, viewFramebuffer;
-
-    /* OpenGL name for the depth buffer that is attached to viewFramebuffer, if it exists (0 if it does not exist) */
-    GLuint depthRenderbuffer;
-
-    /* format of depthRenderbuffer */
-    GLenum depthBufferFormat;
-
-    id displayLink;
-    int animationInterval;
-    void (*animationCallback)(void*);
-    void *animationCallbackParam;
-}
-
-@property (nonatomic, retain, readonly) EAGLContext *context;
-
-/* The width and height of the drawable in pixels (as opposed to points.) */
-@property (nonatomic, readonly) int backingWidth;
-@property (nonatomic, readonly) int backingHeight;
-
-- (void)swapBuffers;
-- (void)setCurrentContext;
+@interface SDL_uikitopenglview : SDL_uikitview
 
 - (id)initWithFrame:(CGRect)frame
               scale:(CGFloat)scale
@@ -75,11 +44,20 @@
        majorVersion:(int)majorVersion
          shareGroup:(EAGLSharegroup*)shareGroup;
 
+@property (nonatomic, retain, readonly) EAGLContext *context;
+
+/* The width and height of the drawable in pixels (as opposed to points.) */
+@property (nonatomic, readonly) int backingWidth;
+@property (nonatomic, readonly) int backingHeight;
+
+- (void)swapBuffers;
+- (void)setCurrentContext;
+
 - (void)updateFrame;
 
 - (void)setAnimationCallback:(int)interval
-    callback:(void (*)(void*))callback
-    callbackParam:(void*)callbackParam;
+                    callback:(void (*)(void*))callback
+               callbackParam:(void*)callbackParam;
 
 - (void)startAnimation;
 - (void)stopAnimation;
--- a/src/video/uikit/SDL_uikitopenglview.m	Wed Jul 23 01:33:59 2014 -0300
+++ b/src/video/uikit/SDL_uikitopenglview.m	Wed Jul 23 03:05:31 2014 -0300
@@ -28,12 +28,28 @@
 #include "SDL_uikitmessagebox.h"
 
 
-@implementation SDL_uikitopenglview
+@implementation SDL_uikitopenglview {
+
+    /* OpenGL names for the renderbuffer and framebuffers used to render to this view */
+    GLuint viewRenderbuffer, viewFramebuffer;
+
+    /* OpenGL name for the depth buffer that is attached to viewFramebuffer, if it exists (0 if it does not exist) */
+    GLuint depthRenderbuffer;
+
+    /* format of depthRenderbuffer */
+    GLenum depthBufferFormat;
+
+    id displayLink;
+    int animationInterval;
+    void (*animationCallback)(void*);
+    void *animationCallbackParam;
+
+}
 
 @synthesize context;
 
-@synthesize backingWidth = backingWidth;
-@synthesize backingHeight = backingHeight;
+@synthesize backingWidth;
+@synthesize backingHeight;
 
 + (Class)layerClass
 {
@@ -53,8 +69,6 @@
        majorVersion:(int)majorVersion
          shareGroup:(EAGLSharegroup*)shareGroup
 {
-    depthBufferFormat = 0;
-
     if ((self = [super initWithFrame:frame])) {
         const BOOL useStencilBuffer = (stencilBits != 0);
         const BOOL useDepthBuffer = (depthBits != 0);
--- a/src/video/uikit/SDL_uikitview.h	Wed Jul 23 01:33:59 2014 -0300
+++ b/src/video/uikit/SDL_uikitview.h	Wed Jul 23 03:05:31 2014 -0300
@@ -35,23 +35,10 @@
 #else
 @interface SDL_uikitview : UIView {
 #endif
-
-    SDL_TouchID touchId;
-    UITouch *leftFingerDown;
-#ifndef IPHONE_TOUCH_EFFICIENT_DANGEROUS
-    UITouch *finger[MAX_SIMULTANEOUS_TOUCHES];
-#endif
-
-#if SDL_IPHONE_KEYBOARD
-    UITextField *textField;
-    BOOL keyboardVisible;
-    SDL_Rect textInputRect;
-    int keyboardHeight;
-#endif
-
 @public
     SDL_uikitviewcontroller *viewcontroller;
 }
+
 - (CGPoint)touchLocation:(UITouch *)touch shouldNormalize:(BOOL)normalize;
 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;
 - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event;
@@ -61,7 +48,8 @@
 - (void)showKeyboard;
 - (void)hideKeyboard;
 - (void)initializeKeyboard;
-@property (nonatomic, readonly) BOOL keyboardVisible;
+
+@property (nonatomic, readonly, assign, getter=isKeyboardVisible) BOOL keyboardVisible;
 @property (nonatomic, assign) SDL_Rect textInputRect;
 @property (nonatomic, assign) int keyboardHeight;
 
--- a/src/video/uikit/SDL_uikitview.m	Wed Jul 23 01:33:59 2014 -0300
+++ b/src/video/uikit/SDL_uikitview.m	Wed Jul 23 03:05:31 2014 -0300
@@ -37,7 +37,19 @@
 
 void _uikit_keyboard_init();
 
-@implementation SDL_uikitview
+@implementation SDL_uikitview {
+
+    SDL_TouchID touchId;
+    UITouch *leftFingerDown;
+#ifndef IPHONE_TOUCH_EFFICIENT_DANGEROUS
+    UITouch *finger[MAX_SIMULTANEOUS_TOUCHES];
+#endif
+
+#if SDL_IPHONE_KEYBOARD
+    UITextField *textField;
+#endif
+
+}
 
 - (void)dealloc
 {
@@ -66,7 +78,7 @@
     CGPoint point = [touch locationInView: self];
 
     if (normalize) {
-        CGRect bounds = [self bounds];
+        CGRect bounds = self.bounds;
         point.x /= bounds.size.width;
         point.y /= bounds.size.height;
     }
@@ -122,7 +134,7 @@
 
         CGPoint locationInView = [self touchLocation:touch shouldNormalize:YES];
 #ifdef IPHONE_TOUCH_EFFICIENT_DANGEROUS
-        SDL_SendTouch(touchId, (long)touch,
+        SDL_SendTouch(touchId, (SDL_FingerID)((size_t)touch),
                       SDL_FALSE, locationInView.x, locationInView.y, 1.0f);
 #else
         int i;
@@ -160,7 +172,7 @@
 
         CGPoint locationInView = [self touchLocation:touch shouldNormalize:YES];
 #ifdef IPHONE_TOUCH_EFFICIENT_DANGEROUS
-        SDL_SendTouchMotion(touchId, (long)touch,
+        SDL_SendTouchMotion(touchId, (SDL_FingerID)((size_t)touch),
                             locationInView.x, locationInView.y, 1.0f);
 #else
         int i;
@@ -180,14 +192,9 @@
 */
 #if SDL_IPHONE_KEYBOARD
 
-@synthesize textInputRect = textInputRect;
-@synthesize keyboardHeight = keyboardHeight;
-
-/* Is the iPhone virtual keyboard visible onscreen? */
-- (BOOL)keyboardVisible
-{
-    return keyboardVisible;
-}
+@synthesize textInputRect;
+@synthesize keyboardHeight;
+@synthesize keyboardVisible;
 
 /* Set ourselves up as a UITextFieldDelegate */
 - (void)initializeKeyboard
@@ -337,7 +344,7 @@
         return 0;
     }
 
-    return view.keyboardVisible;
+    return view.isKeyboardVisible;
 }
 
 
--- a/src/video/uikit/SDL_uikitviewcontroller.h	Wed Jul 23 01:33:59 2014 -0300
+++ b/src/video/uikit/SDL_uikitviewcontroller.h	Wed Jul 23 03:05:31 2014 -0300
@@ -23,12 +23,9 @@
 
 #include "../SDL_sysvideo.h"
 
-@interface SDL_uikitviewcontroller : UIViewController {
-@private
-    SDL_Window *window;
-}
+@interface SDL_uikitviewcontroller : UIViewController
 
-@property (nonatomic, readwrite) SDL_Window *window;
+@property (nonatomic, assign) SDL_Window *window;
 
 - (id)initWithSDLWindow:(SDL_Window *)_window;
 - (void)loadView;
--- a/src/video/uikit/SDL_uikitwindow.m	Wed Jul 23 01:33:59 2014 -0300
+++ b/src/video/uikit/SDL_uikitwindow.m	Wed Jul 23 03:05:31 2014 -0300
@@ -239,7 +239,6 @@
     SDL_DisplayData *displaydata = (SDL_DisplayData *) display->driverdata;
     SDL_WindowData *windowdata = (SDL_WindowData *) window->driverdata;
     SDL_uikitviewcontroller *viewcontroller = windowdata->viewcontroller;
-    UIWindow *uiwindow = windowdata->uiwindow;
     CGRect bounds;
 
     if (fullscreen || (window->flags & SDL_WINDOW_BORDERLESS)) {