mirror of
https://github.com/ZDoom/Raze.git
synced 2024-11-16 01:11:44 +00:00
Support "r_windowpositioning" in SDL builds.
git-svn-id: https://svn.eduke32.com/eduke32@4327 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
70caa24f24
commit
faa8133cda
5 changed files with 14 additions and 23 deletions
|
@ -421,6 +421,7 @@ int32_t baselayer_init(void)
|
|||
#ifdef YAX_ENABLE
|
||||
{ "r_tror_nomaskpass", "enable/disable additional pass in TROR software rendering", (void *)&r_tror_nomaskpass, CVAR_BOOL, 0, 1 },
|
||||
#endif
|
||||
{ "r_windowpositioning", "enable/disable window position memory", (void *) &windowpos, CVAR_BOOL, 0, 1 },
|
||||
{ "vid_gamma","adjusts gamma component of gamma ramp",(void *) &vid_gamma, CVAR_DOUBLE|CVAR_FUNCPTR, 0, 10 },
|
||||
{ "vid_contrast","adjusts contrast component of gamma ramp",(void *) &vid_contrast, CVAR_DOUBLE|CVAR_FUNCPTR, 0, 10 },
|
||||
{ "vid_brightness","adjusts brightness component of gamma ramp",(void *) &vid_brightness, CVAR_DOUBLE|CVAR_FUNCPTR, 0, 10 },
|
||||
|
|
|
@ -247,13 +247,11 @@ int32_t loadsetup(const char *fn)
|
|||
if (readconfig(fp, "keychat", val, VL) > 0) keys[18] = Bstrtol(val, NULL, 16);
|
||||
#endif
|
||||
|
||||
#ifdef RENDERTYPEWIN
|
||||
if (readconfig(fp, "windowpositioning", val, VL) > 0) windowpos = atoi_safe(val);
|
||||
windowx = -1;
|
||||
if (readconfig(fp, "windowposx", val, VL) > 0) windowx = atoi_safe(val);
|
||||
windowy = -1;
|
||||
if (readconfig(fp, "windowposy", val, VL) > 0) windowy = atoi_safe(val);
|
||||
#endif
|
||||
|
||||
if (readconfig(fp, "keyconsole", val, VL) > 0) { keys[19] = Bstrtol(val, NULL, 16); OSD_CaptureKey(keys[19]); }
|
||||
|
||||
|
@ -427,12 +425,12 @@ int32_t writesetup(const char *fn)
|
|||
"; Maximum OpenGL mode refresh rate (Windows only, in Hertz)\n"
|
||||
"maxrefreshfreq = %d\n"
|
||||
"\n"
|
||||
#endif
|
||||
"; Window positioning, 0 = center, 1 = memory\n"
|
||||
"windowpositioning = %d\n"
|
||||
"windowposx = %d\n"
|
||||
"windowposy = %d\n"
|
||||
"\n"
|
||||
#endif
|
||||
"; 3D mode brightness setting\n"
|
||||
"vid_gamma = %g\n"
|
||||
"vid_brightness = %g\n"
|
||||
|
@ -610,8 +608,9 @@ int32_t writesetup(const char *fn)
|
|||
#ifndef RENDERTYPEWIN
|
||||
r_screenxy,
|
||||
#else
|
||||
maxrefreshfreq, windowpos, windowx, windowy,
|
||||
maxrefreshfreq,
|
||||
#endif
|
||||
windowpos, windowx, windowy,
|
||||
vid_gamma_3d>=0?vid_gamma_3d:vid_gamma,
|
||||
vid_brightness_3d>=0?vid_brightness_3d:vid_brightness,
|
||||
vid_contrast_3d>=0?vid_contrast_3d:vid_contrast,
|
||||
|
|
|
@ -1434,7 +1434,7 @@ int32_t setvideomode(int32_t x, int32_t y, int32_t c, int32_t fs)
|
|||
return -1;
|
||||
}
|
||||
# else
|
||||
sdl_window = SDL_CreateWindow("", SDL_WINDOWPOS_UNDEFINED,SDL_WINDOWPOS_UNDEFINED,
|
||||
sdl_window = SDL_CreateWindow("", windowpos ? windowx : SDL_WINDOWPOS_CENTERED ,windowpos ? windowy : SDL_WINDOWPOS_CENTERED,
|
||||
x,y, ((fs&1)?SDL_WINDOW_FULLSCREEN:0) | SDL_WINDOW_OPENGL);
|
||||
if (!sdl_window)
|
||||
{
|
||||
|
@ -2236,6 +2236,13 @@ int32_t handleevents(void)
|
|||
SetPriorityClass(GetCurrentProcess(), IDLE_PRIORITY_CLASS);
|
||||
# endif
|
||||
break;
|
||||
case SDL_WINDOWEVENT_MOVED:
|
||||
if (windowpos)
|
||||
{
|
||||
windowx = ev.window.data1;
|
||||
windowy = ev.window.data2;
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
// #warning Using SDL 1.3 or 2.X
|
||||
|
|
|
@ -488,21 +488,6 @@ static int32_t set_maxrefreshfreq(const osdfuncparm_t *parm)
|
|||
return OSDCMD_OK;
|
||||
}
|
||||
|
||||
static int32_t set_windowpos(const osdfuncparm_t *parm)
|
||||
{
|
||||
if (parm->numparms == 0)
|
||||
{
|
||||
OSD_Printf("\"r_windowpositioning\" is \"%d\"\n",windowpos);
|
||||
return OSDCMD_OK;
|
||||
}
|
||||
if (parm->numparms != 1) return OSDCMD_SHOWHELP;
|
||||
|
||||
windowpos = Batol(parm->parms[0])>0;
|
||||
OSD_Printf("r_windowpositioning %d\n",windowpos);
|
||||
|
||||
return OSDCMD_OK;
|
||||
}
|
||||
|
||||
//
|
||||
// initsystem() -- init systems
|
||||
//
|
||||
|
@ -585,7 +570,6 @@ int32_t initsystem(void)
|
|||
initprintf("DirectDraw initialization failed. Fullscreen modes will be unavailable.\n");
|
||||
|
||||
OSD_RegisterFunction("maxrefreshfreq", "maxrefreshfreq: maximum display frequency to set for OpenGL Polymost modes (0=no maximum)", set_maxrefreshfreq);
|
||||
OSD_RegisterFunction("r_windowpositioning", "r_windowpositioning: enable/disable window position memory", set_windowpos);
|
||||
|
||||
// See if we're on an ATI card...
|
||||
determine_ATI();
|
||||
|
|
|
@ -639,13 +639,13 @@ int32_t CONFIG_ReadSetup(void)
|
|||
SCRIPT_GetNumber(ud.config.scripthandle, "Screen Setup", "ScreenMode",&ud.config.ScreenMode);
|
||||
SCRIPT_GetNumber(ud.config.scripthandle, "Screen Setup", "ScreenWidth",&ud.config.ScreenWidth);
|
||||
|
||||
#ifdef RENDERTYPEWIN
|
||||
SCRIPT_GetNumber(ud.config.scripthandle, "Screen Setup", "WindowPositioning", (int32_t *)&windowpos);
|
||||
windowx = -1;
|
||||
SCRIPT_GetNumber(ud.config.scripthandle, "Screen Setup", "WindowPosX", (int32_t *)&windowx);
|
||||
windowy = -1;
|
||||
SCRIPT_GetNumber(ud.config.scripthandle, "Screen Setup", "WindowPosY", (int32_t *)&windowy);
|
||||
|
||||
#ifdef RENDERTYPEWIN
|
||||
SCRIPT_GetNumber(ud.config.scripthandle, "Screen Setup", "MaxRefreshFreq", (int32_t *)&maxrefreshfreq);
|
||||
#endif
|
||||
|
||||
|
@ -814,10 +814,10 @@ void CONFIG_WriteSetup(uint32_t flags)
|
|||
return;
|
||||
}
|
||||
|
||||
#ifdef RENDERTYPEWIN
|
||||
SCRIPT_PutNumber(ud.config.scripthandle, "Screen Setup", "WindowPositioning", windowpos, FALSE, FALSE);
|
||||
SCRIPT_PutNumber(ud.config.scripthandle, "Screen Setup", "WindowPosX", windowx, FALSE, FALSE);
|
||||
SCRIPT_PutNumber(ud.config.scripthandle, "Screen Setup", "WindowPosY", windowy, FALSE, FALSE);
|
||||
#ifdef RENDERTYPEWIN
|
||||
SCRIPT_PutNumber(ud.config.scripthandle, "Screen Setup", "MaxRefreshFreq", maxrefreshfreq, FALSE, FALSE);
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Reference in a new issue