?? guidev_measure.lst
字號:
static void _FillPolygon(const GUI_POINT* paPoint, int NumPoints, int x0, int y0) {
GUI_RECT r;
CalcPolyRect(&r, paPoint, NumPoints);
GUI_MoveRect(&r, x0, y0);
_MarkRect(r.x0, r.y0, r.x1, r.y1);
}
static void _FillPolygonAA(const GUI_POINT* paPoint, int NumPoints, int x0, int y0) {
GUI_RECT r;
CalcPolyRect(&r, paPoint, NumPoints);
C51 COMPILER V8.05a GUIDEV_MEASURE 04/11/2008 14:19:29 PAGE 4
GUI_MoveRect(&r, x0, y0);
if (GUI_Context.AA_HiResEnable) {
r.x0 /= GUI_Context.AA_Factor;
r.y0 /= GUI_Context.AA_Factor;
r.x1 = (r.x1 + GUI_Context.AA_Factor -1) / GUI_Context.AA_Factor;
r.y1 = (r.y1 + GUI_Context.AA_Factor -1) / GUI_Context.AA_Factor;
}
_MarkRect(r.x0, r.y0, r.x1, r.y1);
}
/*********************************************************************
*
* Device structure
*
**********************************************************************
*/
static const tLCDDEV_APIList _APIList = {
_Color2Index,
_DrawBitmap,
_DrawHLine,
_DrawVLine,
_FillRect,
_GetPixelIndex,
_GetRect,
_Index2Color,
_SetPixelIndex,
_XorPixel,
_FillPolygon,
_FillPolygonAA
};
/*
*********************************************************
*
* Exported routines
*
*********************************************************
*/
/*
*************************************************
* *
* Delete *
* *
*************************************************
*/
void GUI_MEASDEV_Delete (GUI_MEASDEV_Handle hMemDev) {
/* Make sure memory device is not used */
if ((GUI_Context.hDevData = hMemDev) != 0)
GUI_SelectLCD();
GUI_ALLOC_FREE(hMemDev);
}
/*
*************************************************
* *
* Clear Rectangle *
C51 COMPILER V8.05a GUIDEV_MEASURE 04/11/2008 14:19:29 PAGE 5
* *
*************************************************
*/
void GUI_MEASDEV_ClearRect (GUI_MEASDEV_Handle hMemDev) {
if (hMemDev) {
GUI_MEASDEV* pDevData = (GUI_MEASDEV*)GUI_ALLOC_H2P(hMemDev);
pDevData->rUsed.x0 = GUI_XMAX;
pDevData->rUsed.y0 = GUI_YMAX;
pDevData->rUsed.x1 = GUI_XMIN;
pDevData->rUsed.y1 = GUI_YMIN;
}
}
/*
*************************************************
* *
* Create *
* *
*************************************************
*/
GUI_MEASDEV_Handle GUI_MEASDEV_Create (void) {
int MemSize;
GUI_MEASDEV_Handle hMemDev;
MemSize = sizeof(GUI_MEASDEV);
hMemDev = GUI_ALLOC_ALLOC(MemSize);
if (hMemDev) {
GUI_MEASDEV* pDevData = (GUI_MEASDEV*)GUI_ALLOC_H2P(hMemDev);
pDevData->pfColor2Index = GUI_Context.pDeviceAPI->pfColor2Index;
pDevData->pfIndex2Color = GUI_Context.pDeviceAPI->pfIndex2Color;
GUI_MEASDEV_ClearRect(hMemDev);
} else {
GUI_DEBUG_WARN("GUI_MEASDEV_Create: Alloc failed");
}
return hMemDev;
}
/*
*************************************************
* *
* Select *
* *
*************************************************
*/
void GUI_MEASDEV_Select(GUI_MEASDEV_Handle hMem) {
GUI_SelectLCD();
} else {
#if GUI_WINSUPPORT
WM_Deactivate();
#endif
GUI_Context.hDevData = hMem;
GUI_Context.pDeviceAPI = &_APIList;
GUI_Context.pClipRect_HL = NULL;
LCD_SetClipRectMax();
}
}
C51 COMPILER V8.05a GUIDEV_MEASURE 04/11/2008 14:19:29 PAGE 6
/*
*************************************************
* *
* GetRect
* *
*************************************************
*/
void GUI_MEASDEV_GetRect(GUI_MEASDEV_Handle hMem, GUI_RECT *pRect) {
if (hMem) {
GUI_MEASDEV* pDev = (GUI_MEASDEV*)GUI_ALLOC_H2P(hMem);
if (pRect) {
pRect->x0 = pDev->rUsed.x0;
pRect->y0 = pDev->rUsed.y0;
pRect->x1 = pDev->rUsed.x1;
pRect->y1 = pDev->rUsed.y1;
}
}
}
#else
325
326 void GUIDEV_Measure(void) {} /* avoid empty object files */
327
328 #endif /* GUI_MEMDEV_SUPPORT */
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 1 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -