Mercurial > sdl-ios-xcode
view test/testnativecocoa.m @ 4479:223ab94286a3
Split out the Visual C++ 2005 and 2008 projects explicitly.
Added the test programs to the Visual C++ 2008 project.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Mon, 05 Jul 2010 17:10:34 -0700 |
parents | 089a77aebb7d |
children |
line wrap: on
line source
#include "testnative.h" #ifdef TEST_NATIVE_COCOA #include <Cocoa/Cocoa.h> static void *CreateWindowCocoa(int w, int h); static void DestroyWindowCocoa(void *window); NativeWindowFactory CocoaWindowFactory = { "cocoa", CreateWindowCocoa, DestroyWindowCocoa }; static void *CreateWindowCocoa(int w, int h) { NSAutoreleasePool *pool; NSWindow *nswindow; NSRect rect; unsigned int style; pool = [[NSAutoreleasePool alloc] init]; rect.origin.x = 0; rect.origin.y = 0; rect.size.width = w; rect.size.height = h; rect.origin.y = CGDisplayPixelsHigh(kCGDirectMainDisplay) - rect.origin.y - rect.size.height; style = (NSTitledWindowMask|NSClosableWindowMask|NSMiniaturizableWindowMask); nswindow = [[NSWindow alloc] initWithContentRect:rect styleMask:style backing:NSBackingStoreBuffered defer:FALSE]; [nswindow makeKeyAndOrderFront:nil]; [pool release]; return nswindow; } static void DestroyWindowCocoa(void *window) { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; NSWindow *nswindow = (NSWindow *)window; [nswindow close]; [pool release]; } #endif