📄 gui_protected.h
字号:
void GUI_AA__DrawCharAA2Trans (int x0, int y0, int XSize, int YSize, int BytesPerLine, const U8*pData);
void GUI_AA__DrawCharAA2Xor (int x0, int y0, int XSize, int YSize, int BytesPerLine, const U8*pData);
void GUI_AA__DrawCharAA4 (int x0, int y0, int XSize, int YSize, int BytesPerLine, const U8*pData);
/* System independent font routines */
int GUI_SIF__GetCharDistX(U16P c);
void GUI_SIF__GetFontInfo (const GUI_FONT GUI_UNI_PTR * pFont, GUI_FONTINFO * pfi);
char GUI_SIF__IsInFont (const GUI_FONT GUI_UNI_PTR * pFont, U16 c);
const U8 * GUI_SIF__GetpCharInfo (const GUI_FONT GUI_UNI_PTR * pFont, U16P c, unsigned SizeOfCharInfo);
int GUI_SIF__GetNumCharAreas (const GUI_FONT GUI_UNI_PTR * pFont);
int GUI_SIF__GetCharDistX_ExtFrm(U16P c);
void GUI_SIF__GetFontInfo_ExtFrm (const GUI_FONT GUI_UNI_PTR * pFont, GUI_FONTINFO * pfi);
char GUI_SIF__IsInFont_ExtFrm (const GUI_FONT GUI_UNI_PTR * pFont, U16 c);
int GUI_SIF__GetCharInfo_ExtFrm (U16P c, GUI_CHARINFO_EXT * pInfo);
/* External binary font routines */
#if GUI_COMPILER_SUPPORTS_FP
int GUI_XBF__GetOff (const GUI_XBF_DATA * pXBF_Data, unsigned c, U32 * pOff);
int GUI_XBF__GetOffAndSize(const GUI_XBF_DATA * pXBF_Data, unsigned c, U32 * pOff, U16 * pSize);
int GUI_XBF__GetCharDistX (U16P c);
void GUI_XBF__GetFontInfo (const GUI_FONT GUI_UNI_PTR * pFont, GUI_FONTINFO * pInfo);
char GUI_XBF__IsInFont (const GUI_FONT GUI_UNI_PTR * pFont, U16 c);
int GUI_XBF__GetCharInfo (U16P c, GUI_CHARINFO_EXT * pInfo);
#endif
/* Conversion routines */
void GUI_AddHex (U32 v, U8 Len, char**ps);
void GUI_AddBin (U32 v, U8 Len, char**ps);
void GUI_AddDecMin (I32 v, char**ps);
void GUI_AddDec (I32 v, U8 Len, char**ps);
void GUI_AddDecShift(I32 v, U8 Len, U8 Shift, char**ps);
long GUI_AddSign (long v, char**ps);
int GUI_Long2Len (I32 v);
#if GUI_SUPPORT_UNICODE
#define GUI_UC__GetCharSize(sText) GUI_Context.pUC_API->pfGetCharSize(sText)
#define GUI_UC__GetCharCode(sText) GUI_Context.pUC_API->pfGetCharCode(sText)
#else
#define GUI_UC__GetCharSize(sText) GUI_UC_GetCharSize(sText)
#define GUI_UC__GetCharCode(sText) GUI_UC_GetCharCode(sText)
#endif
int GUI_UC__CalcSizeOfChar (U16 Char);
U16 GUI_UC__GetCharCodeInc (const char GUI_UNI_PTR ** ps);
int GUI_UC__NumChars2NumBytes(const char GUI_UNI_PTR * s, int NumChars);
int GUI_UC__NumBytes2NumChars(const char GUI_UNI_PTR * s, int NumBytes);
int GUI__GetLineNumChars (const char GUI_UNI_PTR *s, int MaxNumChars);
int GUI__GetNumChars (const char GUI_UNI_PTR *s);
int GUI__GetOverlap (U16 Char);
int GUI__GetLineDistX (const char GUI_UNI_PTR *s, int Len);
int GUI__GetFontSizeY (void);
int GUI__HandleEOLine (const char GUI_UNI_PTR **ps);
void GUI__DispLine (const char GUI_UNI_PTR *s, int Len, const GUI_RECT* pr);
void GUI__AddSpaceHex (U32 v, U8 Len, char**ps);
void GUI__CalcTextRect (const char GUI_UNI_PTR* pText, const GUI_RECT* pTextRectIn, GUI_RECT* pTextRectOut, int TextAlign);
int GUI__WrapGetNumCharsDisp (const char GUI_UNI_PTR * pText, int xSize, GUI_WRAPMODE WrapMode);
int GUI__WrapGetNumCharsToNextLine (const char GUI_UNI_PTR * pText, int xSize, GUI_WRAPMODE WrapMode);
int GUI__WrapGetNumBytesToNextLine (const char GUI_UNI_PTR * pText, int xSize, GUI_WRAPMODE WrapMode);
void GUI__memset (U8 * p, U8 Fill, int NumBytes);
void GUI__memset16 (U16* p, U16 Fill, int NumWords);
int GUI__strlen (const char GUI_UNI_PTR * s);
int GUI__strcmp (const char GUI_UNI_PTR * s0, const char GUI_UNI_PTR * s1);
int GUI__strcmp_hp (GUI_HMEM hs0, const char GUI_UNI_PTR * s1);
/* Get cursor position */
int GUI__GetCursorPosX (const char GUI_UNI_PTR * s, int Index, int MaxNumChars);
int GUI__GetCursorPosChar (const char GUI_UNI_PTR * s, int x, int NumCharsToNextLine);
U16 GUI__GetCursorCharacter(const char GUI_UNI_PTR * s, int Index, int MaxNumChars, int * pIsRTL);
/* Arabic support (tbd) */
U16 GUI__GetPresentationForm (U16 Char, U16 Next, U16 Prev, int * pIgnoreNext, const char GUI_UNI_PTR * s);
int GUI__IsArabicCharacter (U16 c);
/* BiDi support */
int GUI__BIDI_Log2Vis (const char GUI_UNI_PTR * s, int NumChars, char * pBuffer, int BufferSize);
int GUI__BIDI_GetCursorPosX (const char GUI_UNI_PTR * s, int NumChars, int Index);
int GUI__BIDI_GetCursorPosChar(const char GUI_UNI_PTR * s, int NumChars, int x);
U16 GUI__BIDI_GetLogChar (const char GUI_UNI_PTR * s, int NumChars, int Index);
int GUI__BIDI_GetCharDir (const char GUI_UNI_PTR * s, int NumChars, int Index);
int GUI__BIDI_IsNSM (U16 Char);
/* Extendet font support */
const GUI_FONT_PROP_EXT GUI_UNI_PTR * GUIPROP_EXT__FindChar(const GUI_FONT_PROP_EXT GUI_UNI_PTR* pPropExt, U16P c);
void GUIPROP_EXT__DispLine (const char GUI_UNI_PTR * s, int Len);
void GUIPROP_EXT__ClearLine (const char GUI_UNI_PTR * s, int Len);
void GUIPROP_EXT__SetfpClearLine(void (* fpClearLine)(const char GUI_UNI_PTR * s, int Len));
/* Reading data routines */
U16 GUI__Read16(const U8 ** ppData);
U32 GUI__Read32(const U8 ** ppData);
/* Virtual screen support */
void GUI__GetOrg(int * px, int * py);
/* Timer support */
int GUI_TIMER__IsActive (void);
GUI_TIMER_TIME GUI_TIMER__GetPeriod(void);
/*********************************************************************
*
* 2d - GL
*
**********************************************************************
*/
void GL_DispChar (U16 c);
void GL_DrawArc (int x0, int y0, int rx, int ry, int a0, int a1);
void GL_DrawBitmap (const GUI_BITMAP GUI_UNI_PTR * pBM, int x0, int y0);
void GL_DrawCircle (int x0, int y0, int r);
void GL_DrawEllipse (int x0, int y0, int rx, int ry);
void GL_DrawHLine (int y0, int x0, int x1);
void GL_DrawPolygon (const GUI_POINT* pPoints, int NumPoints, int x0, int y0);
void GL_DrawPoint (int x, int y);
void GL_DrawLine1 (int x0, int y0, int x1, int y1);
void GL_DrawLine1Ex (int x0, int y0, int x1, int y1, unsigned * pPixelCnt);
void GL_DrawLineRel (int dx, int dy);
void GL_DrawLineTo (int x, int y);
void GL_DrawLineToEx (int x, int y, unsigned * pPixelCnt);
void GL_DrawLine (int x0, int y0, int x1, int y1);
void GL_DrawLineEx (int x0, int y0, int x1, int y1, unsigned * pPixelCnt);
void GL_MoveTo (int x, int y);
void GL_FillCircle (int x0, int y0, int r);
void GL_FillCircleAA (int x0, int y0, int r);
void GL_FillEllipse (int x0, int y0, int rx, int ry);
void GL_FillPolygon (const GUI_POINT* pPoints, int NumPoints, int x0, int y0);
void GL_SetDefault (void);
/************************************************************
*
* Callback pointers for dynamic linkage
*
*************************************************************
Dynamic linkage pointers reduces configuration hassles.
*/
typedef int GUI_tfTimer(void);
typedef char GUI_CURSOR_tfTempHide (const GUI_RECT* pRect, int LayerIndex);
typedef void GUI_CURSOR_tfTempUnhide(int LayerIndex);
typedef int WM_tfHandlePID(void);
/************************************************************
*
* Cursors
*
*************************************************************
*/
extern GUI_CONST_STORAGE unsigned char GUI_Pixels_ArrowS[45];
extern GUI_CONST_STORAGE unsigned char GUI_Pixels_ArrowM[60];
extern GUI_CONST_STORAGE unsigned char GUI_Pixels_ArrowL[150];
extern GUI_CONST_STORAGE unsigned char GUI_Pixels_CrossS[33];
extern GUI_CONST_STORAGE unsigned char GUI_Pixels_CrossM[126];
extern GUI_CONST_STORAGE unsigned char GUI_Pixels_CrossL[248];
extern GUI_CONST_STORAGE unsigned char GUI_PixelsHeaderM[5 * 17];
extern GUI_CONST_STORAGE GUI_LOGPALETTE GUI_CursorPal;
extern GUI_CONST_STORAGE GUI_LOGPALETTE GUI_CursorPalI;
/************************************************************
*
* Text rotation
*
*************************************************************
*/
extern GUI_RECT GUI_RectDispString; /* Used by LCD_Rotate...() and GUI_DispStringInRect() */
/*********************************************************************
*
* Multitasking support
*
**********************************************************************
*/
extern int GUITASK__EntranceCnt;
/*********************************************************************
*
* Bitmap related functions
*
**********************************************************************
*/
int GUI_GetBitmapPixelIndex(const GUI_BITMAP GUI_UNI_PTR * pBMP, unsigned x, unsigned y);
GUI_COLOR GUI_GetBitmapPixelColor(const GUI_BITMAP GUI_UNI_PTR * pBMP, unsigned x, unsigned y);
int GUI_GetBitmapPixelIndexEx(int BitsPerPixel, int BytesPerLine, const U8 GUI_UNI_PTR * pData, unsigned x, unsigned y);
#if GUI_COMPILER_SUPPORTS_FP
void GUI__DrawBitmap16bpp(int x0, int y0, int xsize, int ysize, const U8 GUI_UNI_PTR * pPixel, const LCD_LOGPALETTE GUI_UNI_PTR * pLogPal, int xMag, int yMag, tLCDDEV_Index2Color * pfIndex2Color);
#endif
void GUI__SetPixelAlpha (int x, int y, U8 Alpha, LCD_COLOR Color);
LCD_COLOR GUI__MixColors (LCD_COLOR Color, LCD_COLOR BkColor, U8 Intens);
extern const GUI_UC_ENC_APILIST GUI_UC_None;
/************************************************************
*
* EXTERNs for GL_CORE
*
*************************************************************
*/
#ifdef GL_CORE_C
#define GUI_EXTERN
#else
#define GUI_EXTERN extern
#endif
GUI_EXTERN GUI_SADDR GUI_CONTEXT GUI_Context; /* Thread wide globals */
GUI_EXTERN GUI_SADDR char GUI_DecChar;
GUI_EXTERN GUI_tfTimer* GUI_pfTimerExec;
GUI_EXTERN WM_tfHandlePID* WM_pfHandlePID;
GUI_EXTERN void (*GUI_pfDispCharStyle)(U16 Char);
#if GUI_COMPILER_SUPPORTS_FP && GUI_SUPPORT_ROTATION
GUI_EXTERN const tLCD_APIList * GUI_pLCD_APIList; /* Used for rotating text */
#endif
#if GUI_SUPPORT_CURSOR
GUI_EXTERN GUI_CURSOR_tfTempHide* GUI_CURSOR__apfTempHide[GUI_NUM_USERS];
GUI_EXTERN GUI_CURSOR_tfTempUnhide* GUI_CURSOR__apfTempUnhide[GUI_NUM_USERS];
#endif
GUI_EXTERN I16 GUI_OrgX, GUI_OrgY;
#undef GUI_EXTERN
#if defined(__cplusplus)
}
#endif
#endif /* Avoid multiple inclusion */
/*************************** End of file ****************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -