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

📄 guicommon.h

📁 The combined demo is dedicated for S1C33L05, so DMT33L05 should be used to load and run the demo. F
💻 H
字号:
/* $id:guiCommon.h  V1.0 2001/10/10 */

/******************************************************************************
 *  This source code has been made available to you by SEIKO EPSON  on
 *  AS-IS.Anyone receiving this source is licensed under
 *  SEIKO EPSON copyrights to use it in any way he or she deems fit,including
 *  copying it,modifying it,compiling it,and redistributing it either with
 *  or without modifictions.
 *
 *
 *  Any person who transfers this source code or any derivative work must
 *  include the SEIKO EPSON copyright notice, this paragraph,and the preceding
 *  two paragraphs in the transferred software.
 *
 *
 *       COPYRIGHT SEIKO EPSON CORPORATION 2001
 *     LICENSED MATERIAL - PROGRAM PROPERTY OF EPSON
 *****************************************************************************/

/******************************************************************************
 *
 *  FILE: guiCommon.h
 *
 *  MODULE: System predefined data types
 *
 *  PURPOSE: Define some system level data types and some key macros
 *
 *  AUTHOR(S):Chen Hong
 *
 *  GROUP:GUI_GROUP
 *
 *  DATE CREATED:2001/010/015
 *
 *  REFERENCE DOCUMENT ID:
 *
 *  MODIFICATIONS:
 *  Date          user Name       Description
 *  2001/10/15    Chen Hong       Create this file
 *********************************************************************************/

#ifndef _GUICOMMON_H
#define _GUICOMMON_H

#ifdef __cplusplus
extern "C" {
#endif  /* __cplusplus */


/******************************** Handle definitions *************************/
typedef   T_WORD         T_GUI_HWND;
typedef   T_WORD         T_GUI_HDC;
typedef   T_WORD         T_GUI_HICON;
typedef   T_WORD         T_GUI_HMENU;
typedef   T_GUI_HWND     T_GUI_HDLG;
typedef   T_WORD         T_GUI_HHOOK;

typedef   T_UWORD        T_GUI_SIZE;

#define T_GUI_LONG T_WORD

#define LOBYTE(w)           ((T_BYTE)(w))
#define HIBYTE(w)           ((T_BYTE)(((T_UHWORD)(w) >> 8) & 0xFF))

#define MAKEUHWORD(low, high) ( (T_UHWORD)( ((T_BYTE)(low)) | (((T_UHWORD)((T_BYTE)(high))) << 8)) )

#define LOUHWORD(l)           ((T_UHWORD)(T_UWORD)(l))
#define HIUHWORD(l)           ((T_UHWORD)((((T_UWORD)(l)) >> 16) & 0xFFFF))

#define LOHWORD(l)          ((T_HWORD)(T_UWORD)(l))
#define HIHWORD(l)          ((T_HWORD)((((T_UWORD)(l)) >> 16) & 0xFFFF))

#define MAKELONG(low, high) ( (T_GUI_LONG)(((T_UHWORD)(low)) | (((T_UWORD)((T_UHWORD)(high))) << 16)) )

#define GUI_MAX(x, y)           ((x > y)?x:y)
#define GUI_MIN(x, y)           ((x < y)?x:y)

typedef   T_BYTE    T_GUI_SINT8;
typedef   T_UBYTE   T_GUI_UINT8;

typedef   T_HWORD   T_GUI_SINT16;
typedef   T_UHWORD  T_GUI_UINT16;

typedef   T_WORD    T_GUI_SINT32;
typedef   T_UWORD   T_GUI_UINT32;

typedef   T_WORD    T_GUI_SINT;
typedef   T_UWORD   T_GUI_UINT;

typedef T_GUI_UINT32              T_GUI_PIXEL;

typedef T_GUI_UINT32              T_GUI_ATTR;

typedef struct {
    T_GUI_UINT8 r,g,b,a;
} T_GUI_COLOR;

#define fnGUI_GetRValue(rgb)      ((T_BYTE)(rgb))
#define fnGUI_GetGValue(rgb)      ((T_BYTE)(((T_UHWORD)(rgb)) >> 8))
#define fnGUI_GetBValue(rgb)      ((T_BYTE)((rgb)>>16))

#ifndef NULL
#define NULL                ((T_VOID *)0)
#endif

typedef T_GUI_UINT  T_GUI_WPARAM;
typedef T_UWORD T_GUI_LPARAM;

/****** Common struct **************************************************/
typedef struct T_GUI_Rect
{
    T_WORD left;
    T_WORD top;
    T_WORD right;
    T_WORD bottom;
} T_GUI_Rect;
typedef T_GUI_Rect* T_GUI_pRect;
typedef T_GUI_Rect* T_GUI_lpRect;

typedef struct T_GUI_Point
{
    T_WORD x;
    T_WORD y;
} T_GUI_Point;
typedef T_GUI_Point* T_GUI_pPoint;

typedef struct T_GUI_Extent
{
    T_WORD cx;
    T_WORD cy;
} T_GUI_Extent;
typedef T_GUI_Extent* T_GUI_pExtent;

/* RGB struct */
typedef struct
{
   T_UBYTE r;
   T_UBYTE g;
   T_UBYTE b;
}T_GUI_Rgb;
typedef T_GUI_Rgb* T_GUI_pRgb;

/************************** Key Scan code ***********************************/
#define SCANCODE_ESCAPE                 1

#define SCANCODE_1                      2
#define SCANCODE_2                      3
#define SCANCODE_3                      4
#define SCANCODE_4                      5
#define SCANCODE_5                      6
#define SCANCODE_6                      7
#define SCANCODE_7                      8
#define SCANCODE_8                      9
#define SCANCODE_9                      10
#define SCANCODE_0                      11

#define SCANCODE_MINUS                  12
#define SCANCODE_EQUAL                  13

#define SCANCODE_BACKSPACE              14
#define SCANCODE_TAB                    15

#define SCANCODE_Q                      16
#define SCANCODE_W                      17
#define SCANCODE_E                      18
#define SCANCODE_R                      19
#define SCANCODE_T                      20
#define SCANCODE_Y                      21
#define SCANCODE_U                      22
#define SCANCODE_I                      23
#define SCANCODE_O                      24
#define SCANCODE_P                      25
#define SCANCODE_BRACKET_LEFT           26
#define SCANCODE_BRACKET_RIGHT          27

#define SCANCODE_ENTER                  28

#define SCANCODE_LEFTCONTROL            29

#define SCANCODE_A                      30
#define SCANCODE_S                      31
#define SCANCODE_D                      32
#define SCANCODE_F                      33
#define SCANCODE_G                      34
#define SCANCODE_H                      35
#define SCANCODE_J                      36
#define SCANCODE_K                      37
#define SCANCODE_L                      38
#define SCANCODE_SEMICOLON              39
#define SCANCODE_APOSTROPHE             40
#define SCANCODE_GRAVE                  41

#define SCANCODE_LEFTSHIFT              42
#define SCANCODE_BACKSLASH              43

#define SCANCODE_Z                      44
#define SCANCODE_X                      45
#define SCANCODE_C                      46
#define SCANCODE_V                      47
#define SCANCODE_B                      48
#define SCANCODE_N                      49
#define SCANCODE_M                      50
#define SCANCODE_COMMA                  51
#define SCANCODE_PERIOD                 52
#define SCANCODE_SLASH                  53

#define SCANCODE_RIGHTSHIFT             54
#define SCANCODE_KEYPADMULTIPLY         55

#define SCANCODE_LEFTALT                56
#define SCANCODE_SPACE                  57
#define SCANCODE_CAPSLOCK               58

#define SCANCODE_F1                     59
#define SCANCODE_F2                     60
#define SCANCODE_F3                     61
#define SCANCODE_F4                     62
#define SCANCODE_F5                     63
#define SCANCODE_F6                     64
#define SCANCODE_F7                     65
#define SCANCODE_F8                     66
#define SCANCODE_F9                     67
#define SCANCODE_F10                    68

#define SCANCODE_NUMLOCK                69
#define SCANCODE_SCROLLLOCK             70

#define SCANCODE_KEYPAD7                71
#define SCANCODE_CURSORUPLEFT           71
#define SCANCODE_KEYPAD8                72
#define SCANCODE_CURSORUP               72
#define SCANCODE_KEYPAD9                73
#define SCANCODE_CURSORUPRIGHT          73
#define SCANCODE_KEYPADMINUS            74
#define SCANCODE_KEYPAD4                75
#define SCANCODE_CURSORLEFT             75
#define SCANCODE_KEYPAD5                76
#define SCANCODE_KEYPAD6                77
#define SCANCODE_CURSORRIGHT            77
#define SCANCODE_KEYPADPLUS             78
#define SCANCODE_KEYPAD1                79
#define SCANCODE_CURSORDOWNLEFT         79
#define SCANCODE_KEYPAD2                80
#define SCANCODE_CURSORDOWN             80
#define SCANCODE_KEYPAD3                81
#define SCANCODE_CURSORDOWNRIGHT        81
#define SCANCODE_KEYPAD0                82
#define SCANCODE_KEYPADPERIOD           83

#define SCANCODE_LESS                   86

#define SCANCODE_F11                    87
#define SCANCODE_F12                    88

#define SCANCODE_KEYPADENTER            96
#define SCANCODE_RIGHTCONTROL           97
#define SCANCODE_CONTROL                97
#define SCANCODE_KEYPADDIVIDE           98
#define SCANCODE_PRINTSCREEN            99
#define SCANCODE_RIGHTALT               100
#define SCANCODE_BREAK                  101    /* Beware: is 119     */
#define SCANCODE_BREAK_ALTERNATIVE      119    /* on some keyboards! */

#define SCANCODE_HOME                   102
#define SCANCODE_CURSORBLOCKUP          103    /* Cursor key block */
#define SCANCODE_PAGEUP                 104
#define SCANCODE_CURSORBLOCKLEFT        105    /* Cursor key block */
#define SCANCODE_CURSORBLOCKRIGHT       106    /* Cursor key block */
#define SCANCODE_END                    107
#define SCANCODE_CURSORBLOCKDOWN        108    /* Cursor key block */
#define SCANCODE_PAGEDOWN               109
#define SCANCODE_INSERT                 110
#define SCANCODE_REMOVE                 111

//*Abel 2004.4.25
#define SCANCODE_IME                 	SCANCODE_LESS
#define SCANCODE_DELETE                	SCANCODE_KEYPADPERIOD


#define SCANCODE_LEFTBUTTON             0x1000
#define SCANCODE_RIGHTBUTTON            0x2000
#define SCANCODE_MIDDLBUTTON            0x4000

#define KS_CAPTURED                     0x00000400
#define KS_IMEPOST                      0x00000200
#define KS_CAPSLOCK                     0x00000100
#define KS_NUMLOCK                      0x00000080
#define KS_SCROLLLOCK                   0x00000040
#define KS_LEFTCTRL                     0x00000020
#define KS_RIGHTCTRL                    0x00000010
#define KS_CTRL                         0x00000030
#define KS_LEFTALT                      0x00000008
#define KS_RIGHTALT                     0x00000004
#define KS_ALT                          0x0000000C
#define KS_LEFTSHIFT                    0x00000002
#define KS_RIGHTSHIFT                   0x00000001
#define KS_SHIFT                        0x00000003
#define MASK_KS_SHIFTKEYS               0x00000FFF

#define KS_LEFTBUTTON                   0x00001000
#define KS_RIGHTBUTTON                  0x00002000
#define KS_MIDDLBUTTON                  0x00004000
#define MASK_KS_BUTTONS                 0x0000F000

/************************** Error code **************************************/

#define ERR_OK                   0
#define ERR_INV_HWND            -1
#define ERR_QUEUE_FULL          -2

#define ERR_INVALID_HANDLE      -3
#define ERR_INVALID_HMENU       -4
#define ERR_INVALID_POS         -5
#define ERR_INVALID_ID          -6
#define ERR_RES_ALLOCATION      -7

#define ERR_CTRLCLASS_INVNAME   -8
#define ERR_CTRLCLASS_INVLEN    -9
#define ERR_CTRLCLASS_MEM       -10
#define ERR_CTRLCLASS_INUSE     -11

#define ERR_ALREADY_EXIST       -12
#define ERR_NO_MATCH            -13
#define ERR_BAD_OWNER           -14

#define ERR_IME_TOOMUCHIMEWND   -15
#define ERR_IME_NOSUCHIMEWND    -16
#define ERR_IME_NOIMEWND        -17

#define ERR_GFX_ENGINE          -18
#define ERR_INPUT_ENGINE        -19
#define ERR_NO_ENGINE           -20

#ifdef __cplusplus
}
#endif  /* __cplusplus */

#endif /*_GUICOMMON_H*/

⌨️ 快捷键说明

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