(svn r20412) -Codechange: Replace an if by a switch in IndustryCargoesWindow::OnClick.

replace/41b28d7194a279bdc17475d4fbe2ea6ec885a466
alberth 14 years ago
parent 3da3d131c6
commit e1e8e245a0

@ -2346,33 +2346,36 @@ struct IndustryCargoesWindow : public Window {
virtual void OnClick(Point pt, int widget, int click_count)
{
if (widget != ICW_PANEL) return;
Point fieldxy, xy;
if (!CalculatePositionInWidget(pt, &fieldxy, &xy)) return;
const CargoesField *fld = this->fields[fieldxy.y].columns + fieldxy.x;
switch (fld->type) {
case CFT_INDUSTRY:
if (fld->u.industry.ind_type < NUM_INDUSTRYTYPES) this->ComputeIndustryDisplay(fld->u.industry.ind_type);
break;
switch (widget) {
case ICW_PANEL: {
Point fieldxy, xy;
if (!CalculatePositionInWidget(pt, &fieldxy, &xy)) return;
const CargoesField *fld = this->fields[fieldxy.y].columns + fieldxy.x;
switch (fld->type) {
case CFT_INDUSTRY:
if (fld->u.industry.ind_type < NUM_INDUSTRYTYPES) this->ComputeIndustryDisplay(fld->u.industry.ind_type);
break;
case CFT_CARGO: {
CargoesField *lft = (fieldxy.x > 0) ? this->fields[fieldxy.y].columns + fieldxy.x - 1 : NULL;
CargoesField *rgt = (fieldxy.x < 4) ? this->fields[fieldxy.y].columns + fieldxy.x + 1 : NULL;
CargoID cid = fld->CargoClickedAt(lft, rgt, xy);
if (cid != INVALID_CARGO) this->ComputeCargoDisplay(cid);
break;
}
case CFT_CARGO: {
CargoesField *lft = (fieldxy.x > 0) ? this->fields[fieldxy.y].columns + fieldxy.x - 1 : NULL;
CargoesField *rgt = (fieldxy.x < 4) ? this->fields[fieldxy.y].columns + fieldxy.x + 1 : NULL;
CargoID cid = fld->CargoClickedAt(lft, rgt, xy);
if (cid != INVALID_CARGO) this->ComputeCargoDisplay(cid);
break;
}
case CFT_CARGO_LABEL: {
CargoID cid = fld->CargoLabelClickedAt(xy);
if (cid != INVALID_CARGO) this->ComputeCargoDisplay(cid);
break;
}
case CFT_CARGO_LABEL: {
CargoID cid = fld->CargoLabelClickedAt(xy);
if (cid != INVALID_CARGO) this->ComputeCargoDisplay(cid);
default:
break;
}
break;
}
default:
break;
}
}

Loading…
Cancel
Save