PreviousUpNext

15.3.769  src/lib/x-kit/xclient/src/window/keymap-imp-old.api

## keymap-imp-old.api
## Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts,
## and the Massachusetts Institute of Technology, Cambridge, Massachusetts.

# Compiled by:
#     src/lib/x-kit/xclient/xclient-internals.sublib

# This api is implemented in:
#
#     src/lib/x-kit/xclient/src/window/keymap-imp-old.pkg

stipulate
    package dy  = display_old;                          # display_old   is from   src/lib/x-kit/xclient/src/wire/display-old.pkg
    package xet = xevent_types;                         # xevent_types  is from   src/lib/x-kit/xclient/src/wire/xevent-types.pkg
#    package ks = keysym;                               # keysym        is from   src/lib/x-kit/xclient/src/window/keysym.pkg
    package xt  = xtypes;                               # xtypes        is from   src/lib/x-kit/xclient/src/wire/xtypes.pkg
herein

    api Keymap_Imp_Old {

        Keymap_Imp;

        make_keymap_imp:   dy::Xdisplay -> Keymap_Imp;

        refresh_keymap:    Keymap_Imp -> Void;

        keycode_to_keysym
            :
            Keymap_Imp
            ->
            xet::Key_Xevtinfo
            ->
            (xt::Keysym, xt::Modifier_Keys_State);

        # Translate a keysym to a keycode.  This is intended
        # only for occasional selfcheck use, so we just do
        # a brute-force search down every list in every slot
        # of the KEYCODE_MAP.
        #
        # Currently we ignore modifier key issues, so this
        # logic won't work very well for SHIFT-ed chars or
        # control chars.   XXX BUGGO FIXME
        #       
        keysym_to_keycode:  (Keymap_Imp, xt::Keysym) -> Null_Or(xt::Keycode);   # Useful for selfcheck code generating keystrokes.
    };

end;


## COPYRIGHT (c) 1990, 1991 by John H. Reppy.  See SMLNJ-COPYRIGHT file for details.
## Subsequent changes by Jeff Prothero Copyright (c) 2010-2015,
## released per terms of SMLNJ-COPYRIGHT.


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext