mirror of https://github.com/OpenTTD/OpenTTD
(svn r22499) -Fix: don't lower the arrow buttons in the newgrf/AI parameter windows if they're clicked when disabled
parent
56902191e4
commit
ffdfa5a213
|
@ -390,6 +390,7 @@ struct AISettingsWindow : public Window {
|
|||
/* One of the arrows is clicked (or green/red rect in case of bool value) */
|
||||
if (IsInsideMM(x, 0, 21)) {
|
||||
int new_val = this->ai_config->GetSetting(config_item.name);
|
||||
int old_val = new_val;
|
||||
if (bool_item) {
|
||||
new_val = !new_val;
|
||||
} else if (x >= 10) {
|
||||
|
@ -404,19 +405,21 @@ struct AISettingsWindow : public Window {
|
|||
this->clicked_increase = false;
|
||||
}
|
||||
|
||||
this->ai_config->SetSetting(config_item.name, new_val);
|
||||
this->clicked_button = num;
|
||||
this->timeout = 5;
|
||||
if (new_val != old_val) {
|
||||
this->ai_config->SetSetting(config_item.name, new_val);
|
||||
this->clicked_button = num;
|
||||
this->timeout = 5;
|
||||
|
||||
this->CheckDifficultyLevel();
|
||||
this->CheckDifficultyLevel();
|
||||
|
||||
this->SetDirty();
|
||||
}
|
||||
} else if (!bool_item) {
|
||||
/* Display a query box so users can enter a custom value. */
|
||||
this->clicked_row = num;
|
||||
SetDParam(0, this->ai_config->GetSetting(config_item.name));
|
||||
ShowQueryString(STR_JUST_INT, STR_CONFIG_SETTING_QUERY_CAPTION, 10, this, CS_NUMERAL, QSF_NONE);
|
||||
}
|
||||
|
||||
this->SetDirty();
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
@ -325,6 +325,7 @@ struct NewGRFParametersWindow : public Window {
|
|||
/* One of the arrows is clicked */
|
||||
if (IsInsideMM(x, 0, 21)) {
|
||||
uint32 val = par_info->GetValue(this->grf_config);
|
||||
uint32 old_val = val;
|
||||
if (par_info->type == PTYPE_BOOL) {
|
||||
val = !val;
|
||||
} else {
|
||||
|
@ -338,17 +339,18 @@ struct NewGRFParametersWindow : public Window {
|
|||
this->clicked_increase = false;
|
||||
}
|
||||
}
|
||||
par_info->SetValue(this->grf_config, val);
|
||||
if (val != old_val) {
|
||||
par_info->SetValue(this->grf_config, val);
|
||||
|
||||
this->clicked_button = num;
|
||||
this->timeout = 5;
|
||||
this->clicked_button = num;
|
||||
this->timeout = 5;
|
||||
this->SetDirty();
|
||||
}
|
||||
} else if (par_info->type == PTYPE_UINT_ENUM && click_count >= 2) {
|
||||
/* Display a query box so users can enter a custom value. */
|
||||
SetDParam(0, this->grf_config->param[num]);
|
||||
ShowQueryString(STR_JUST_INT, STR_CONFIG_SETTING_QUERY_CAPTION, 10, this, CS_NUMERAL, QSF_NONE);
|
||||
}
|
||||
|
||||
this->SetDirty();
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue