Skip to content
This repository has been archived by the owner on Feb 11, 2021. It is now read-only.

Commit

Permalink
Fixed spacing
Browse files Browse the repository at this point in the history
  • Loading branch information
slouken committed Feb 1, 2011
1 parent cb2d5f5 commit 4d10d3b
Show file tree
Hide file tree
Showing 5 changed files with 416 additions and 420 deletions.
85 changes: 42 additions & 43 deletions src/video/uikit/SDL_uikitappdelegate.m
Expand Up @@ -37,69 +37,68 @@

int main(int argc, char **argv) {

int i;
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
/* store arguments */
forward_argc = argc;
forward_argv = (char **)malloc((argc+1) * sizeof(char *));
for (i=0; i<argc; i++) {
forward_argv[i] = malloc( (strlen(argv[i])+1) * sizeof(char));
strcpy(forward_argv[i], argv[i]);
}
forward_argv[i] = NULL;

/* Give over control to run loop, SDLUIKitDelegate will handle most things from here */
UIApplicationMain(argc, argv, NULL, @"SDLUIKitDelegate");
[pool release];
int i;
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
/* store arguments */
forward_argc = argc;
forward_argv = (char **)malloc((argc+1) * sizeof(char *));
for (i=0; i<argc; i++) {
forward_argv[i] = malloc( (strlen(argv[i])+1) * sizeof(char));
strcpy(forward_argv[i], argv[i]);
}
forward_argv[i] = NULL;

/* Give over control to run loop, SDLUIKitDelegate will handle most things from here */
UIApplicationMain(argc, argv, NULL, @"SDLUIKitDelegate");
[pool release];
}

@implementation SDLUIKitDelegate

/* convenience method */
+(SDLUIKitDelegate *)sharedAppDelegate {
/* the delegate is set in UIApplicationMain(), which is garaunteed to be called before this method */
return (SDLUIKitDelegate *)[[UIApplication sharedApplication] delegate];
/* the delegate is set in UIApplicationMain(), which is garaunteed to be called before this method */
return (SDLUIKitDelegate *)[[UIApplication sharedApplication] delegate];
}

- (id)init {
self = [super init];
return self;
self = [super init];
return self;
}

- (void)postFinishLaunch {

/* run the user's application, passing argc and argv */
int exit_status = SDL_main(forward_argc, forward_argv);
/* free the memory we used to hold copies of argc and argv */
int i;
for (i=0; i<forward_argc; i++) {
free(forward_argv[i]);
}
free(forward_argv);
/* exit, passing the return status from the user's application */
exit(exit_status);
/* run the user's application, passing argc and argv */
int exit_status = SDL_main(forward_argc, forward_argv);
/* free the memory we used to hold copies of argc and argv */
int i;
for (i=0; i<forward_argc; i++) {
free(forward_argv[i]);
}
free(forward_argv);
/* exit, passing the return status from the user's application */
exit(exit_status);
}

- (void)applicationDidFinishLaunching:(UIApplication *)application {
/* Set working directory to resource path */
[[NSFileManager defaultManager] changeCurrentDirectoryPath: [[NSBundle mainBundle] resourcePath]];
[self performSelector:@selector(postFinishLaunch) withObject:nil
/* Set working directory to resource path */
[[NSFileManager defaultManager] changeCurrentDirectoryPath: [[NSBundle mainBundle] resourcePath]];
[self performSelector:@selector(postFinishLaunch) withObject:nil
afterDelay:0.0];
}

- (void)applicationWillTerminate:(UIApplication *)application {

SDL_SendQuit();
/* hack to prevent automatic termination. See SDL_uikitevents.m for details */
longjmp(*(jump_env()), 1);


SDL_SendQuit();
/* hack to prevent automatic termination. See SDL_uikitevents.m for details */
longjmp(*(jump_env()), 1);
}

- (void) applicationWillResignActive:(UIApplication*)application
Expand Down
37 changes: 18 additions & 19 deletions src/video/uikit/SDL_uikitevents.m
Expand Up @@ -32,25 +32,24 @@
void
UIKit_PumpEvents(_THIS)
{
/*
When the user presses the 'home' button on the iPod
the application exits -- immediatly.
Unlike in Mac OS X, it appears there is no way to cancel the termination.
This doesn't give the SDL user's application time to respond to an SDL_Quit event.
So what we do is that in the UIApplicationDelegate class (SDLUIApplicationDelegate),
when the delegate receives the ApplicationWillTerminate message, we execute
a longjmp statement to get back here, preventing an immediate exit.
*/
if (setjmp(*jump_env()) == 0) {
/* if we're setting the jump, rather than jumping back */
SInt32 result;
do {
result = CFRunLoopRunInMode(kCFRunLoopDefaultMode, 0, TRUE);
} while(result == kCFRunLoopRunHandledSource);
}

/*
When the user presses the 'home' button on the iPod
the application exits -- immediatly.
Unlike in Mac OS X, it appears there is no way to cancel the termination.
This doesn't give the SDL user's application time to respond to an SDL_Quit event.
So what we do is that in the UIApplicationDelegate class (SDLUIApplicationDelegate),
when the delegate receives the ApplicationWillTerminate message, we execute
a longjmp statement to get back here, preventing an immediate exit.
*/
if (setjmp(*jump_env()) == 0) {
/* if we're setting the jump, rather than jumping back */
SInt32 result;
do {
result = CFRunLoopRunInMode(kCFRunLoopDefaultMode, 0, TRUE);
} while(result == kCFRunLoopRunHandledSource);
}
}

/* vi: set ts=4 sw=4 expandtab: */
126 changes: 62 additions & 64 deletions src/video/uikit/SDL_uikitopengles.m
Expand Up @@ -35,42 +35,42 @@

void *
UIKit_GL_GetProcAddress(_THIS, const char *proc)
{
/* Look through all SO's for the proc symbol. Here's why:
-Looking for the path to the OpenGL Library seems not to work in the iPhone Simulator.
-We don't know that the path won't change in the future.
*/
{
/* Look through all SO's for the proc symbol. Here's why:
-Looking for the path to the OpenGL Library seems not to work in the iPhone Simulator.
-We don't know that the path won't change in the future.
*/
return SDL_LoadFunction(RTLD_DEFAULT, proc);
}

/*
note that SDL_GL_Delete context makes it current without passing the window
note that SDL_GL_Delete context makes it current without passing the window
*/
int UIKit_GL_MakeCurrent(_THIS, SDL_Window * window, SDL_GLContext context)
{
if (context) {
SDL_WindowData *data = (SDL_WindowData *)window->driverdata;
[data->view setCurrentContext];
}
else {
[EAGLContext setCurrentContext: nil];
}
if (context) {
SDL_WindowData *data = (SDL_WindowData *)window->driverdata;
[data->view setCurrentContext];
}
else {
[EAGLContext setCurrentContext: nil];
}
return 0;
}

int
UIKit_GL_LoadLibrary(_THIS, const char *path)
{
/*
shouldn't be passing a path into this function
why? Because we've already loaded the library
and because the SDK forbids loading an external SO
*/
/*
shouldn't be passing a path into this function
why? Because we've already loaded the library
and because the SDK forbids loading an external SO
*/
if (path != NULL) {
SDL_SetError("iPhone GL Load Library just here for compatibility");
return -1;
SDL_SetError("iPhone GL Load Library just here for compatibility");
return -1;
}
return 0;
}
Expand All @@ -84,65 +84,63 @@ void UIKit_GL_SwapWindow(_THIS, SDL_Window * window)
SDL_UIKit_UpdateBatteryMonitoring();
#endif

SDL_WindowData *data = (SDL_WindowData *)window->driverdata;
if (nil == data->view) {
return;
}
[data->view swapBuffers];
/* since now we've got something to draw
make the window visible */
[data->uiwindow makeKeyAndVisible];

/* we need to let the event cycle run, or the OS won't update the OpenGL view! */
SDL_PumpEvents();
SDL_WindowData *data = (SDL_WindowData *)window->driverdata;
if (nil == data->view) {
return;
}
[data->view swapBuffers];
/* since now we've got something to draw
make the window visible */
[data->uiwindow makeKeyAndVisible];

/* we need to let the event cycle run, or the OS won't update the OpenGL view! */
SDL_PumpEvents();
}

SDL_GLContext UIKit_GL_CreateContext(_THIS, SDL_Window * window)
{
SDL_uikitopenglview *view;
SDL_WindowData *data = (SDL_WindowData *) window->driverdata;
SDL_uikitopenglview *view;
SDL_WindowData *data = (SDL_WindowData *) window->driverdata;
UIScreen *uiscreen = (UIScreen *) window->display->driverdata;
UIWindow *uiwindow = data->uiwindow;
UIWindow *uiwindow = data->uiwindow;

/* construct our view, passing in SDL's OpenGL configuration data */
view = [[SDL_uikitopenglview alloc] initWithFrame: [uiwindow bounds] \
retainBacking: _this->gl_config.retained_backing \
rBits: _this->gl_config.red_size \
gBits: _this->gl_config.green_size \
bBits: _this->gl_config.blue_size \
aBits: _this->gl_config.alpha_size \
depthBits: _this->gl_config.depth_size];
data->view = view;
/* add the view to our window */
[uiwindow addSubview: view ];
/* Don't worry, the window retained the view */
[view release];
if ( UIKit_GL_MakeCurrent(_this, window, view) < 0 ) {
retainBacking: _this->gl_config.retained_backing \
rBits: _this->gl_config.red_size \
gBits: _this->gl_config.green_size \
bBits: _this->gl_config.blue_size \
aBits: _this->gl_config.alpha_size \
depthBits: _this->gl_config.depth_size];
data->view = view;
/* add the view to our window */
[uiwindow addSubview: view ];
/* Don't worry, the window retained the view */
[view release];
if ( UIKit_GL_MakeCurrent(_this, window, view) < 0 ) {
UIKit_GL_DeleteContext(_this, view);
return NULL;
}

/* Make this window the current mouse focus for touch input */
SDL_SetMouseFocus(window);
SDL_SetKeyboardFocus(window);
/* Make this window the current mouse focus for touch input */
SDL_SetMouseFocus(window);
SDL_SetKeyboardFocus(window);

return view;
return view;
}

void UIKit_GL_DeleteContext(_THIS, SDL_GLContext context)
{
/* the delegate has retained the view, this will release him */
SDL_uikitopenglview *view = (SDL_uikitopenglview *)context;
/* this will also delete it */
[view removeFromSuperview];

return;
/* the delegate has retained the view, this will release him */
SDL_uikitopenglview *view = (SDL_uikitopenglview *)context;
/* this will also delete it */
[view removeFromSuperview];
}


32 changes: 16 additions & 16 deletions src/video/uikit/SDL_uikitvideo.m
Expand Up @@ -56,7 +56,7 @@ static int UIKit_SetDisplayMode(_THIS, SDL_VideoDisplay * display,
static int
UIKit_Available(void)
{
return (1);
return (1);
}

static void UIKit_DeleteDevice(SDL_VideoDevice * device)
Expand Down Expand Up @@ -85,22 +85,22 @@ static void UIKit_DeleteDevice(SDL_VideoDevice * device)
device->GetDisplayModes = UIKit_GetDisplayModes;
device->SetDisplayMode = UIKit_SetDisplayMode;
device->PumpEvents = UIKit_PumpEvents;
device->CreateWindow = UIKit_CreateWindow;
device->DestroyWindow = UIKit_DestroyWindow;
device->CreateWindow = UIKit_CreateWindow;
device->DestroyWindow = UIKit_DestroyWindow;
device->GetWindowWMInfo = UIKit_GetWindowWMInfo;
/* OpenGL (ES) functions */
device->GL_MakeCurrent = UIKit_GL_MakeCurrent;
device->GL_SwapWindow = UIKit_GL_SwapWindow;
device->GL_CreateContext = UIKit_GL_CreateContext;
device->GL_DeleteContext = UIKit_GL_DeleteContext;
device->GL_GetProcAddress = UIKit_GL_GetProcAddress;
device->GL_LoadLibrary = UIKit_GL_LoadLibrary;
device->free = UIKit_DeleteDevice;

device->gl_config.accelerated = 1;
/* OpenGL (ES) functions */
device->GL_MakeCurrent = UIKit_GL_MakeCurrent;
device->GL_SwapWindow = UIKit_GL_SwapWindow;
device->GL_CreateContext = UIKit_GL_CreateContext;
device->GL_DeleteContext = UIKit_GL_DeleteContext;
device->GL_GetProcAddress = UIKit_GL_GetProcAddress;
device->GL_LoadLibrary = UIKit_GL_LoadLibrary;
device->free = UIKit_DeleteDevice;

device->gl_config.accelerated = 1;

return device;
}

Expand Down

0 comments on commit 4d10d3b

Please sign in to comment.