comparison src/video/cocoa/SDL_cocoawindow.m @ 1951:7177581dc9fa

Initial work on X11 window code in.
author Sam Lantinga <slouken@libsdl.org>
date Thu, 27 Jul 2006 06:53:23 +0000
parents 05e88d266921
children 420716272158
comparison
equal deleted inserted replaced
1950:a344e42bce3b 1951:7177581dc9fa
240 } 240 }
241 241
242 @end 242 @end
243 243
244 static int 244 static int
245 SetupWindowData(SDL_Window * window, NSWindow *nswindow, BOOL created) 245 SetupWindowData(_THIS, SDL_Window * window, NSWindow *nswindow, SDL_bool created)
246 { 246 {
247 NSAutoreleasePool *pool; 247 NSAutoreleasePool *pool;
248 SDL_VideoData *videodata = (SDL_VideoData *) _this->driverdata;
248 SDL_WindowData *data; 249 SDL_WindowData *data;
249 250
250 /* Allocate the window data */ 251 /* Allocate the window data */
251 data = (SDL_WindowData *) SDL_malloc(sizeof(*data)); 252 data = (SDL_WindowData *) SDL_malloc(sizeof(*data));
252 if (!data) { 253 if (!data) {
254 return -1; 255 return -1;
255 } 256 }
256 data->windowID = window->id; 257 data->windowID = window->id;
257 data->window = nswindow; 258 data->window = nswindow;
258 data->created = created; 259 data->created = created;
259 data->videodata = (SDL_VideoData *) SDL_GetVideoDevice()->driverdata; 260 data->videodata = videodata;
260 261
261 pool = [[NSAutoreleasePool alloc] init]; 262 pool = [[NSAutoreleasePool alloc] init];
262 263
263 /* Create an event listener for the window */ 264 /* Create an event listener for the window */
264 data->listener = [[Cocoa_WindowListener alloc] init]; 265 data->listener = [[Cocoa_WindowListener alloc] init];
378 [title release]; 379 [title release];
379 } 380 }
380 381
381 [pool release]; 382 [pool release];
382 383
383 if (SetupWindowData(window, nswindow, YES) < 0) { 384 if (SetupWindowData(_this, window, nswindow, SDL_TRUE) < 0) {
384 [nswindow release]; 385 [nswindow release];
385 return -1; 386 return -1;
386 } 387 }
387 #ifdef SDL_VIDEO_OPENGL 388 #ifdef SDL_VIDEO_OPENGL
388 if (window->flags & SDL_WINDOW_OPENGL) { 389 if (window->flags & SDL_WINDOW_OPENGL) {
411 window->title = SDL_strdup([title UTF8String]); 412 window->title = SDL_strdup([title UTF8String]);
412 } 413 }
413 414
414 [pool release]; 415 [pool release];
415 416
416 return SetupWindowData(window, nswindow, NO); 417 return SetupWindowData(_this, window, nswindow, SDL_FALSE);
417 } 418 }
418 419
419 void 420 void
420 Cocoa_SetWindowTitle(_THIS, SDL_Window * window) 421 Cocoa_SetWindowTitle(_THIS, SDL_Window * window)
421 { 422 {