Menu/Set Resolution: highlight default mode

- Default mode text appears in orange
- Draw star next to default mode in list
This commit is contained in:
James R 2024-01-10 00:33:41 -08:00
parent 369de749c4
commit cdd9b182e8

View file

@ -4999,11 +4999,20 @@ void M_DrawVideoModes(void)
col = currentMenu->y + 14; col = currentMenu->y + 14;
for (i = 0; i < optionsmenu.vidm_nummodes; i++) for (i = 0; i < optionsmenu.vidm_nummodes; i++)
{ {
INT32 colorflag = 0;
boolean isdefault = !strcmp(optionsmenu.modedescs[i].desc, va("%dx%d", cv_scr_width.value, cv_scr_height.value));
if (i == optionsmenu.vidm_selected) if (i == optionsmenu.vidm_selected)
V_DrawMenuString(row, col, highlightflags, optionsmenu.modedescs[i].desc); colorflag = highlightflags;
// Show multiples of 320x200 as green. else if (isdefault)
else colorflag = V_ORANGEMAP;
V_DrawMenuString(row, col, (optionsmenu.modedescs[i].goodratio) ? recommendedflags : 0, optionsmenu.modedescs[i].desc); else if (optionsmenu.modedescs[i].goodratio)
colorflag = recommendedflags; // Show multiples of 320x200 as green.
if (isdefault)
V_DrawScaledPatch(row + 2 + V_MenuStringWidth(optionsmenu.modedescs[i].desc, colorflag), col - 2, 0, W_CachePatchName("RHFAV", PU_CACHE));
V_DrawMenuString(row, col, colorflag, optionsmenu.modedescs[i].desc);
col += 9; col += 9;
if ((i % optionsmenu.vidm_column_size) == (optionsmenu.vidm_column_size-1)) if ((i % optionsmenu.vidm_column_size) == (optionsmenu.vidm_column_size-1))
@ -5036,8 +5045,7 @@ void M_DrawVideoModes(void)
(SCR_IsAspectCorrect(vid.width, vid.height)) ? 0x83 : 0x80, (SCR_IsAspectCorrect(vid.width, vid.height)) ? 0x83 : 0x80,
vid.width, vid.height)); vid.width, vid.height));
M_CentreText(t, currentMenu->y + 75+9, M_CentreText(t, currentMenu->y + 75+9,
va("Default mode is %c%dx%d", va("\x87" "Default mode is %dx%d",
(SCR_IsAspectCorrect(cv_scr_width.value, cv_scr_height.value)) ? 0x83 : 0x80,
cv_scr_width.value, cv_scr_height.value)); cv_scr_width.value, cv_scr_height.value));