亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? gui.h

?? UCOSII在STM32平臺的移植
?? H
?? 第 1 頁 / 共 4 頁
字號:
extern GUI_CONST_STORAGE GUI_FONT GUI_FontComic24B_ASCII, GUI_FontComic24B_1;


/*
      *********************************
      *                               *
      * Text and drawing mode defines *
      *                               *
      *********************************

These defines come in two flavors: the long version (.._DRAWMODE_..)
and the short ones (.._DM_..). They are identical, feel free to use
which ever one you like best.

*/

#define GUI_DRAWMODE_NORMAL  LCD_DRAWMODE_NORMAL
#define GUI_DRAWMODE_XOR     LCD_DRAWMODE_XOR
#define GUI_DRAWMODE_TRANS   LCD_DRAWMODE_TRANS
#define GUI_DRAWMODE_REV     LCD_DRAWMODE_REV
#define GUI_DM_NORMAL        LCD_DRAWMODE_NORMAL
#define GUI_DM_XOR           LCD_DRAWMODE_XOR
#define GUI_DM_TRANS         LCD_DRAWMODE_TRANS
#define GUI_DM_REV           LCD_DRAWMODE_REV

#define GUI_TEXTMODE_NORMAL  LCD_DRAWMODE_NORMAL
#define GUI_TEXTMODE_XOR     LCD_DRAWMODE_XOR
#define GUI_TEXTMODE_TRANS   LCD_DRAWMODE_TRANS
#define GUI_TEXTMODE_REV     LCD_DRAWMODE_REV
#define GUI_TM_NORMAL        LCD_DRAWMODE_NORMAL
#define GUI_TM_XOR           LCD_DRAWMODE_XOR
#define GUI_TM_TRANS         LCD_DRAWMODE_TRANS
#define GUI_TM_REV           LCD_DRAWMODE_REV

/* Text alignment flags, horizontal */
#define GUI_TA_HORIZONTAL  (3<<0)
#define GUI_TA_LEFT        (0<<0)
#define GUI_TA_RIGHT	     (1<<0)
#define GUI_TA_CENTER	     (2<<0)
#define GUI_TA_HCENTER	   GUI_TA_CENTER  /* easier to remember :-)  */

/* Text alignment flags, vertical */
#define GUI_TA_VERTICAL   (3<<2)
#define GUI_TA_TOP	      (0<<2)
#define GUI_TA_BOTTOM	    (1<<2)
#define GUI_TA_BASELINE   (2<<2)
#define GUI_TA_VCENTER    (3<<2)

/*    *********************************
      *
      *     Min/Max coordinates
      *
      *********************************
*/
/* Define minimum and maximum coordinates in x and y */
#define GUI_XMIN -4095
#define GUI_XMAX  4095
#define GUI_YMIN -4095
#define GUI_YMAX  4095

/*********************************************************************
*
*       Support for multitasking systems (locking)
*
**********************************************************************
*/


#if !GUI_OS
  #define GUI_LOCK()
  #define GUI_UNLOCK()
  #define GUITASK_INIT()
  #define GUITASK_COPY_CONTEXT()
#else
  void GUI_Lock(void);
  void GUI_Unlock(void);
  void GUITASK_Init(void);
  void GUITASK_CopyContext(void);
  #define GUI_LOCK()             GUI_Lock()
  #define GUI_UNLOCK()           GUI_Unlock()
  #define GUITASK_INIT()         GUITASK_Init()
  #define GUITASK_COPY_CONTEXT() GUITASK_CopyContext()
#endif

/*********************************************************************
*
*             GUI_CONTEXT
*
**********************************************************************

  This structure is public for one reason only:
  To allow the application to save and restore the context.
*/

typedef union {
  U8  aColorIndex8[2];
  U16 aColorIndex16[2];
} LCD_COLORINDEX_UNION;

typedef struct {
/* Variables in LCD module */
  LCD_COLORINDEX_UNION LCD;
  LCD_RECT       ClipRect;
  U8             DrawMode;
  U8             SelLayer;
  U8             TextStyle;
/* Variables in GL module */
  GUI_RECT* pClipRect_HL;                /* High level clip rectangle ... Speed optimization so drawing routines can optimize */
  U8        PenSize;
  U8        PenShape;
  U8        LineStyle;
  U8        FillStyle;
/* Variables in GUICHAR module */
  const GUI_FONT           GUI_UNI_PTR * pAFont;
  const GUI_UC_ENC_APILIST * pUC_API;    /* Unicode encoding API */
  I16P LBorder;
  I16P DispPosX, DispPosY;
  I16P DrawPosX, DrawPosY;
  I16P TextMode, TextAlign;
  GUI_COLOR Color, BkColor;           /* Required only when changing devices and for speed opt (caching) */
/* Variables in WM module */
  #if GUI_WINSUPPORT
    const GUI_RECT* WM__pUserClipRect;
    GUI_HWIN hAWin;
    int xOff, yOff;
  #endif
/* Variables in MEMDEV module (with memory devices only) */
  #if GUI_SUPPORT_DEVICES
    const tLCDDEV_APIList* pDeviceAPI;  /* function pointers only */
    GUI_HMEM    hDevData;
    GUI_RECT    ClipRectPrev;
  #endif
/* Variables in Anitaliasing module */
  #if GUI_SUPPORT_AA
    const tLCD_HL_APIList* pLCD_HL;     /* Required to reroute drawing (HLine & Pixel) to the AA module */
    U8 AA_Factor;
    U8 AA_HiResEnable;
  #endif
} GUI_CONTEXT;

/* Rename GUI_SaveContext in order to avoid crashes if wrong GUIConf is used */
#if   ( GUI_WINSUPPORT &&  GUI_SUPPORT_DEVICES)
  #define GUI_SaveContext GUI_SaveContext_W_M
#elif (!GUI_WINSUPPORT &&  GUI_SUPPORT_DEVICES)
  #define GUI_SaveContext GUI_SaveContext_M
#elif ( GUI_WINSUPPORT && !GUI_SUPPORT_DEVICES)
  #define GUI_SaveContext GUI_SaveContext_W
#else
  #define GUI_SaveContext GUI_SaveContext_
#endif

/*********************************************************************
*
*             General routines
*
**********************************************************************
*/
int          GUI_Init(void);
void         GUI_SetDefault(void);
GUI_DRAWMODE GUI_SetDrawMode(GUI_DRAWMODE dm);
const char * GUI_GetVersionString(void);
void         GUI_SaveContext   (      GUI_CONTEXT* pContext);
void         GUI_RestoreContext(const GUI_CONTEXT* pContext);


/*********************************************************************
*
*           Rectangle helper functions
*
**********************************************************************
*/

int  GUI_RectsIntersect(const GUI_RECT* pr0, const GUI_RECT* pr1);
void GUI_MoveRect       (GUI_RECT *pRect, int x, int y);
void GUI_MergeRect      (GUI_RECT* pDest, const GUI_RECT* pr0, const GUI_RECT* pr1);
int  GUI__IntersectRects(GUI_RECT* pDest, const GUI_RECT* pr0, const GUI_RECT* pr1);
void GUI__IntersectRect (GUI_RECT* pDest, const GUI_RECT* pr0);
void GUI__ReduceRect    (GUI_RECT* pDest, const GUI_RECT *pRect, int Dist);

/*********************************************************************
*
*       Misc helper functions
*
**********************************************************************
*/

int  GUI__DivideRound     (int a, int b);
I32  GUI__DivideRound32   (I32 a, I32 b);
int  GUI__SetText(GUI_HMEM* phText, const char* s);



/*********************************************************************
*
*      Get / Set Attributes
*
**********************************************************************
*/
 
GUI_COLOR GUI_GetBkColor     (void);
GUI_COLOR GUI_GetColor       (void);
int       GUI_GetBkColorIndex(void);
int       GUI_GetColorIndex  (void);
U8        GUI_GetPenSize     (void);
U8        GUI_GetPenShape    (void);
U8        GUI_GetLineStyle   (void);
U8        GUI_GetFillStyle   (void);

void      GUI_SetBkColor   (GUI_COLOR);
void      GUI_SetColor     (GUI_COLOR);
void      GUI_SetBkColorIndex(int Index);
void      GUI_SetColorIndex(int Index);

U8        GUI_SetPenSize   (U8 Size);
U8        GUI_SetPenShape  (U8 Shape);
U8        GUI_SetLineStyle (U8 Style);
U8        GUI_SetFillStyle (U8 Style);

/* Get/Set Character used as decimal point (usually '.' or ',') */
char      GUI_GetDecChar(void);
char      GUI_SetDecChar(char c);


/*********************************************************************
*
*       Color / Index related functions
*
**********************************************************************
*/

int       GUI_Color2Index(GUI_COLOR color);
GUI_COLOR GUI_Color2VisColor(GUI_COLOR color);
char      GUI_ColorIsAvailable(GUI_COLOR color);
GUI_COLOR GUI_Index2Color(int Index);
void      GUI_InitLUT(void);
void      GUI_SetLUTEntry (U8 Pos, GUI_COLOR Color);
void      GUI_SetLUTColor (U8 Pos, GUI_COLOR Color);
void      GUI_SetLUTColorEx(U8 Pos, LCD_COLOR Color, unsigned int LayerIndex);
U32       GUI_CalcColorDist (GUI_COLOR Color0, GUI_COLOR  Color1);
U32       GUI_CalcVisColorError(GUI_COLOR color);

/*********************************************************************
*
*       Logging (for debugging primarily)
*
**********************************************************************
*/
void GUI_Log      (const char *s);
void GUI_Log1     (const char *s, int p0);
void GUI_Log2     (const char *s, int p0, int p1);
void GUI_Log3     (const char *s, int p0, int p1, int p2);
void GUI_Log4     (const char *s, int p0, int p1, int p2,int p3);
void GUI_Warn     (const char *s);
void GUI_Warn1    (const char *s, int p0);
void GUI_Warn2    (const char *s, int p0, int p1);
void GUI_Warn3    (const char *s, int p0, int p1, int p2);
void GUI_Warn4    (const char *s, int p0, int p1, int p2, int p3);
void GUI_ErrorOut (const char *s);
void GUI_ErrorOut1(const char *s, int p0);
void GUI_ErrorOut2(const char *s, int p0, int p1);
void GUI_ErrorOut3(const char *s, int p0, int p1, int p2);
void GUI_ErrorOut4(const char *s, int p0, int p1, int p2, int p3);

/*********************************************************************
*
*             2d - GL
*
**********************************************************************
*/

int  GUI_BMP_Draw         (const void * pFileData, int x0, int y0);
int  GUI_BMP_GetXSize     (const void * pFileData);
int  GUI_BMP_GetYSize     (const void * pFileData);
void GUI_Clear            (void);
void GUI_ClearRect        (int x0, int y0, int x1, int y1);
void GUI_ClearRectEx      (const GUI_RECT* pRect);
void GUI_DrawArc          (int x0, int y0, int rx, int ry, int a0, int a1);
void GUI_DrawBitmap       (const GUI_BITMAP GUI_UNI_PTR * pBM, int x0, int y0);
void GUI_DrawBitmapMag    (const GUI_BITMAP GUI_UNI_PTR * pBM, int x0, int y0, int XMul, int YMul);
void GUI_DrawBitmapEx     (const GUI_BITMAP GUI_UNI_PTR * pBitmap, int x0, int y0, int xCenter, int yCenter, int xMag, int yMag);
void GUI_DrawBitmapExp    (int x0, int y0, int XSize, int YSize, int XMul,  int YMul, int BitsPerPixel, int BytesPerLine, const U8 GUI_UNI_PTR * pData, const GUI_LOGPALETTE GUI_UNI_PTR * pPal);
void GUI_DrawCircle       (int x0, int y0, int r);
void GUI_DrawEllipse      (int x0, int y0, int rx, int ry);
void GUI_DrawGraph        (I16 *pay, int NumPoints, int x0, int y0);
void GUI_DrawHLine        (int y0, int x0, int x1);
void GUI_DrawLine         (int x0, int y0, int x1, int y1);
void GUI_DrawLineRel      (int dx, int dy);
void GUI_DrawLineTo       (int x, int y);
void GUI_DrawPie          (int x0, int y0, int r, int a0, int a1, int Type);
void GUI_DrawPixel        (int x, int y);
void GUI_DrawPoint        (int x, int y);
void GUI_DrawPolygon      (const GUI_POINT* pPoints, int NumPoints, int x0, int y0);
void GUI_DrawPolyLine     (const GUI_POINT* pPoints, int NumPoints, int x0, int y0);
void GUI_DrawFocusRect    (const GUI_RECT *pRect, int Dist);
void GUI_DrawRect         (int x0, int y0, int x1, int y1);
void GUI_DrawRectEx       (const GUI_RECT *pRect);
void GUI_DrawVLine        (int x0, int y0, int y1);
void GUI_FillCircle       (int x0, int y0, int r);
void GUI_FillEllipse      (int x0, int y0, int rx, int ry);
void GUI_FillPolygon      (const GUI_POINT* pPoints, int NumPoints, int x0, int y0);
void GUI_FillRect         (int x0, int y0, int x1, int y1);
void GUI_FillRectEx       (const GUI_RECT* pRect);
void GUI_GetClientRect    (GUI_RECT* pRect);
void GUI_InvertRect       (int x0, int y0, int x1, int y1);
void GUI_MoveRel          (int dx, int dy);
void GUI_MoveTo           (int x, int y);

/*********************************************************************
*
*       JPEG support
*
**********************************************************************
*/
typedef struct {
  int XSize;
  int YSize;
} GUI_JPEG_INFO;

int  GUI_JPEG_Draw        (const void * pFileData, int DataSize, int x0, int y0);
int  GUI_JPEG_GetInfo     (const void * pFileData, int DataSize, GUI_JPEG_INFO* pInfo);

/*********************************************************************
*
*              Cursor routines
*
**********************************************************************
*/

typedef struct {
  const GUI_UNI_PTR GUI_BITMAP * pBitmap;
  int xHot, yHot;
} GUI_CURSOR;

#if GUI_SUPPORT_CURSOR
  void               GUI_CURSOR_Activate   (void);
  void               GUI_CURSOR_Deactivate (void);
  void               GUI_CURSOR_Hide       (void);
  void               GUI_CURSOR_SetXor     (const GUI_BITMAP * pBM, int x, int y);
  void               GUI_CURSOR_SetPosition(int x, int y);
  const GUI_CURSOR GUI_UNI_PTR * GUI_CURSOR_Select     (const GUI_CURSOR GUI_UNI_PTR * pCursor);
  void               GUI_CURSOR_Show       (void);
#else
  #define GUI_CURSOR_Show()
  #define GUI_CURSOR_Clear();
#endif

/*********************************************************************
*
*       Cursors and their bitmaps
*
**********************************************************************
*/
extern GUI_CONST_STORAGE GUI_CURSOR GUI_CursorArrowS,  GUI_CursorArrowSI;
extern GUI_CONST_STORAGE GUI_CURSOR GUI_CursorArrowM,  GUI_CursorArrowMI;
extern GUI_CONST_STORAGE GUI_CURSOR GUI_CursorArrowL,  GUI_CursorArrowLI;
extern GUI_CONST_STORAGE GUI_CURSOR GUI_CursorCrossS,  GUI_CursorCrossSI;
extern GUI_CONST_STORAGE GUI_CURSOR GUI_CursorCrossM,  GUI_CursorCrossMI;
extern GUI_CONST_STORAGE GUI_CURSOR GUI_CursorCrossL,  GUI_CursorCrossLI;
extern GUI_CONST_STORAGE GUI_CURSOR GUI_CursorHeaderM, GUI_CursorHeaderMI;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色综合视频一区二区三区高清| 欧美大片一区二区| 日韩一区二区在线看| 国产精品无人区| 久久精工是国产品牌吗| 色综合激情久久| 国产日韩欧美制服另类| 日本最新不卡在线| 欧美在线观看一区二区| 国产精品美女久久久久久| 蜜桃av一区二区在线观看| 欧美午夜精品久久久| 一区免费观看视频| 国产成人精品三级| 久久伊人蜜桃av一区二区| 美国欧美日韩国产在线播放| 欧美日本一道本在线视频| 一区二区在线电影| 色综合咪咪久久| 国产精品电影院| 成人av网在线| 国产精品国产a| 成人一级黄色片| 国产欧美日韩一区二区三区在线观看 | 日韩你懂的在线观看| 亚洲v中文字幕| 欧美唯美清纯偷拍| 亚洲成av人片在线观看无码| 在线欧美一区二区| 亚洲国产精品一区二区尤物区| 91麻豆高清视频| 亚洲美女免费在线| 在线视频国产一区| 夜夜嗨av一区二区三区网页| 在线中文字幕一区二区| 亚洲一区在线观看免费| 欧美吻胸吃奶大尺度电影| 午夜精品aaa| 精品久久久久一区| 国产乱一区二区| 综合久久综合久久| 欧美最新大片在线看| 日日夜夜一区二区| 精品国产乱子伦一区| 国产精品一区三区| 亚洲男人的天堂av| 欧美日韩高清在线播放| 天天综合色天天| 久久众筹精品私拍模特| 成人小视频在线| 亚洲高清视频在线| 精品久久久久久久人人人人传媒 | 午夜视频一区二区| 欧美一卡二卡三卡| 国产盗摄视频一区二区三区| 亚洲视频在线观看一区| 欧美日韩精品一区二区三区| 久久精品国产精品青草| 国产精品网站在线| 欧美视频在线一区| 精品一区二区三区影院在线午夜| 欧美激情资源网| 精品视频全国免费看| 精品一区二区三区免费播放| 国产精品初高中害羞小美女文| 色综合久久中文综合久久牛| 男女视频一区二区| 亚洲天堂2014| 26uuu精品一区二区三区四区在线| av高清不卡在线| 看片的网站亚洲| 亚洲精品ww久久久久久p站| 日韩视频一区二区| 99久久国产综合精品女不卡| 日本中文字幕一区二区视频| 欧美国产激情二区三区| 91麻豆精品国产91久久久久 | 欧美日韩视频在线第一区| 国内精品免费**视频| 亚洲精品欧美激情| 久久久久久久久99精品| 欧美日韩亚洲另类| 91蜜桃在线观看| 成人在线综合网站| 蓝色福利精品导航| 午夜精品久久久久久| 亚洲色图制服丝袜| 欧美极品另类videosde| 欧美一区二区三区在线| 欧美中文字幕一二三区视频| 国产91综合一区在线观看| 免费看日韩a级影片| 一区二区在线免费| 中文字幕精品在线不卡| 欧美大片免费久久精品三p| 色视频成人在线观看免| www.在线成人| 粉嫩嫩av羞羞动漫久久久| 久久国产生活片100| 日韩福利电影在线| 日日夜夜精品视频免费| 亚洲专区一二三| 亚洲自拍另类综合| 一区二区三区在线免费视频 | 久久久99免费| 久久这里只有精品6| 精品国产一区二区在线观看| 91精品婷婷国产综合久久竹菊| 欧美在线视频全部完| 日本丶国产丶欧美色综合| 成人免费高清在线| av电影一区二区| 97se亚洲国产综合自在线观| 99精品视频在线播放观看| 99精品国产视频| 在线观看国产91| 欧美在线视频日韩| 91精品在线一区二区| 日韩一区二区免费视频| 日韩欧美精品在线| 久久蜜臀精品av| 国产精品久久久久婷婷| 自拍视频在线观看一区二区| 亚洲女人小视频在线观看| 尤物视频一区二区| 午夜国产精品一区| 久久综合综合久久综合| 国产伦精品一区二区三区免费| 国产精品1区2区| 91美女片黄在线观看91美女| 欧美日韩午夜在线视频| 日韩欧美精品在线视频| 欧美激情在线看| 亚洲激情自拍偷拍| 青青青爽久久午夜综合久久午夜| 韩国精品在线观看| 不卡av免费在线观看| 欧美午夜一区二区| 欧美mv和日韩mv的网站| 中文字幕高清一区| 午夜精品久久久久久久久| 国产一区二区在线免费观看| 91在线小视频| 欧美一区二区久久久| 国产欧美一区二区三区网站| 一区二区三区欧美在线观看| 久久不见久久见免费视频1| 99久久综合色| 欧美一区二区在线播放| 国产女同性恋一区二区| 日日夜夜免费精品视频| 成人av资源在线| 日韩精品一区二| 亚洲精品成人悠悠色影视| 久久99精品一区二区三区三区| 91女人视频在线观看| 欧美va亚洲va| 亚洲综合色自拍一区| 国产一区二区在线观看视频| 欧美最猛性xxxxx直播| 久久久久88色偷偷免费| 亚瑟在线精品视频| 99久久久精品| 久久久99精品久久| 日韩高清一区在线| 91蜜桃传媒精品久久久一区二区| 2024国产精品| 日本aⅴ亚洲精品中文乱码| 在线视频综合导航| 中文字幕成人在线观看| 轻轻草成人在线| 欧美日韩国产综合视频在线观看| 国产精品三级电影| 国产在线播精品第三| 欧美一区二区三区啪啪| 亚洲精品大片www| 99久久精品国产麻豆演员表| 久久久久久久久99精品| 精品一区二区影视| 日韩一区二区三区免费看 | 欧美网站一区二区| 亚洲欧美激情在线| 成人的网站免费观看| 精品奇米国产一区二区三区| 五月天久久比比资源色| 欧美中文一区二区三区| 亚洲精品视频在线看| 99久久久久久99| 亚洲色欲色欲www在线观看| 成人精品小蝌蚪| 国产日韩欧美一区二区三区乱码| 蜜桃视频第一区免费观看| 欧美一区二区三区在| 日本网站在线观看一区二区三区| 欧美色手机在线观看| 亚洲va欧美va人人爽| 欧美亚洲国产一卡| 一区二区三区美女视频| 在线观看免费一区| 亚洲成av人片在www色猫咪|