mirror of https://github.com/OpenTTD/OpenTTD
(svn r24313) -Fix: Some obiwans wrt. clicking on setting buttons.
parent
e240f660f0
commit
65f51240cd
|
@ -435,7 +435,7 @@ struct AISettingsWindow : public Window {
|
||||||
bool bool_item = (config_item.flags & SCRIPTCONFIG_BOOLEAN) != 0;
|
bool bool_item = (config_item.flags & SCRIPTCONFIG_BOOLEAN) != 0;
|
||||||
|
|
||||||
int x = pt.x - wid->pos_x;
|
int x = pt.x - wid->pos_x;
|
||||||
if (_current_text_dir == TD_RTL) x = wid->current_x - x;
|
if (_current_text_dir == TD_RTL) x = wid->current_x - 1 - x;
|
||||||
x -= 4;
|
x -= 4;
|
||||||
/* One of the arrows is clicked (or green/red rect in case of bool value) */
|
/* One of the arrows is clicked (or green/red rect in case of bool value) */
|
||||||
if (IsInsideMM(x, 0, SETTING_BUTTON_WIDTH)) {
|
if (IsInsideMM(x, 0, SETTING_BUTTON_WIDTH)) {
|
||||||
|
|
|
@ -321,7 +321,7 @@ struct NewGRFParametersWindow : public Window {
|
||||||
|
|
||||||
const NWidgetBase *wid = this->GetWidget<NWidgetBase>(WID_NP_BACKGROUND);
|
const NWidgetBase *wid = this->GetWidget<NWidgetBase>(WID_NP_BACKGROUND);
|
||||||
int x = pt.x - wid->pos_x;
|
int x = pt.x - wid->pos_x;
|
||||||
if (_current_text_dir == TD_RTL) x = wid->current_x - x;
|
if (_current_text_dir == TD_RTL) x = wid->current_x - 1 - x;
|
||||||
x -= 4;
|
x -= 4;
|
||||||
|
|
||||||
GRFParameterInfo *par_info = (num < this->grf_config->param_info.Length()) ? this->grf_config->param_info[num] : NULL;
|
GRFParameterInfo *par_info = (num < this->grf_config->param_info.Length()) ? this->grf_config->param_info[num] : NULL;
|
||||||
|
|
|
@ -1788,7 +1788,7 @@ struct GameSettingsWindow : Window {
|
||||||
{
|
{
|
||||||
if (widget != WID_GS_OPTIONSPANEL) return;
|
if (widget != WID_GS_OPTIONSPANEL) return;
|
||||||
|
|
||||||
uint btn = this->vscroll->GetScrolledRowFromWidget(pt.y, this, WID_GS_OPTIONSPANEL, SETTINGTREE_TOP_OFFSET - 1);
|
uint btn = this->vscroll->GetScrolledRowFromWidget(pt.y, this, WID_GS_OPTIONSPANEL, SETTINGTREE_TOP_OFFSET);
|
||||||
if (btn == INT_MAX) return;
|
if (btn == INT_MAX) return;
|
||||||
|
|
||||||
uint cur_row = 0;
|
uint cur_row = 0;
|
||||||
|
@ -1796,7 +1796,7 @@ struct GameSettingsWindow : Window {
|
||||||
|
|
||||||
if (pe == NULL) return; // Clicked below the last setting of the page
|
if (pe == NULL) return; // Clicked below the last setting of the page
|
||||||
|
|
||||||
int x = (_current_text_dir == TD_RTL ? this->width - pt.x : pt.x) - SETTINGTREE_LEFT_OFFSET - (pe->level + 1) * LEVEL_WIDTH; // Shift x coordinate
|
int x = (_current_text_dir == TD_RTL ? this->width - 1 - pt.x : pt.x) - SETTINGTREE_LEFT_OFFSET - (pe->level + 1) * LEVEL_WIDTH; // Shift x coordinate
|
||||||
if (x < 0) return; // Clicked left of the entry
|
if (x < 0) return; // Clicked left of the entry
|
||||||
|
|
||||||
if ((pe->flags & SEF_KIND_MASK) == SEF_SUBTREE_KIND) {
|
if ((pe->flags & SEF_KIND_MASK) == SEF_SUBTREE_KIND) {
|
||||||
|
|
Loading…
Reference in New Issue