(svn r14334) -Feature: ability to reset name to default/automatic value (for vehicles, engines, towns, groups, stations, waypoints, managers and companies)
This commit is contained in:
@@ -1049,6 +1049,7 @@ void QueryStringBaseWindow::DrawEditBox(int wid)
|
||||
|
||||
enum QueryStringWidgets {
|
||||
QUERY_STR_WIDGET_TEXT = 3,
|
||||
QUERY_STR_WIDGET_DEFAULT,
|
||||
QUERY_STR_WIDGET_CANCEL,
|
||||
QUERY_STR_WIDGET_OK
|
||||
};
|
||||
@@ -1093,6 +1094,9 @@ struct QueryStringWindow : public QueryStringBaseWindow
|
||||
ShowOnScreenKeyboard(this, QUERY_STR_WIDGET_TEXT, QUERY_STR_WIDGET_CANCEL, QUERY_STR_WIDGET_OK);
|
||||
break;
|
||||
|
||||
case QUERY_STR_WIDGET_DEFAULT:
|
||||
this->text.buf[0] = '\0';
|
||||
/* Fallthrough */
|
||||
case QUERY_STR_WIDGET_OK:
|
||||
this->OnOk();
|
||||
/* Fallthrough */
|
||||
@@ -1138,9 +1142,10 @@ static const Widget _query_string_widgets[] = {
|
||||
{ WWT_CLOSEBOX, RESIZE_NONE, COLOUR_GREY, 0, 10, 0, 13, STR_00C5, STR_018B_CLOSE_WINDOW},
|
||||
{ WWT_CAPTION, RESIZE_NONE, COLOUR_GREY, 11, 259, 0, 13, STR_012D, STR_NULL},
|
||||
{ WWT_PANEL, RESIZE_NONE, COLOUR_GREY, 0, 259, 14, 29, 0x0, STR_NULL},
|
||||
{ WWT_EDITBOX, RESIZE_NONE, COLOUR_GREY, 2, 257, 16, 27, 0x0, STR_NULL},
|
||||
{ WWT_TEXTBTN, RESIZE_NONE, COLOUR_GREY, 0, 129, 30, 41, STR_012E_CANCEL, STR_NULL},
|
||||
{ WWT_TEXTBTN, RESIZE_NONE, COLOUR_GREY, 130, 259, 30, 41, STR_012F_OK, STR_NULL},
|
||||
{ WWT_EDITBOX, RESIZE_NONE, COLOUR_GREY, 2, 257, 16, 27, 0x0, STR_NULL}, // QUERY_STR_WIDGET_TEXT
|
||||
{ WWT_TEXTBTN, RESIZE_NONE, COLOUR_GREY, 0, 86, 30, 41, STR_DEFAULT, STR_NULL}, // QUERY_STR_WIDGET_DEFAULT
|
||||
{ WWT_TEXTBTN, RESIZE_NONE, COLOUR_GREY, 87, 172, 30, 41, STR_012E_CANCEL, STR_NULL}, // QUERY_STR_WIDGET_CANCEL
|
||||
{ WWT_TEXTBTN, RESIZE_NONE, COLOUR_GREY, 173, 259, 30, 41, STR_012F_OK, STR_NULL}, // QUERY_STR_WIDGET_OK
|
||||
{ WIDGETS_END},
|
||||
};
|
||||
|
||||
@@ -1173,6 +1178,15 @@ void ShowQueryString(StringID str, StringID caption, uint maxlen, uint maxwidth,
|
||||
|
||||
if ((flags & QSF_ACCEPT_UNCHANGED) == 0) w->orig = strdup(w->edit_str_buf);
|
||||
|
||||
if ((flags & QSF_ENABLE_DEFAULT) == 0) {
|
||||
/* without the "Default" button, make "Cancel" and "OK" buttons wider */
|
||||
w->SetWidgetHiddenState(QUERY_STR_WIDGET_DEFAULT, true);
|
||||
w->widget[QUERY_STR_WIDGET_CANCEL].left = 0;
|
||||
w->widget[QUERY_STR_WIDGET_CANCEL].right = w->width / 2 - 1;
|
||||
w->widget[QUERY_STR_WIDGET_OK].left = w->width / 2;
|
||||
w->widget[QUERY_STR_WIDGET_OK].right = w->width - 1;
|
||||
}
|
||||
|
||||
w->LowerWidget(QUERY_STR_WIDGET_TEXT);
|
||||
w->caption = caption;
|
||||
w->afilter = afilter;
|
||||
|
Reference in New Issue
Block a user