Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Date: Thu, 24 Jul 2003 01:40:17 +0200
From: Andrew Straw
Subject: Patch: Mac OS X window position environment variable
  • Loading branch information
slouken committed Jul 23, 2003
1 parent 9316bc9 commit 24055c0
Showing 1 changed file with 22 additions and 1 deletion.
23 changes: 22 additions & 1 deletion src/video/quartz/SDL_QuartzVideo.m
Expand Up @@ -253,6 +253,17 @@ static int QZ_VideoInit (_THIS, SDL_PixelFormat *video_format) {
return client_mode_list;
}

static SDL_bool QZ_WindowPosition(_THIS, int *x, int *y)
{
const char *window = getenv("SDL_VIDEO_WINDOW_POS");
if ( window ) {
if ( sscanf(window, "%d,%d", x, y) == 2 ) {
return SDL_TRUE;
}
}
return SDL_FALSE;
}

/*
Gamma functions to try to hide the flash from a rez switch
Fade the display from normal to black
Expand Down Expand Up @@ -569,6 +580,8 @@ other blitting while waiting on the VBL (and hence results in higher framerates)
int height, int bpp, Uint32 flags) {
unsigned int style;
NSRect contentRect;
int center_window = 1;
int origin_x, origin_y;

current->flags = 0;
current->w = width;
Expand Down Expand Up @@ -606,6 +619,12 @@ other blitting while waiting on the VBL (and hence results in higher framerates)
}
}

if ( QZ_WindowPosition(this, &origin_x, &origin_y) ) {
center_window = 0;
contentRect.origin.x = (float)origin_x;
contentRect.origin.y = (float)origin_y;
}

/* Manually create a window, avoids having a nib file resource */
qz_window = [ [ SDL_QuartzWindow alloc ]
initWithContentRect:contentRect
Expand All @@ -622,7 +641,9 @@ other blitting while waiting on the VBL (and hence results in higher framerates)
QZ_SetCaption(this, this->wm_title, this->wm_icon);
[ qz_window setAcceptsMouseMovedEvents:YES ];
[ qz_window setViewsNeedDisplay:NO ];
[ qz_window center ];
if ( center_window ) {
[ qz_window center ];
}
[ qz_window setDelegate:
[ [ [ SDL_QuartzWindowDelegate alloc ] init ] autorelease ] ];
}
Expand Down

0 comments on commit 24055c0

Please sign in to comment.