Changeset - r20875:f4bd8a2fe605
[Not reviewed]
master
0 1 0
frosch - 11 years ago 2013-10-28 10:28:24
frosch@openttd.org
(svn r25919) -Change [FS#5734]: Preselect the current replacement in the right-side list of the autoreplace GUI, instead of selecting the first resp. previous item.
1 file changed with 13 insertions and 2 deletions:
0 comments (0 inline, 0 general)
src/autoreplace_gui.cpp
Show inline comments
 
@@ -164,10 +164,21 @@ class ReplaceVehicleWindow : public Wind
 
				this->engines[1].Clear();
 
				this->sel_engine[1] = INVALID_ENGINE;
 
			} else {
 
				if (this->reset_sel_engine && this->sel_engine[0] != INVALID_ENGINE) {
 
					/* Select the current replacement for sel_engine[0]. */
 
					const Company *c = Company::Get(_local_company);
 
					this->sel_engine[1] = EngineReplacementForCompany(c, this->sel_engine[0], this->sel_group);
 
				}
 
				/* Regenerate the list on the right. Note: This resets sel_engine[1] to INVALID_ENGINE, if it is no longer available. */
 
				this->GenerateReplaceVehList(false);
 
				this->vscroll[1]->SetCount(this->engines[1].Length());
 
				if (this->reset_sel_engine && this->sel_engine[1] == INVALID_ENGINE && this->engines[1].Length() != 0) {
 
					this->sel_engine[1] = this->engines[1][0];
 
				if (this->reset_sel_engine && this->sel_engine[1] != INVALID_ENGINE) {
 
					int position = 0;
 
					for (EngineID *it = this->engines[1].Begin(); it != this->engines[1].End(); ++it) {
 
						if (*it == this->sel_engine[1]) break;
 
						++position;
 
					}
 
					this->vscroll[1]->ScrollTowards(position);
 
				}
 
			}
 
		}
0 comments (0 inline, 0 general)