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

📄 guiial.h

📁 The combined demo is dedicated for S1C33L05, so DMT33L05 should be used to load and run the demo. F
💻 H
字号:
/* $Id: guiIal.h V1.0 2001/11/18 */
/*************************************************************************
*    This source code has been made available to you by EPSON on an AS-IS
*    basis.  Anyone receiving this source is licensed under 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 modifications.
*
*    Any person who transfers this source code or any derivative work
*    must include the EPSON copyright notice, this paragraph, and the
*    preceding two paragraphs in the transferred software.
*
*    COPYRIGHT   EPSON  CORPORATION 2001
*    LICENSED MATERIAL  -  PROGRAM PROPERTY OF EPSON
***********************************************************************/

/***********************************************************************
* FILE: guiIal.h
* MODULE: input abstract layer
*
* PURPOSE:
* AUTHOR(S): YangCX
* GROUP: GUI Group
* DATE CREATED: 2001/11/18
* REFERENCE DOCUMENT ID:
* MODIFICATIONS:
*    Date        userName     Description
*   2001/11/18     YangCX       Create this file
**********************************************************************/

#ifndef _GUIIAL_H
#define _GUIIAL_H

#ifdef __cplusplus
T_EXTERN "C" {
#endif

/* keydown state of mouse */
#define IAL_MOUSE_LEFTBUTTON      4
#define IAL_MOUSE_MIDDLEBUTTON    2
#define IAL_MOUSE_RIGHTBUTTON     1
#define IAL_MOUSE_NOBUTTONDOWN    0

/* flag of event */
#define IAL_TIMEOUTEVENT        0
#define IAL_MOUSEEVENT          1
#define IAL_KEYEVENT            2

/* return data */
#define IAL_NODATA		0
#define IAL_DATAREAD   	1

typedef struct T_IAL_Input
{

    /* Mouse operations */
    T_WORD (*UpdateMouse) (T_VOID);
    T_WORD (*GetMouseX)  (T_VOID);
    T_WORD (*GetMouseY)  (T_VOID);
    T_VOID (*SetMouseXY) (T_WORD x, T_WORD y);
    T_WORD (*GetMouseButton) (T_VOID);
    T_VOID (*SetMouseRange) (T_WORD NewMinX, T_WORD NewMinY,T_WORD NewMaxX,T_WORD NewMaxY);
    T_VOID (*SuspendMouse)(T_VOID);
    T_VOID (*ResumeMouse) (T_VOID);

    /* Keyboard operations */
    T_WORD (*UpdateKeyboard) (T_VOID);
    T_CONST T_BYTE*(*GetKeyboardState) (T_VOID);
	T_VOID (*SuspendKeyboard) (T_VOID);
	T_VOID (*ResumeKeyboard) (T_VOID);
    T_VOID (*SetLeds) (T_UWORD leds);

    /* Event */
	T_WORD (*WaitEvent) (T_BOOL IsReturn);

}T_IAL_Input;

T_EXTERN T_IAL_Input* tpIAL_Input;

#define fnIAL_UpdateMouse         (*tpIAL_Input->UpdateMouse)
#define fnIAL_GetMouseX           (*tpIAL_Input->GetMouseX)
#define fnIAL_GetMouseY           (*tpIAL_Input->GetMouseY)
#define fnIAL_SetMouseXY          (*tpIAL_Input->SetMouseXY)
#define fnIAL_GetMouseButton      (*tpIAL_Input->GetMouseButton)
#define fnIAL_SetMouseRange       (*tpIAL_Input->SetMouseRange)
#define fnIAL_SuspendMouse		  (*tpIAL_Input->SuspendMouse)
#define fnIAL_ResumeMouse		  (*tpIAL_Input->ResumeMouse)

#define fnIAL_UpdateKeyboard      (*tpIAL_Input->UpdateKeyboard)
#define fnIAL_GetKeyboardState    (*tpIAL_Input->GetKeyboardState)
#define fnIAL_SuspendKeyboard	  (*tpIAL_Input->SuspendKeyboard)
#define fnIAL_ResumeKeyboard	  (*tpIAL_Input->ResumeKeyboard)
#define fnIAL_SetLeds(leds)       if (tpIAL_Input->SetLeds) (*tpIAL_Input->SetLeds)(leds)

#define fnIAL_WaitEvent           (*tpIAL_Input->WaitEvent)

T_VOID fnIAL_InitInput(T_VOID);

/* Hardware Input Operations function */
/* about mouse */
T_VOID fnIHL_InitMouse(T_VOID);
T_WORD fnIHL_ReadMouse(T_WORD *buttons,T_WORD *xPos, T_WORD *yPos);
/* about keyboard */
T_VOID fnIHL_InitKeyboard(T_VOID);
T_WORD fnIHL_ReadKeyboard(T_BYTE *ScanCode);
T_VOID fnIHL_WriteKeyboard (T_UWORD cmd);


#ifdef __cplusplus
}
#endif

#endif

⌨️ 快捷键说明

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