|
@@ -248,16 +248,13 @@ public:
|
|
|
resize->height = FONT_HEIGHT_NORMAL;
|
|
|
size->height = WD_FRAMERECT_TOP + 9 * FONT_HEIGHT_NORMAL + WD_FRAMERECT_BOTTOM;
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
virtual void OnDoubleClick(Point pt, int widget) { HandleClick(pt, widget, true); }
|
|
|
virtual void OnClick(Point pt, int widget) { HandleClick(pt, widget, false); }
|
|
|
|
|
|
void HandleClick(Point pt, int widget, bool double_click)
|
|
|
virtual void OnClick(Point pt, int widget, int click_count)
|
|
|
{
|
|
|
switch (widget) {
|
|
|
case TWA_COMMAND_LIST: {
|
|
|
int y = (pt.y - this->GetWidget<NWidgetBase>(TWA_COMMAND_LIST)->pos_y - 1) / FONT_HEIGHT_NORMAL;
|
|
|
|
|
|
if (!IsInsideMM(y, 0, 5)) return;
|
|
@@ -265,13 +262,13 @@ public:
|
|
|
y = GetNthSetBit(GetMaskOfTownActions(NULL, _local_company, this->town), y + this->vscroll.GetPosition() - 1);
|
|
|
if (y >= 0) {
|
|
|
this->sel_index = y;
|
|
|
this->SetDirty();
|
|
|
}
|
|
|
/* Fall through to clicking in case we are double-clicked */
|
|
|
if (!double_click || y < 0) break;
|
|
|
if (click_count == 1 || y < 0) break;
|
|
|
}
|
|
|
|
|
|
case TWA_EXECUTE:
|
|
|
DoCommandP(this->town->xy, this->window_number, this->sel_index, CMD_DO_TOWN_ACTION | CMD_MSG(STR_ERROR_CAN_T_DO_THIS));
|
|
|
break;
|
|
|
}
|
|
@@ -432,13 +429,13 @@ public:
|
|
|
SetDParam(0, this->town->noise_reached);
|
|
|
SetDParam(1, this->town->MaxTownNoise());
|
|
|
DrawString(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_LEFT, y += FONT_HEIGHT_NORMAL, STR_TOWN_VIEW_NOISE_IN_TOWN);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
virtual void OnClick(Point pt, int widget)
|
|
|
virtual void OnClick(Point pt, int widget, int click_count)
|
|
|
{
|
|
|
switch (widget) {
|
|
|
case TVW_CENTERVIEW: // scroll to location
|
|
|
if (_ctrl_pressed) {
|
|
|
ShowExtraViewPortWindow(this->town->xy);
|
|
|
} else {
|
|
@@ -794,13 +791,13 @@ public:
|
|
|
*size = maxdim(*size, d);
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
virtual void OnClick(Point pt, int widget)
|
|
|
virtual void OnClick(Point pt, int widget, int click_count)
|
|
|
{
|
|
|
switch (widget) {
|
|
|
case TDW_SORTNAME: // Sort by Name ascending/descending
|
|
|
if (this->towns.SortType() == 0) {
|
|
|
this->towns.ToggleSortOrder();
|
|
|
} else {
|
|
@@ -1070,13 +1067,13 @@ public:
|
|
|
virtual void OnPaint()
|
|
|
{
|
|
|
this->DrawWidgets();
|
|
|
if (!this->IsShaded()) this->DrawEditBox(TSEW_TOWNNAME_EDITBOX);
|
|
|
}
|
|
|
|
|
|
virtual void OnClick(Point pt, int widget)
|
|
|
virtual void OnClick(Point pt, int widget, int click_count)
|
|
|
{
|
|
|
switch (widget) {
|
|
|
case TSEW_NEWTOWN:
|
|
|
HandlePlacePushButton(this, TSEW_NEWTOWN, SPR_CURSOR_TOWN, HT_RECT, NULL);
|
|
|
break;
|
|
|
|