|
@@ -1741,16 +1741,26 @@ struct GameSettingsWindow : Window {
|
|
|
resize->height = SETTING_HEIGHT = max(11, FONT_HEIGHT_NORMAL + 1);
|
|
|
resize->width = 1;
|
|
|
|
|
|
size->height = 5 * resize->height + SETTINGTREE_TOP_OFFSET + SETTINGTREE_BOTTOM_OFFSET;
|
|
|
break;
|
|
|
|
|
|
case WID_GS_HELP_TEXT:
|
|
|
size->height = FONT_HEIGHT_NORMAL + WD_PAR_VSEP_NORMAL +
|
|
|
case WID_GS_HELP_TEXT: {
|
|
|
static const StringID setting_types[] = {
|
|
|
STR_CONFIG_SETTING_TYPE_CLIENT,
|
|
|
STR_CONFIG_SETTING_TYPE_COMPANY_MENU, STR_CONFIG_SETTING_TYPE_COMPANY_INGAME,
|
|
|
STR_CONFIG_SETTING_TYPE_GAME_MENU, STR_CONFIG_SETTING_TYPE_GAME_INGAME,
|
|
|
};
|
|
|
for (uint i = 0; i < lengthof(setting_types); i++) {
|
|
|
SetDParam(0, setting_types[i]);
|
|
|
size->width = max(size->width, GetStringBoundingBox(STR_CONFIG_SETTING_TYPE).width);
|
|
|
}
|
|
|
size->height = 2 * FONT_HEIGHT_NORMAL + WD_PAR_VSEP_NORMAL +
|
|
|
max(size->height, _settings_main_page.GetMaxHelpHeight(size->width));
|
|
|
break;
|
|
|
}
|
|
|
|
|
|
default:
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -1773,16 +1783,26 @@ struct GameSettingsWindow : Window {
|
|
|
this->vscroll->GetPosition(), this->vscroll->GetPosition() + this->vscroll->GetCapacity(), this->last_clicked);
|
|
|
break;
|
|
|
|
|
|
case WID_GS_HELP_TEXT:
|
|
|
if (this->last_clicked != NULL) {
|
|
|
const SettingDesc *sd = this->last_clicked->d.entry.setting;
|
|
|
|
|
|
int y = r.top;
|
|
|
if (sd->desc.flags & SGF_PER_COMPANY) {
|
|
|
SetDParam(0, _game_mode == GM_MENU ? STR_CONFIG_SETTING_TYPE_COMPANY_MENU : STR_CONFIG_SETTING_TYPE_COMPANY_INGAME);
|
|
|
} else if (sd->save.conv & SLF_NOT_IN_SAVE) {
|
|
|
SetDParam(0, STR_CONFIG_SETTING_TYPE_CLIENT);
|
|
|
} else {
|
|
|
SetDParam(0, _game_mode == GM_MENU ? STR_CONFIG_SETTING_TYPE_GAME_MENU : STR_CONFIG_SETTING_TYPE_GAME_INGAME);
|
|
|
}
|
|
|
DrawString(r.left, r.right, y, STR_CONFIG_SETTING_TYPE);
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
|
int32 default_value = ReadValue(&sd->desc.def, sd->save.conv);
|
|
|
this->last_clicked->SetValueDParams(0, default_value);
|
|
|
|
|
|
int y = r.top;
|
|
|
DrawString(r.left, r.right, y, STR_CONFIG_SETTING_DEFAULT_VALUE);
|
|
|
y += FONT_HEIGHT_NORMAL + WD_PAR_VSEP_NORMAL;
|
|
|
|
|
|
DrawStringMultiLine(r.left, r.right, y, r.bottom, this->last_clicked->GetHelpText(), TC_WHITE);
|
|
|
}
|
|
|
break;
|