⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 key.h

📁 vt6528芯片交换机API函数和文档运行程序
💻 H
字号:
/*
 * File: key.h
 *
 * Purpose: key definitions
 */


#ifndef __KEY_H__
#define __KEY_H__




/*---------------------  Export Definitions  ------------------------*/

//
// Logically defined key, not exist in hardware
//
#define MK_NULL         0x0000          // null key

#define MK_V_UP         0x00E0          // ^^[A
#define MK_V_DOWN       0x00E1          // ^^[B
#define MK_V_RIGHT      0x00E2          // ^^[C
#define MK_V_LEFT       0x00E3          // ^^[D

#define MK_V_PAGE_UP    0x00E4          // ^^[3~    /*4-key*/
#define MK_V_PAGE_DOWN  0x00E5          // ^^[6~    /*4-key*/

#define MK_V_HOME       0x00E6
#define MK_V_END        0x00E7

#define MK_V_F1         0x003B          // ^^[11~    /*5-key*/
#define MK_V_F3         0x003D          // ^^[13~    /*5-key*/
#define MK_V_F5         0x003F          // ^^[15~    /*5-key*/
#define MK_V_F6         0x0040          // ^^[16~    /*5-key*/
#define MK_V_INSERT     0x0052          // ^^[1~     /*4-key*/
#define MK_V_DELETE     0x0053          // ^^[4~     /*4-key*/


//
// NORMAL KEY
//

//
// The followings are normal key definitions
// we only check their ascii code(low byte)
// and ignore their scan code(high byte)
//

/* Ctrl + normal key */
#define MK_C_A          0x0001
#define MK_C_B          0x0002
#define MK_C_C          0x0003
#define MK_C_D          0x0004
#define MK_C_E          0x0005
#define MK_C_F          0x0006
#define MK_C_G          0x0007
#define MK_C_H          0x0008
#define MK_C_I          0x0009
#define MK_C_J          0x000A
#define MK_C_K          0x000B
#define MK_C_L          0x000C
#define MK_C_M          0x000D
#define MK_C_N          0x000E
#define MK_C_O          0x000F
#define MK_C_P          0x0010
#define MK_C_Q          0x0011
#define MK_C_R          0x0012
#define MK_C_S          0x0013
#define MK_C_T          0x0014
#define MK_C_U          0x0015
#define MK_C_V          0x0016
#define MK_C_W          0x0017
#define MK_C_X          0x0018
#define MK_C_Y          0x0019
#define MK_C_Z          0x001A
// alias for Ctrl + normal key
#define MK_BACKSPACE    0x0008
#define MK_TAB          0x0009
#define MK_ENTER        0x000D
#define MK_ESCAPE       0x001B


/* visible key */

#define MK_SPACE        0x0020          //
#define MK_MINUS        0x002D          // -
#define MK_PLUS         0x002B          // +
#define MK_DOT          0x002E          // .
#define MK_EQUAL        0x003D          // =

#define MK_0            0x0030          // 0
#define MK_1            0x0031          // 1
#define MK_2            0x0032          // 2
#define MK_3            0x0033          // 3
#define MK_4            0x0034          // 4
#define MK_5            0x0035          // 5
#define MK_6            0x0036          // 6
#define MK_7            0x0037          // 7
#define MK_8            0x0038          // 8
#define MK_9            0x0039          // 9

#define MK_A            0x0041          // A
#define MK_B            0x0042          // B
#define MK_C            0x0043          // C
#define MK_D            0x0044          // D
#define MK_E            0x0045          // E
#define MK_F            0x0046          // F
#define MK_G            0x0047          // G
#define MK_H            0x0048          // H
#define MK_I            0x0049          // I
#define MK_J            0x004A          // J
#define MK_K            0x004B          // K
#define MK_L            0x004C          // L
#define MK_M            0x004D          // M
#define MK_N            0x004E          // N
#define MK_O            0x004F          // O
#define MK_P            0x0050          // P
#define MK_Q            0x0051          // Q
#define MK_R            0x0052          // R
#define MK_S            0x0053          // S
#define MK_T            0x0054          // T
#define MK_U            0x0055          // U
#define MK_V            0x0056          // V
#define MK_W            0x0057          // W
#define MK_X            0x0058          // X
#define MK_Y            0x0059          // Y
#define MK_Z            0x005A          // Z

#define MK_a            0x0061          // a
#define MK_b            0x0062          // b
#define MK_c            0x0063          // c
#define MK_d            0x0064          // d
#define MK_e            0x0065          // e
#define MK_f            0x0066          // f
#define MK_g            0x0067          // g
#define MK_h            0x0068          // h
#define MK_i            0x0069          // i
#define MK_j            0x006A          // j
#define MK_k            0x006B          // k
#define MK_l            0x006C          // l
#define MK_m            0x006D          // m
#define MK_n            0x006E          // n
#define MK_o            0x006F          // o
#define MK_p            0x0070          // p
#define MK_q            0x0071          // q
#define MK_r            0x0072          // r
#define MK_s            0x0073          // s
#define MK_t            0x0074          // t
#define MK_u            0x0075          // u
#define MK_v            0x0076          // v
#define MK_w            0x0077          // w
#define MK_x            0x0078          // x
#define MK_y            0x0079          // y
#define MK_z            0x007A          // z




//
// EXTENDED KEY
//

//
// The followings are special key definitions
// their ascii code(low byte) is 0x00 or
// 0xE0(this happens in 101/102 keyboard)
// and will be ignored.
// so we should check its scan code(high byte)
//

#define MK_BACKTAB      0x0F00

/* pad key */
#define MK_HOME         0x4700
#define MK_UP           0x4800
#define MK_PGUP         0x4900
#define MK_LEFT         0x4B00
#define MK_RIGHT        0x4D00
#define MK_END          0x4F00
#define MK_DOWN         0x5000
#define MK_PGDN         0x5100
#define MK_INSERT       0x5200
#define MK_DELETE       0x5300

/* Ctrl + pad key */
#define MK_C_PGUP       0x8400
#define MK_C_PGDN       0x7600
#define MK_C_HOME       0x7700
#define MK_C_END        0x7500

/* function key */
#define MK_F1           0x3B00
#define MK_F2           0x3C00
#define MK_F3           0x3D00
#define MK_F4           0x3E00
#define MK_F5           0x3F00
#define MK_F6           0x4000
#define MK_F7           0x4100
#define MK_F8           0x4200
#define MK_F9           0x4300
#define MK_F10          0x4400
#define MK_F11          0x8500
#define MK_F12          0x8600

/* Shift + function key */
#define MK_S_F1         0x5400
#define MK_S_F2         0x5500
#define MK_S_F3         0x5600
#define MK_S_F4         0x5700
#define MK_S_F5         0x5800
#define MK_S_F6         0x5900
#define MK_S_F7         0x5A00
#define MK_S_F8         0x5B00
#define MK_S_F9         0x5C00
#define MK_S_F10        0x5D00
#define MK_S_F11        0x8700
#define MK_S_F12        0x8800

/* Ctrl + function key */
#define MK_C_F1         0x5E00
#define MK_C_F2         0x5F00
#define MK_C_F3         0x6000
#define MK_C_F4         0x6100
#define MK_C_F5         0x6200
#define MK_C_F6         0x6300
#define MK_C_F7         0x6400
#define MK_C_F8         0x6500
#define MK_C_F9         0x6600
#define MK_C_F10        0x6700
#define MK_C_F11        0x8900
#define MK_C_F12        0x8A00

/* Alt + function key */
#define MK_A_F1         0x6800
#define MK_A_F2         0x6900
#define MK_A_F3         0x6A00
#define MK_A_F4         0x6B00
#define MK_A_F5         0x6C00
#define MK_A_F6         0x6D00
#define MK_A_F7         0x6E00
#define MK_A_F8         0x6F00
#define MK_A_F9         0x7000
#define MK_A_F10        0x7100
#define MK_A_F11        0x8B00
#define MK_A_F12        0x8C00



/* Alt + 0 - 9 */
#define MK_A_0          0x8100
#define MK_A_1          0x7800
#define MK_A_2          0x7900
#define MK_A_3          0x7A00
#define MK_A_4          0x7B00
#define MK_A_5          0x7C00
#define MK_A_6          0x7D00
#define MK_A_7          0x7E00
#define MK_A_8          0x7F00
#define MK_A_9          0x8000

/* Alt + normal key */
#define MK_A_A          0x1E00
#define MK_A_B          0x3000
#define MK_A_C          0x2E00
#define MK_A_D          0x2000
#define MK_A_E          0x1200
#define MK_A_F          0x2100
#define MK_A_G          0x2200
#define MK_A_H          0x2300
#define MK_A_I          0x1700
#define MK_A_J          0x2400
#define MK_A_K          0x2500
#define MK_A_L          0x2600
#define MK_A_M          0x3200
#define MK_A_N          0x3100
#define MK_A_O          0x1800
#define MK_A_P          0x1900
#define MK_A_Q          0x1000
#define MK_A_R          0x1300
#define MK_A_S          0x1F00
#define MK_A_T          0x1400
#define MK_A_U          0x1600
#define MK_A_V          0x2F00
#define MK_A_W          0x1100
#define MK_A_X          0x2D00
#define MK_A_Y          0x1500
#define MK_A_Z          0x2C00

/*---------------------  Export Types  ------------------------------*/

/*---------------------  Export Macros ------------------------------*/

/*---------------------  Export Classes  ----------------------------*/

/*---------------------  Export Variables  --------------------------*/

/*---------------------  Export Functions  --------------------------*/




#endif // __KEY_H__


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -