SDL 2.0
testnativecocoa.m
Go to the documentation of this file.
1
2#include "testnative.h"
3
4#ifdef TEST_NATIVE_COCOA
5
6#include <Cocoa/Cocoa.h>
7
8static void *CreateWindowCocoa(int w, int h);
9static void DestroyWindowCocoa(void *window);
10
11NativeWindowFactory CocoaWindowFactory = {
12 "cocoa",
13 CreateWindowCocoa,
14 DestroyWindowCocoa
15};
16
17static 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
42static 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
GLint GLint GLint GLint GLint GLint y
Definition: SDL_opengl.h:1574
GLint GLint GLsizei GLsizei height
Definition: SDL_opengl.h:1572
GLsizeiptr size
GLfloat GLfloat GLfloat GLfloat h
GLubyte GLubyte GLubyte GLubyte w
EGLSurface EGLNativeWindowType * window
Definition: eglext.h:1025
int y
Definition: SDL_rect.h:79
int x
Definition: SDL_rect.h:79
SDL_Rect rect
Definition: testrelative.c:27