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: {
GfxClearSpriteCache(); int8 new_zoom = index > 0 ? ZOOM_LVL_OUT_4X - index + 1 : ZOOM_LVL_CFG_AUTO;
_gui_zoom_cfg = index > 0 ? ZOOM_LVL_OUT_4X - index + 1 : ZOOM_LVL_CFG_AUTO; if (new_zoom != _gui_zoom_cfg) {
UpdateGUIZoom(); GfxClearSpriteCache();
UpdateCursorSize(); _gui_zoom_cfg = new_zoom;
UpdateAllVirtCoords(); UpdateGUIZoom();
FixTitleGameZoom(); UpdateCursorSize();
ReInitAllWindows(); UpdateAllVirtCoords();
FixTitleGameZoom();
ReInitAllWindows();
}
break; break;
}
case WID_GO_FONT_ZOOM_DROPDOWN: case WID_GO_FONT_ZOOM_DROPDOWN: {
GfxClearSpriteCache(); int8 new_zoom = index > 0 ? ZOOM_LVL_OUT_4X - index + 1 : ZOOM_LVL_CFG_AUTO;
_font_zoom_cfg = index > 0 ? ZOOM_LVL_OUT_4X - index + 1 : ZOOM_LVL_CFG_AUTO; if (new_zoom != _font_zoom_cfg) {
UpdateGUIZoom(); GfxClearSpriteCache();
ClearFontCache(); _font_zoom_cfg = new_zoom;
LoadStringWidthTable(); UpdateGUIZoom();
UpdateAllVirtCoords(); ClearFontCache();
LoadStringWidthTable();
UpdateAllVirtCoords();
}
break; break;
}
case WID_GO_BASE_GRF_DROPDOWN: case WID_GO_BASE_GRF_DROPDOWN:
this->SetMediaSet<BaseGraphics>(index); this->SetMediaSet<BaseGraphics>(index);