diff options
author | alberth <alberth@openttd.org> | 2009-11-22 13:22:53 +0000 |
---|---|---|
committer | alberth <alberth@openttd.org> | 2009-11-22 13:22:53 +0000 |
commit | bf93372ca26375e392ff62a91db4de4c126dff38 (patch) | |
tree | b09443cc8800ee93a79bb1df23f79283e8ddebbf /src/ai | |
parent | 2332034822a9e2c9b1ed58e7f243a48cb8d630a6 (diff) | |
download | openttd-bf93372ca26375e392ff62a91db4de4c126dff38.tar.xz |
(svn r18220) -Codechange: Reduce number of nested widget dynamic casts.
Diffstat (limited to 'src/ai')
-rw-r--r-- | src/ai/ai_gui.cpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/ai/ai_gui.cpp b/src/ai/ai_gui.cpp index 18de747df..4f43e58fc 100644 --- a/src/ai/ai_gui.cpp +++ b/src/ai/ai_gui.cpp @@ -203,8 +203,9 @@ struct AIListWindow : public Window { virtual void OnResize() { - this->vscroll.SetCapacity(this->GetWidget<NWidgetCore>(AIL_WIDGET_LIST)->current_y / this->line_height); - this->GetWidget<NWidgetCore>(AIL_WIDGET_LIST)->widget_data = (this->vscroll.GetCapacity() << MAT_ROW_START) + (1 << MAT_COL_START); + NWidgetCore *nwi = this->GetWidget<NWidgetCore>(AIL_WIDGET_LIST); + this->vscroll.SetCapacity(nwi->current_y / this->line_height); + nwi->widget_data = (this->vscroll.GetCapacity() << MAT_ROW_START) + (1 << MAT_COL_START); } }; @@ -408,8 +409,9 @@ struct AISettingsWindow : public Window { virtual void OnResize() { - this->vscroll.SetCapacity(this->GetWidget<NWidgetCore>(AIS_WIDGET_BACKGROUND)->current_y / this->line_height); - this->GetWidget<NWidgetCore>(AIS_WIDGET_BACKGROUND)->widget_data = (this->vscroll.GetCapacity() << MAT_ROW_START) + (1 << MAT_COL_START); + NWidgetCore *nwi = this->GetWidget<NWidgetCore>(AIS_WIDGET_BACKGROUND); + this->vscroll.SetCapacity(nwi->current_y / this->line_height); + nwi->widget_data = (this->vscroll.GetCapacity() << MAT_ROW_START) + (1 << MAT_COL_START); } virtual void OnTick() @@ -520,9 +522,10 @@ struct AIConfigWindow : public Window { { this->InitNested(&_ai_config_desc); // Initializes 'this->line_height' as a side effect. this->selected_slot = INVALID_COMPANY; - this->vscroll.SetCapacity(this->GetWidget<NWidgetBase>(AIC_WIDGET_LIST)->current_y / this->line_height); + NWidgetCore *nwi = this->GetWidget<NWidgetCore>(AIC_WIDGET_LIST); + this->vscroll.SetCapacity(nwi->current_y / this->line_height); this->vscroll.SetCount(MAX_COMPANIES); - this->GetWidget<NWidgetCore>(AIC_WIDGET_LIST)->widget_data = (this->vscroll.GetCapacity() << MAT_ROW_START) + (1 << MAT_COL_START); + nwi->widget_data = (this->vscroll.GetCapacity() << MAT_ROW_START) + (1 << MAT_COL_START); this->OnInvalidateData(0); } |