(svn r20070) -Feature: when none of the open windows handles a keypress, try all toolbars for global hotkeys

Users that have run a version between r20056 and r20068 should delete their hotkeys.cfg to reset the terraform toolbar hotkeys to default
This commit is contained in:
yexo
2010-07-03 21:43:44 +00:00
parent 9be9302cdb
commit 26be68ae98
9 changed files with 91 additions and 28 deletions

View File

@@ -302,6 +302,15 @@ void ShowBuildDocksToolbar()
AllocateWindowDescFront<BuildDocksToolbarWindow>(&_build_docks_toolbar_desc, TRANSPORT_WATER);
}
EventState DockToolbarGlobalHotkeys(uint16 key, uint16 keycode)
{
int num = CheckHotkeyMatch<BuildDocksToolbarWindow>(_dockstoolbar_hotkeys, keycode, NULL, true);
if (num == -1) return ES_NOT_HANDLED;
ShowBuildDocksToolbar();
Window *w = FindWindowByClass(WC_BUILD_TOOLBAR);
return w->OnKeyPress(key, keycode);
}
/**
* Nested widget parts of docks toolbar, scenario editor version.
* Positions of #DTW_DEPOT, #DTW_STATION, and #DTW_BUOY widgets have changed.