Mercurial > sdl-ios-xcode
comparison test/testnativecocoa.m @ 3057:089a77aebb7d
Added test program for SDL_CreateWindowFrom()
Make sure OpenGL library is loaded before working with OpenGL windows,
even those created with SDL_CreateWindowFrom()
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Mon, 09 Feb 2009 05:32:12 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
3056:a434fe6360df | 3057:089a77aebb7d |
---|---|
1 | |
2 #include "testnative.h" | |
3 | |
4 #ifdef TEST_NATIVE_COCOA | |
5 | |
6 #include <Cocoa/Cocoa.h> | |
7 | |
8 static void *CreateWindowCocoa(int w, int h); | |
9 static void DestroyWindowCocoa(void *window); | |
10 | |
11 NativeWindowFactory CocoaWindowFactory = { | |
12 "cocoa", | |
13 CreateWindowCocoa, | |
14 DestroyWindowCocoa | |
15 }; | |
16 | |
17 static void *CreateWindowCocoa(int w, int h) | |
18 { | |
19 NSAutoreleasePool *pool; | |
20 NSWindow *nswindow; | |
21 NSRect rect; | |
22 unsigned int style; | |
23 | |
24 pool = [[NSAutoreleasePool alloc] init]; | |
25 | |
26 rect.origin.x = 0; | |
27 rect.origin.y = 0; | |
28 rect.size.width = w; | |
29 rect.size.height = h; | |
30 rect.origin.y = CGDisplayPixelsHigh(kCGDirectMainDisplay) - rect.origin.y - rect.size.height; | |
31 | |
32 style = (NSTitledWindowMask|NSClosableWindowMask|NSMiniaturizableWindowMask); | |
33 | |
34 nswindow = [[NSWindow alloc] initWithContentRect:rect styleMask:style backing:NSBackingStoreBuffered defer:FALSE]; | |
35 [nswindow makeKeyAndOrderFront:nil]; | |
36 | |
37 [pool release]; | |
38 | |
39 return nswindow; | |
40 } | |
41 | |
42 static void DestroyWindowCocoa(void *window) | |
43 { | |
44 NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; | |
45 NSWindow *nswindow = (NSWindow *)window; | |
46 | |
47 [nswindow close]; | |
48 [pool release]; | |
49 } | |
50 | |
51 #endif |