Matthew Jimenez
b4083476d5
KEYMAPPER: Allow mapped actions without modifier keys when no mapped actions exist for current modifier keys
2020-05-30 19:37:20 +02:00
Bastien Bouclet
9cc2fee887
SDL: Enable joystick input by default
...
Game controller input is now enabled whenever a compatible device is
connected. The keymapper's keymaps are refreshed when a joystick is added
or removed.
Fixes #10366 .
2020-03-16 18:41:27 +01:00
Bastien Bouclet
29dd15af0c
KEYMAPPER: Enable remapping the keyboard modifier keys
2020-02-14 19:30:00 +01:00
Eugene Sandulenko
9f168ae447
KEYMAPPER: Fix class/struct declaration mess.
2020-01-29 16:48:46 +01:00
Bastien Bouclet
2ef7365401
KEYMAPPER: Change backend default bindings to replace keymap defaults
...
Previously backend defaults where added to the keymap defaults.
However, it became apparent backends need to change the default bindings
to resolve conflicts.
2020-01-29 08:51:30 +01:00
Bastien Bouclet
519b4a57e2
KEYMAPPER: Allow engines to return multiple keymaps
...
The idea is that keymaps may be situational. A keymap may be always
enabled, while another one may be enabled only during combat..
2020-01-29 08:51:29 +01:00
Bastien Bouclet
426867f4bc
KEYMAPPER: Give human readable descriptions to the keymaps
2020-01-29 08:51:29 +01:00
Bastien Bouclet
df7ce0c55f
KEYMAPPER: Rework HardwareInputSet not to allocate all possible inputs
2020-01-29 08:51:29 +01:00
Bastien Bouclet
df4bf6556c
KEYMAPPER: Introduce custom engine actions
...
Custom engine actions are a new type of event the Keymapper can produce.
When an engine declares its keymap, it can declare it wants to receive
custom action events when the corresponding key is pressed, instead of
the originating hardware input events.
This system allows:
* Key bindings to be specified only once when declaring the keymap,
instead of twice (when handling the events).
* To truly rebind keys in the keymaps dialog. When using traditional
event mapping, the keymapper remaps the user keypress to the keypress
expected by the game engine to perform the action. However, the engine
still accepts the original keys.
The new concept of 'standard actions' defines a set of engine actions
that are commonly available in the games supported by ScummVM. Backends
can define default bindings for the standard actions to hardware
specific input devices.
2020-01-29 08:51:29 +01:00
Bastien Bouclet
14663c4790
KEYMAPPER: Make the keymapper mandatory
2020-01-29 08:51:29 +01:00
Filippos Karapetis
1b116170fa
KEYMAPPER: Fix forward declarations of HardwareInput
2020-01-27 02:33:39 +02:00
Bastien Bouclet
19de568e24
KEYMAPPER: Untangle the dependencies between Action and Keymap
2020-01-26 23:09:08 +02:00
Bastien Bouclet
576982bc33
KEYMAPPER: Use the default action bindings defined by the backends
2020-01-26 19:07:53 +01:00
Bastien Bouclet
17791e2f7d
KEYMAPPER: Actions can now have default mappings
2020-01-26 19:07:53 +01:00
Bastien Bouclet
ade0efa762
KEYMAPPER: Multiple inputs can map to the same action
2020-01-26 19:07:53 +01:00
Bastien Bouclet
729cd24c0b
KEYMAPPER: Change the keymap action list to be an Array
2020-01-26 19:07:53 +01:00
Bastien Bouclet
9c0bc2b633
KEYMAPPER: Simplify the way keymaps are enabled and disabled
2020-01-26 19:07:53 +01:00
Bastien Bouclet
ac44469558
KEYMAPPER: Remove the domain class
2020-01-26 19:07:53 +01:00
Bastien Bouclet
b7a816f1eb
KEYMAPPER: Clean up the classes dependencies
2020-01-26 19:07:53 +01:00
Johannes Schickel
594aaad38f
KEYMAPPER: Make GPL headers consistent in themselves.
2014-02-18 02:39:35 +01:00
Tarek Soliman
d12f21b31d
KEYMAPPER: Map non-key custom input events
...
This also makes the keymapper be in charge of keymapping logic
2012-03-02 20:48:50 -06:00
Tarek Soliman
6afac4e01e
KEYMAPPER: Rename HardwareKey to HardwareInput
2012-02-27 13:00:56 -06:00
Tarek Soliman
aa42d78658
KEYMAPPER: Remove automapping dead code
2012-02-21 08:20:40 -06:00
Tarek Soliman
921f602ab8
JANITORIAL: Fix whitespace in pointer template arg
2012-02-15 10:07:08 -06:00
strangerke
69b1485a22
GIT: Clean up: Suppress SVN tags, now useless
2011-05-12 01:16:22 +02:00
Max Horn
f242266f6d
Change a couple places from 'end of namespace' to 'End of namespace', for consistency
...
svn-id: r44634
2009-10-04 21:26:33 +00:00
Johannes Schickel
b3c6751b9b
Strip trailing whitespaces in the whole code base.
...
svn-id: r40867
2009-05-24 15:17:42 +00:00
Max Horn
9abce1b894
Some cleanup / code simplification
...
svn-id: r35970
2009-01-21 01:26:04 +00:00
Stephen Kennedy
df3b8fd14c
Added preprocessor flags 'ENABLE_VKEYBD' and 'ENABLE_KEYMAPPER' to control inclusion of vkeybd and keymapper in build.\n\nAlso added corresponding --enable-vkeybd and --enable-keymapper flags to configure scripts.
...
svn-id: r34706
2008-09-30 13:51:01 +00:00
Stephen Kennedy
565fa728e7
Removed KeymapManager class. Automatic mapping now done in Keymap. Rest of KeymapManager functionality is implemented in Keymapper.
...
svn-id: r33988
2008-08-18 14:45:42 +00:00
Stephen Kennedy
d92909203b
- proper init of virtual keyboard now implemented (involved added EventManager::init() which is called after screen has been initialised)
...
- changed HardwareKey / Action id field to an array of 4 chars instead of int32. Means that the keymap key/value pairs in config file are more readable.
svn-id: r33986
2008-08-18 10:07:11 +00:00
Stephen Kennedy
c61294e70f
Changed Action constructor to take a pointer to the Keymap it belongs too, meaning Keymap::addAction is automatically called
...
svn-id: r33885
2008-08-14 23:45:02 +00:00
Stephen Kennedy
08ef79ce45
Loads of valgrind fixes
...
svn-id: r33869
2008-08-14 19:20:25 +00:00
Stephen Kennedy
c1e8e340ff
* Saving of keymaps fully implemented
...
* Added Keymapper::cleanupGameKeymaps() with code to remove game keymaps from active stack
svn-id: r33853
2008-08-14 01:42:02 +00:00
Stephen Kennedy
5ca906fbd7
Keymapper: support for saving to config file enabled
...
svn-id: r33850
2008-08-13 22:20:18 +00:00
Stephen Kennedy
532faef82b
Keymapper WIP:
...
* Improved automatic mapping algorithm
* Remap dialog overhaul - now displays active keymap(s)
svn-id: r33821
2008-08-13 11:46:08 +00:00
Stephen Kennedy
4eacc09024
Keymapper WIP:
...
* Got rid of default keymaps as they over-complicated the API
* Remapping dialog WIP
svn-id: r33699
2008-08-08 14:23:59 +00:00
Stephen Kennedy
2645ca48ad
* Moved VK code into backends/vkeybd
...
* Moved Keymapper code into backends/keymapper
svn-id: r33681
2008-08-07 16:38:39 +00:00