1 /* 2 * Copyright (c) 2000-2009, 2016, 2019 Paul Mattes. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * * Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * * Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * * Neither the name of Paul Mattes nor his contributors may be used 14 * to endorse or promote products derived from this software without 15 * specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY PAUL MATTES "AS IS" AND ANY EXPRESS 18 * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 19 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 20 * DISCLAIMED. IN NO EVENT SHALL PAUL MATTES BE LIABLE FOR ANY DIRECT, 21 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 22 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 23 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 25 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 26 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 27 * POSSIBILITY OF SUCH DAMAGE. 28 */ 29 30 /* wc3270 version of keymap.h */ 31 32 #define KM_SHIFT 0x0001 33 #define KM_LCTRL 0x0002 34 #define KM_RCTRL 0x0004 35 #define KM_CTRL (KM_LCTRL | KM_RCTRL) 36 #define KM_LALT 0x0008 37 #define KM_RALT 0x0010 38 #define KM_ALT (KM_LALT | KM_RALT) 39 #define KM_ENHANCED 0x0020 40 41 void keymap_init(void); 42 char *lookup_key(unsigned long xk, unsigned long state); 43 const char *keymap_dump(void); 44 const char *decode_key(int k, int hint, char *buf); 45 const char *lookup_cname(unsigned long ccode); 46 void keymap_register(void); 47