From: Toni Wilen Date: Sun, 8 Mar 2026 18:35:04 +0000 (+0200) Subject: Disable GUI centering options if overscan+ or larger X-Git-Url: https://git.unchartedbackwaters.co.uk/w/?a=commitdiff_plain;h=e129578d07b4e28ba12bff722d2a5ffaf7a81fb8;p=francis%2Fwinuae.git Disable GUI centering options if overscan+ or larger --- diff --git a/od-win32/win32gui.cpp b/od-win32/win32gui.cpp index 4aa182e5..cd995beb 100644 --- a/od-win32/win32gui.cpp +++ b/od-win32/win32gui.cpp @@ -8147,8 +8147,8 @@ static void enable_for_displaydlg (HWND hDlg) #endif ew(hDlg, IDC_SCREENMODE_RTG, rtg); ew(hDlg, IDC_SCREENMODE_RTG2, rtg); - ew(hDlg, IDC_XCENTER, TRUE); - ew(hDlg, IDC_YCENTER, TRUE); + ew(hDlg, IDC_XCENTER, workprefs.gfx_overscanmode <= OVERSCANMODE_OVERSCAN); + ew(hDlg, IDC_YCENTER, workprefs.gfx_overscanmode <= OVERSCANMODE_OVERSCAN); ew(hDlg, IDC_FRAMERATE, !workprefs.cpu_memory_cycle_exact); ew(hDlg, IDC_LORES, !workprefs.gfx_autoresolution); ew(hDlg, IDC_OVERSCANMODE, TRUE); @@ -8710,8 +8710,8 @@ static void values_to_displaydlg (HWND hDlg) CheckDlgButton(hDlg, IDC_GRAYSCALE, workprefs.gfx_grayscale); CheckDlgButton(hDlg, IDC_RESYNCBLANK, workprefs.gfx_monitorblankdelay > 0); - CheckDlgButton (hDlg, IDC_XCENTER, workprefs.gfx_xcenter); - CheckDlgButton (hDlg, IDC_YCENTER, workprefs.gfx_ycenter); + CheckDlgButton (hDlg, IDC_XCENTER, workprefs.gfx_overscanmode <= OVERSCANMODE_OVERSCAN ? workprefs.gfx_xcenter : FALSE); + CheckDlgButton (hDlg, IDC_YCENTER, workprefs.gfx_overscanmode <= OVERSCANMODE_OVERSCAN ? workprefs.gfx_ycenter : FALSE); xSendDlgItemMessage(hDlg, IDC_DISPLAY_BUFFERCNT, CB_RESETCONTENT, 0, 0); #if 0 @@ -8971,8 +8971,10 @@ static void values_from_displaydlg (HWND hDlg, UINT msg, WPARAM wParam, LPARAM l xSendDlgItemMessage (hDlg, IDC_FRAMERATE2, TBM_SETPOS, TRUE, (LPARAM)cr->rate); } - workprefs.gfx_xcenter = ischecked (hDlg, IDC_XCENTER) ? 2 : 0; /* Smart centering */ - workprefs.gfx_ycenter = ischecked (hDlg, IDC_YCENTER) ? 2 : 0; /* Smart centering */ + if (workprefs.gfx_overscanmode <= OVERSCANMODE_OVERSCAN) { + workprefs.gfx_xcenter = ischecked (hDlg, IDC_XCENTER) ? 2 : 0; /* Smart centering */ + workprefs.gfx_ycenter = ischecked (hDlg, IDC_YCENTER) ? 2 : 0; /* Smart centering */ + } workprefs.gfx_variable_sync = ischecked(hDlg, IDC_DISPLAY_VARSYNC) ? 1 : 0; workprefs.gfx_windowed_resize = ischecked(hDlg, IDC_DISPLAY_RESIZE);