Get the dynamic imt docs into doxygen.

I need to rewrite the whole key binding documentation at some stage, but
this will make things easier.
This commit is contained in:
Bill Currie 2016-01-04 17:24:51 +09:00
parent e1f9cb2028
commit b38a6bb7a4
2 changed files with 29 additions and 0 deletions

View file

@ -11,6 +11,7 @@
\li \subpage sound \li \subpage sound
\li \subpage tracklist \li \subpage tracklist
\li \subpage key_binding \li \subpage key_binding
\li \subpage imt
\li \subpage cshift_cvars \li \subpage cshift_cvars
\li \subpage server_timestamps \li \subpage server_timestamps
*/ */

28
doc/imt.dox Normal file
View file

@ -0,0 +1,28 @@
//unfortunately, have to wrap the docs in a C comment for doxygen
// vim:tw=74:formatoptions-=l
/**
\page imt Input Mapping Table
The user can now create and destroy IMTs at will, though currently
destroying IMTs is currently all or nothing (imt_drop_all).
An IMT is created via imt_create which takes the keydest name (key_game
etc), the name of the IMT (must be unique for all IMTs) and optionally the
name of the IMT to which the key binding search will fall back if there is
no binding in the current IMT, but must be already defined and on the same
keydest. This means that IMTs now have user determined fallback paths. The
requirements for the fallback IMT prevent loops and other weird behaviour.
Actual key binding via in_bind is unaffected. This is why the IMT name must
be unique across all IMTs.
The "imt" command works with the key_game keydest, but imt_keydest is
provided for specifying the active IMT for a specific keydest.
At startup, default IMTs are setup to emulate the previous static IMTs so
old configs will continue to work (mostly). New config files will be
written with commands to drop all of the current IMTs and build new ones,
with the bindings and active IMT set as well.
*/