use the override options if specified
[AROS.git] / rom / keymap / setkeymapdefault.c
blob500f31f2da695802b9930afcf518220bfa6d254c
1 /*
2 Copyright © 1995-2007, The AROS Development Team. All rights reserved.
3 $Id$
5 Desc:
6 Lang: english
7 */
8 #include "keymap_intern.h"
10 #include <aros/debug.h>
12 /*****************************************************************************
14 NAME */
15 #include <clib/keymap_protos.h>
17 AROS_LH1(void, SetKeyMapDefault,
19 /* SYNOPSIS */
20 AROS_LHA(struct KeyMap *, keyMap, A0),
22 /* LOCATION */
23 struct Library *, KeymapBase, 5, Keymap)
25 /* FUNCTION
26 Sets the systemwide default keymap.
28 INPUTS
29 keyMap - pointer to KeyMap to set as system default.
31 RESULT
33 NOTES
34 - This function should only be used by a keymap preferences editor.
35 - Once you have set the keymap, you should NEVER deallocate it, as
36 other apps might have got pointers to it via AskKeyMapDefault().
37 - You should use the keymap.resource to check if the keymap has allready
38 been added. If not, then remember to arbitrate before adding it to
39 the keymap.resource list of keymaps.
41 EXAMPLE
43 BUGS
44 When adding the keymap to the keymap.resource one must use
45 Forbid()/Permit() to arbitrate. Ideally one should use semaphores,
46 but the keymap.resource contains no semaphore for this purpose.
48 SEE ALSO
49 AskKeyMapDefault()
51 INTERNALS
53 HISTORY
54 27-11-96 digulla automatically created from
55 keymap_lib.fd and clib/keymap_protos.h
57 *****************************************************************************/
59 AROS_LIBFUNC_INIT
61 KMBase(KeymapBase)->DefaultKeymap = keyMap;
63 AROS_LIBFUNC_EXIT
64 } /* SetKeyMapDefault */