0ad/source/tools/atlas/GameInterface
Ykkrosh 2d1be3d47e Improve correctness of hotkeys at low framerates.
SDL queues up all the input events received in a frame. When the hotkey
system saw a key up/down event, it immediately updated its
HotkeyIsPressed state and then pushed a hotkey event onto the end of the
queue.

If the initial queue was e.g. [key-down shift, key-press Z, key-up
shift], the hotkey event triggered by Z would be processed after the
key-up shift had updated the HotkeyIsPressed state, so the handler of
the Z hotkey would not think the shift hotkey was pressed.

If the initial queue was e.g. [key-press Z, mouse-click], the hotkey
triggered by Z would be processed after the mouse-click event, so it
could apply to the wrong building selection.

Fix by pushing the hotkey events onto a special queue that gets
processed before any subsequent SDL input events.

Also update the HotkeyIsPressed status when the HOTKEYDOWN/HOTKEYUP
events are processed, not when they are generated, to guarantee they are
consistent with the DOWN/UP events.

Fixes #1869.

This was SVN commit r14057.
2013-10-30 01:38:32 +00:00
..
Handlers Implements skirmish maps, based on patch by sanderd17, fixes #1198. Skirmish maps are like scenarios, except the player can choose their civ during match setup. To create a skirmish map: place some skirmish entities for each player in Atlas (see templates/skirmish/* for examples), uncheck the player's civ in Atlas' player panel if desired, and save in the maps/skirmishes directory. The map will appear in match setup under the "Skirmish" match type. 2013-10-04 02:29:16 +00:00
ActorViewer.cpp Refactor text renderer 2013-10-18 15:53:07 +00:00
ActorViewer.h Fixes actor viewer bug where view was obstructed by map's water level. Fixes #1562. 2012-09-28 18:20:36 +00:00
Brushes.cpp Implemented nested territory boundaries. Fixes #918. 2012-01-18 21:22:58 +00:00
Brushes.h # Fix terrain blending logic. 2011-01-29 16:31:48 +00:00
CommandProc.cpp split debug_assert into ENSURE and ASSERT as discussed in a previous meeting. 2011-04-30 13:01:45 +00:00
CommandProc.h huge cleanup and conversion of most string handling (especially paths) to unicode 2009-11-03 21:46:35 +00:00
DeltaArray.h split debug_assert into ENSURE and ASSERT as discussed in a previous meeting. 2011-04-30 13:01:45 +00:00
GameLoop.cpp Improve correctness of hotkeys at low framerates. 2013-10-30 01:38:32 +00:00
GameLoop.h Added elapsed real time (as opposed to elapsed simulation time) to MT_Interpolate messages. Fixes leftover TODO from #824. Refs #824. 2012-06-06 19:37:03 +00:00
InputProcessor.cpp Added elapsed real time (as opposed to elapsed simulation time) to MT_Interpolate messages. Fixes leftover TODO from #824. Refs #824. 2012-06-06 19:37:03 +00:00
InputProcessor.h Add GPL header to Atlas code 2009-06-20 16:13:29 +00:00
MessagePasser.h Avoid -Wnon-virtual-dtor warnings 2010-03-31 08:36:46 +00:00
MessagePasserImpl.cpp Removes more unused variables, based on patch by Markus, refs #1852. 2013-08-15 18:25:32 +00:00
MessagePasserImpl.h Add/rename header guards 2010-02-17 23:21:49 +00:00
Messages.h Implements skirmish maps, based on patch by sanderd17, fixes #1198. Skirmish maps are like scenarios, except the player can choose their civ during match setup. To create a skirmish map: place some skirmish entities for each player in Atlas (see templates/skirmish/* for examples), uncheck the player's civ in Atlas' player panel if desired, and save in the maps/skirmishes directory. The map will appear in match setup under the "Skirmish" match type. 2013-10-04 02:29:16 +00:00
MessagesSetup.h Add GPL header to Atlas code 2009-06-20 16:13:29 +00:00
Misc.cpp huge cleanup and conversion of most string handling (especially paths) to unicode 2009-11-03 21:46:35 +00:00
Register.cpp Misc. unity fixes (missing includes, undefs, and other things that could be considered generic cleanup) 2010-02-18 00:06:50 +00:00
Shareable.h Adds eyedropper tool to Atlas terrain brush (Shift+Click to activate). Fixes #1122. 2012-04-17 02:43:52 +00:00
SharedMemory.h Add GPL header to Atlas code 2009-06-20 16:13:29 +00:00
SharedTypes.h Changes Atlas ObjectID type to unsigned int, fixes 64-bit build errors caused by size_t. 2012-02-27 22:29:53 +00:00
SimState.cpp # Delete a lot of obsolete simulation code. 2010-05-20 18:09:23 +00:00
SimState.h # Delete a lot of obsolete simulation code. 2010-05-20 18:09:23 +00:00
View.cpp Moves particle interpolation to its own simulation component. 2013-02-22 23:20:59 +00:00
View.h Moves particle interpolation to its own simulation component. 2013-02-22 23:20:59 +00:00