diff --git a/airport_gui.c b/airport_gui.c index 175d8658fb..d0194c5292 100644 --- a/airport_gui.c +++ b/airport_gui.c @@ -69,6 +69,16 @@ static void BuildAirToolbWndProc(Window *w, WindowEvent *e) if (e->click.widget - 3 >= 0) _build_air_button_proc[e->click.widget - 3](w); break; + + case WE_KEYPRESS: { + switch (e->keypress.keycode) { + case '1': BuildAirClick_Airport(w); break; + case '2': BuildAirClick_Demolish(w); break; + case 'l': BuildAirClick_Landscaping(w); break; + default: + return; + } + } break; case WE_PLACE_OBJ: _place_proc(e->place.tile); diff --git a/dock_gui.c b/dock_gui.c index 7f7c4581c4..f7fd23af4a 100644 --- a/dock_gui.c +++ b/dock_gui.c @@ -118,6 +118,20 @@ static void BuildDocksToolbWndProc(Window *w, WindowEvent *e) case WE_CLICK: { if (e->click.widget - 3 >= 0 && e->click.widget != 5) _build_docks_button_proc[e->click.widget - 3](w); } break; + + case WE_KEYPRESS: { + switch(e->keypress.keycode) { + case '1': BuildDocksClick_Canal(w); break; + case '2': BuildDocksClick_Lock(w); break; + case '3': BuildDocksClick_Demolish(w); break; + case '4': BuildDocksClick_Depot(w); break; + case '5': BuildDocksClick_Dock(w); break; + case '6': BuildDocksClick_Buoy(w); break; + case 'l': BuildDocksClick_Landscaping(w); break; + default: + return; + } + } break; case WE_PLACE_OBJ: _place_proc(e->place.tile);