1
0
Fork 0

Codechange: Re-init GUI zoom only when really changed.

pull/8556/head
Michael Lutz 2021-02-13 19:24:11 +01:00
parent 22f5aeab07
commit 33099355b8
1 changed files with 23 additions and 15 deletions

View File

@ -538,24 +538,32 @@ struct GameOptionsWindow : Window {
} }
break; break;
case WID_GO_GUI_ZOOM_DROPDOWN: case WID_GO_GUI_ZOOM_DROPDOWN: {
int8 new_zoom = index > 0 ? ZOOM_LVL_OUT_4X - index + 1 : ZOOM_LVL_CFG_AUTO;
if (new_zoom != _gui_zoom_cfg) {
GfxClearSpriteCache(); GfxClearSpriteCache();
_gui_zoom_cfg = index > 0 ? ZOOM_LVL_OUT_4X - index + 1 : ZOOM_LVL_CFG_AUTO; _gui_zoom_cfg = new_zoom;
UpdateGUIZoom(); UpdateGUIZoom();
UpdateCursorSize(); UpdateCursorSize();
UpdateAllVirtCoords(); UpdateAllVirtCoords();
FixTitleGameZoom(); FixTitleGameZoom();
ReInitAllWindows(); ReInitAllWindows();
}
break; break;
}
case WID_GO_FONT_ZOOM_DROPDOWN: case WID_GO_FONT_ZOOM_DROPDOWN: {
int8 new_zoom = index > 0 ? ZOOM_LVL_OUT_4X - index + 1 : ZOOM_LVL_CFG_AUTO;
if (new_zoom != _font_zoom_cfg) {
GfxClearSpriteCache(); GfxClearSpriteCache();
_font_zoom_cfg = index > 0 ? ZOOM_LVL_OUT_4X - index + 1 : ZOOM_LVL_CFG_AUTO; _font_zoom_cfg = new_zoom;
UpdateGUIZoom(); UpdateGUIZoom();
ClearFontCache(); ClearFontCache();
LoadStringWidthTable(); LoadStringWidthTable();
UpdateAllVirtCoords(); UpdateAllVirtCoords();
}
break; break;
}
case WID_GO_BASE_GRF_DROPDOWN: case WID_GO_BASE_GRF_DROPDOWN:
this->SetMediaSet<BaseGraphics>(index); this->SetMediaSet<BaseGraphics>(index);