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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? widget.h

?? UC_GUI開發(fā)源代碼,里面含有范例,源文件
?? H
字號(hào):
/*
*********************************************************************************************************
*                                             uC/GUI V3.98
*                        Universal graphic software for embedded applications
*
*                       (c) Copyright 2002, Micrium Inc., Weston, FL
*                       (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
*
*              礐/GUI is protected by international copyright laws. Knowledge of the
*              source code may not be used to write a similar product. This file may
*              only be used in accordance with a license and should not be redistributed
*              in any way. We appreciate your understanding and fairness.
*
----------------------------------------------------------------------
File        : WIDGET.h
Purpose     : Widget interface
---------------------------END-OF-HEADER------------------------------
*/

#ifndef WIDGET_H        /* Avoid multiple inclusion  */
#define WIDGET_H

#if defined(__cplusplus)
extern "C" {     /* Make sure we have C-declarations in C++ programs */
#endif

#include "WM_Intern.h"  /* Window manager, including some internals, which speed things up */

#if GUI_WINSUPPORT

#include "SCROLLBAR.h"


/*********************************************************************
*
*       Defines
*
**********************************************************************
*/
/*********************************************************************
*
*       Unique widget id's
*/
#define BUTTON_ID    0x42555454 /* BUTT */
#define CHECKBOX_ID  0x43484543 /* CHEC */
#define DROPDOWN_ID  0x44524f50 /* DROP */
#define EDIT_ID      0x45444954 /* EDIT */
#define FRAMEWIN_ID  0x4652414d /* FRAM */
#define GRAPH_ID     0x47524150 /* GRAP */
#define HEADER_ID    0x48454144 /* HEAD */
#define LISTBOX_ID   0x4C495342 /* LISB */
#define LISTVIEW_ID  0x4C495356 /* LISV */
#define MENU_ID      0x4d454e55 /* MENU */
#define MULTIEDIT_ID 0x4d554c45 /* MULE */
#define MULTIPAGE_ID 0x4d554c50 /* MULP */
#define PROGBAR_ID   0x50524f47 /* PROG */
#define RADIO_ID     0x52414449 /* RADI */
#define SCROLLBAR_ID 0x5343524f /* SCRO */
#define SLIDER_ID    0x534c4944 /* SLID */
#define TEXT_ID      0x54455854 /* TEXT */

#define WIDGET_H2P(hWin)        ((WIDGET*)GUI_ALLOC_h2p(hWin))

/*********************************************************************
*
*       Config switches
*/

#ifndef   WIDGET_USE_PARENT_EFFECT
  #define WIDGET_USE_PARENT_EFFECT 0
#endif
#if !defined(WIDGET_USE_SCHEME_SMALL) && !defined(WIDGET_USE_SCHEME_MEDIUM) && !defined(WIDGET_USE_SCHEME_LARGE)
  #define WIDGET_USE_SCHEME_SMALL  1
  #define WIDGET_USE_SCHEME_MEDIUM 0
  #define WIDGET_USE_SCHEME_LARGE  0
#endif
#ifndef   WIDGET_USE_SCHEME_SMALL
  #define WIDGET_USE_SCHEME_SMALL  0
#endif
#ifndef   WIDGET_USE_SCHEME_MEDIUM
  #define WIDGET_USE_SCHEME_MEDIUM 0
#endif
#ifndef   WIDGET_USE_SCHEME_LARGE
  #define WIDGET_USE_SCHEME_LARGE  0
#endif
#if (WIDGET_USE_SCHEME_SMALL + WIDGET_USE_SCHEME_MEDIUM + WIDGET_USE_SCHEME_LARGE) > 1
  #error Only one scheme can be selected!
#endif

/*********************************************************************
*
*       States
*/

#define WIDGET_STATE_FOCUS              (1<<0)
#define WIDGET_STATE_VERTICAL           (1<<3)
#define WIDGET_STATE_FOCUSSABLE         (1<<4)

#define WIDGET_STATE_USER0              (1<<8)    /* Freely available for derived widget */
#define WIDGET_STATE_USER1              (1<<9)    /* Freely available for derived widget */
#define WIDGET_STATE_USER2              (1<<10)   /* Freely available for derived widget */

#define WIDGET_ITEM_DRAW                0
#define WIDGET_ITEM_GET_XSIZE           1
#define WIDGET_ITEM_GET_YSIZE           2

/*********************************************************************
*
*       Messages
*/

#define WM_WIDGET_SET_EFFECT    WM_WIDGET + 0

/*********************************************************************
*
*       Create flags
*/

#define WIDGET_CF_VERTICAL      WIDGET_STATE_VERTICAL

/*********************************************************************
*
*         typedefs
*
**********************************************************************
*/

typedef struct {
  WM_HWIN hWin;
  int     Cmd;         /* WIDGET_ITEM_GET_XSIZE, WIDGET_ITEM_GET_YSIZE, WIDGET_ITEM_DRAW, */
  int     ItemIndex;
  int     x0, y0;
} WIDGET_ITEM_DRAW_INFO;

typedef int WIDGET_DRAW_ITEM_FUNC(const WIDGET_ITEM_DRAW_INFO * pDrawItemInfo);


/*********************************************************************
*
*         Widget object
*
* The widget object is the base class for most widgets
*/
typedef struct {
  void  (*pfDrawUp)(void);
  void  (*pfDrawDown)(void);
  void  (*pfDrawUpRect)  (const GUI_RECT *pRect);
  void  (*pfDrawDownRect)(const GUI_RECT *pRect);
  void  (*pfGetRect)(GUI_RECT *pRect);
  int EffectSize;
} WIDGET_EFFECT;

typedef struct {
  WM_Obj      Win;
  const WIDGET_EFFECT* pEffect;
  I16 Id;
  U16 State;
} WIDGET;


/*********************************************************************
*
*         GUI_DRAW
*
* The GUI_DRAW object is used as base class for selfdrawing,
* non-windows objects. They are used as content of different widgets,
* such as the bitmap or header widgets.
*/
/* Declare Object struct */
typedef struct GUI_DRAW GUI_DRAW;
typedef void   GUI_DRAW_SELF_CB (void);
/* Declare Object constants (member functions etc)  */
typedef struct {
  void (* pfDraw)    (const GUI_DRAW * pObj, int x, int y);
  int  (* pfGetXSize)(const GUI_DRAW * pObj);
  int  (* pfGetYSize)(const GUI_DRAW * pObj);
} GUI_DRAW_CONSTS;

/* Declare Object */
struct GUI_DRAW {
  const GUI_DRAW_CONSTS* pConsts;
  union {
    const void * pData;
    GUI_DRAW_SELF_CB* pfDraw;
  } Data;
  I16 xOff, yOff;
};

typedef WM_HMEM GUI_DRAW_HANDLE;

/* GUI_DRAW_ API */
void GUI_DRAW__Draw    (GUI_DRAW_HANDLE hDrawObj, int x, int y);
int  GUI_DRAW__GetXSize(GUI_DRAW_HANDLE hDrawObj);
int  GUI_DRAW__GetYSize(GUI_DRAW_HANDLE hDrawObj);

/* GUI_DRAW_ Constructurs for different objects */
WM_HMEM GUI_DRAW_BITMAP_Create  (const GUI_BITMAP* pBitmap, int x, int y);
WM_HMEM GUI_DRAW_BMP_Create     (const void* pBMP, int x, int y);
WM_HMEM GUI_DRAW_STREAMED_Create(const GUI_BITMAP_STREAM * pBitmap, int x, int y);
WM_HMEM GUI_DRAW_SELF_Create(GUI_DRAW_SELF_CB* pfDraw, int x, int y);

/*********************************************************************
*
*           Global data
*
**********************************************************************
*/

extern const WIDGET_EFFECT WIDGET_Effect_3D;
extern const WIDGET_EFFECT WIDGET_Effect_3D1L;
extern const WIDGET_EFFECT WIDGET_Effect_3D2L;
extern const WIDGET_EFFECT WIDGET_Effect_None;
extern const WIDGET_EFFECT WIDGET_Effect_Simple;

/*********************************************************************
*
*           Internal API routines
*
**********************************************************************
*/

void      WIDGET__DrawFocusRect(WIDGET* pWidget, const GUI_RECT* pRect, int Dist);
void      WIDGET__DrawVLine(WIDGET* pWidget, int x, int y0, int y1);
void      WIDGET__EFFECT_DrawDownRect(WIDGET* pWidget, GUI_RECT* pRect);
void      WIDGET__EFFECT_DrawDown(WIDGET* pWidget);
void      WIDGET__EFFECT_DrawUpRect(WIDGET* pWidget, GUI_RECT* pRect);
void      WIDGET__FillRectEx(WIDGET* pWidget, const GUI_RECT* pRect);
int       WIDGET__GetWindowSizeX(WM_HWIN hWin);
GUI_COLOR WIDGET__GetBkColor(WM_HWIN hObj);
int       WIDGET__GetXSize(const WIDGET* pWidget);
int       WIDGET__GetYSize(const WIDGET* pWidget);
void      WIDGET__GetClientRect(WIDGET* pWidget, GUI_RECT* pRect);
void      WIDGET__GetInsideRect(WIDGET* pWidget, GUI_RECT* pRect);
void      WIDGET__Init(WIDGET* pWidget, int Id, U16 State);
void      WIDGET__RotateRect90(WIDGET* pWidget, GUI_RECT* pDest, const GUI_RECT* pRect);
void      WIDGET__SetScrollState(WM_HWIN hWin, const WM_SCROLL_STATE* pVState, const WM_SCROLL_STATE* pState);
void      WIDGET__FillStringInRect(const char GUI_UNI_PTR * pText, const GUI_RECT * pFillRect, const GUI_RECT * pTextRectMax, const GUI_RECT * pTextRectAct);

/*********************************************************************
*
*           API routines
*
**********************************************************************
*/
void  WIDGET_SetState     (WM_HWIN hObj, int State);
void  WIDGET_AndState     (WM_HWIN hObj, int State);
void  WIDGET_OrState      (WM_HWIN hObj, int State);
int   WIDGET_HandleActive (WM_HWIN hObj, WM_MESSAGE* pMsg);
int   WIDGET_GetState     (WM_HWIN hObj);
int   WIDGET_SetWidth     (WM_HWIN hObj, int Width);

void  WIDGET_EFFECT_3D_DrawUp(void);

void  WIDGET_SetDefaultEffect_3D    (void);
void  WIDGET_SetDefaultEffect_3D1L  (void);
void  WIDGET_SetDefaultEffect_3D2L  (void);
void  WIDGET_SetDefaultEffect_None  (void);
void  WIDGET_SetDefaultEffect_Simple(void);

const WIDGET_EFFECT* WIDGET_SetDefaultEffect(const WIDGET_EFFECT* pEffect);

void  WIDGET_SetEffect              (WM_HWIN hObj, const WIDGET_EFFECT* pEffect);

const WIDGET_EFFECT* WIDGET_GetDefaultEffect(void);
int   WIDGET_SetWidth(WM_HWIN hObj, int Width);


#endif /* GUI_WINSUPPORT */

#if defined(__cplusplus)
  }
#endif

#endif   /* SLIDER_H */



	 	 			 		    	 				 	  			   	 	 	 	 	 	  	  	      	   		 	 	 		  		  	 		 	  	  			     			       	   	 			  		    	 	     	 				  	 					 	 			   	  	  			 				 		 	 	 			     			 

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩dvd在线观看| 依依成人精品视频| 欧美丰满少妇xxxxx高潮对白 | 日韩欧美中文字幕公布| 欧洲精品在线观看| 色婷婷综合久久| 欧美天堂一区二区三区| 欧美影院一区二区| 欧洲人成人精品| 69精品人人人人| 欧美挠脚心视频网站| 91精品国产综合久久久蜜臀粉嫩| 欧美色窝79yyyycom| 欧洲视频一区二区| 欧美一二三区在线| 日韩免费成人网| 国产亚洲综合av| 中文字幕欧美国产| 综合自拍亚洲综合图不卡区| 亚洲婷婷在线视频| 香蕉成人伊视频在线观看| 亚洲va中文字幕| 久久国产尿小便嘘嘘尿| 国产成人在线观看| 色www精品视频在线观看| 这里只有精品免费| 国产亚洲va综合人人澡精品| 综合久久综合久久| 三级成人在线视频| 国产成人小视频| 欧美日韩亚洲国产综合| 欧美成人激情免费网| 国产精品国产三级国产aⅴ原创 | 91超碰这里只有精品国产| 精品人在线二区三区| 久久久久久久久久久99999| 国产精品国产自产拍高清av| 性久久久久久久久久久久| 久久99国产精品麻豆| 91碰在线视频| 日韩三级高清在线| 一区二区三区四区在线免费观看| 免费观看久久久4p| 在线中文字幕不卡| 日韩美女视频在线| 亚洲电影激情视频网站| 国产.欧美.日韩| 日韩你懂的在线播放| 亚洲免费视频成人| 国产精品99久久久久| 欧美久久一二三四区| 国产精品毛片a∨一区二区三区| 亚洲福中文字幕伊人影院| 国产91丝袜在线播放| 91精品国产综合久久香蕉麻豆| 欧美激情一区在线观看| 毛片基地黄久久久久久天堂| 91成人国产精品| 一区视频在线播放| 国产成人av福利| 欧美成人精品高清在线播放| 午夜精品久久久久久久久久| 99精品久久久久久| 精品国产精品一区二区夜夜嗨| 亚洲午夜一区二区| 色老综合老女人久久久| 欧美国产欧美亚州国产日韩mv天天看完整| 亚洲bdsm女犯bdsm网站| 日本精品免费观看高清观看| 国产欧美一区二区精品性色超碰| 蜜臀av性久久久久av蜜臀妖精| 欧美日韩在线播放三区| 亚洲精品综合在线| 91啪亚洲精品| 亚洲一区二区三区自拍| 日本久久电影网| 亚洲欧美日韩国产另类专区| 不卡av电影在线播放| 国产精品三级av| 成人av在线网| 亚洲欧美一区二区不卡| 99精品欧美一区二区蜜桃免费| 日韩美女视频一区二区| 色婷婷综合久久久中文一区二区| 亚洲视频免费在线观看| 欧美中文一区二区三区| 午夜精品久久久久久久久久| 91精品国产高清一区二区三区 | 26uuu另类欧美亚洲曰本| 另类小说欧美激情| 久久久噜噜噜久久中文字幕色伊伊 | 亚洲国产日日夜夜| 99国产欧美另类久久久精品| 91亚洲大成网污www| 亚洲国产人成综合网站| 欧美日韩小视频| 日韩国产欧美在线观看| 欧美精品一二三四| 天天影视色香欲综合网老头| 欧美日韩国产在线播放网站| 男男视频亚洲欧美| 欧美α欧美αv大片| 激情深爱一区二区| 久久精品人人做| 成人午夜视频福利| 久久久美女艺术照精彩视频福利播放 | 精品国产污网站| 国产成人综合在线观看| 久久先锋影音av鲁色资源网| 国产精品影视天天线| 国产精品久久久久久久久免费樱桃 | 国产精品视频观看| 91成人网在线| 亚洲电影欧美电影有声小说| 欧美猛男超大videosgay| 喷白浆一区二区| 国产三级精品三级| 99免费精品视频| 久久精品99久久久| 国产精品欧美经典| 在线观看国产日韩| 狠狠久久亚洲欧美| 一区二区三区在线影院| 精品国产一区二区亚洲人成毛片| 国产老妇另类xxxxx| 亚洲色图另类专区| 日韩欧美在线不卡| 成人黄色大片在线观看| 日韩精品一二三四| 亚洲精品乱码久久久久久 | 日本一区二区电影| 欧美日韩亚洲综合一区| 国产福利一区在线观看| 麻豆一区二区在线| 中文字幕亚洲成人| 日韩欧美中文一区| 欧美偷拍一区二区| 风间由美一区二区三区在线观看| 一区二区三区国产精华| 久久丝袜美腿综合| 精品剧情v国产在线观看在线| 99精品一区二区三区| 久久99国内精品| 亚洲高清免费在线| 日韩一区有码在线| 国产午夜亚洲精品理论片色戒| 宅男噜噜噜66一区二区66| 色综合夜色一区| 国产精品18久久久久| 中文字幕在线一区二区三区| 中文字幕欧美三区| 欧美精品一区二区三| 欧美肥妇毛茸茸| 欧美图区在线视频| 色妹子一区二区| 欧美日韩一区二区三区在线| av激情综合网| 国产成人精品午夜视频免费| 亚洲一区二区三区不卡国产欧美| 欧美国产激情二区三区| 久久综合久久鬼色| 欧美三级日韩三级| 91一区一区三区| 成人av在线资源网| av毛片久久久久**hd| 国产一区二区三区在线观看免费视频| 天天操天天综合网| 日韩在线一区二区三区| 亚洲一区二区高清| 中文字幕日本不卡| 亚洲免费在线观看视频| 亚洲欧美一区二区不卡| 亚洲老司机在线| 亚洲成国产人片在线观看| 亚洲一区二区三区视频在线| 1024国产精品| 91精品久久久久久蜜臀| 91精品国产91综合久久蜜臀| 日韩视频中午一区| 久久久美女艺术照精彩视频福利播放| 色综合天天做天天爱| 欧美成人精品1314www| 欧美精品一区二区蜜臀亚洲| 国产日韩精品久久久| 中文字幕亚洲一区二区av在线| 欧美一区二区视频免费观看| 91精品欧美久久久久久动漫| 91麻豆成人久久精品二区三区| 国产成人小视频| 色8久久精品久久久久久蜜| 盗摄精品av一区二区三区| 欧亚一区二区三区| 91黄色在线观看| 欧美三区在线视频| 欧美日本免费一区二区三区| 91 com成人网| 国产亚洲一本大道中文在线| 中文字幕免费一区| 亚洲午夜久久久久久久久电影网 | 成人不卡免费av|