unsigned int GUI_SelLCD(unsigned int Index) { unsigned int OldIndex = 0; if (Index < LCD_NUM_DISPLAYS) { GUI_LOCK(); GUI_SetDefault(); OldIndex = (GUI_Context.pDeviceAPI == aAPI[0]) ? 0 : 1; GUI_Context.pDeviceAPI = aAPI[Index]; LCD_SetClipRectMax(); } GUI_UNLOCK(); return OldIndex; }
/********************************************************************* * * GUI_MEASDEV_Select */ void GUI_MEASDEV_Select(GUI_MEASDEV_Handle hMem) { if (hMem == 0) { GUI_SelectLCD(); } else { #if GUI_WINSUPPORT WM_Deactivate(); #endif GUI_Context.hDevData = hMem; GUI_Context.pDeviceAPI = &_APIList; GUI_Context.pClipRect_HL = NULL; LCD_SetClipRectMax(); } }
void GUI_SelectLCD(void) { int hDevDataOld = GUI_Context.hDevData; GUI_Context.hDevData = 0; GUI_Context.pDeviceAPI = &LCD_L0_APIList; GUI_Context.pClipRect_HL = &GUI_Context.ClipRect; LCD_SetClipRectMax(); /* If we are switching batck, restore the former clip rect */ if (hDevDataOld) GUI_Context.ClipRect = GUI_Context.ClipRectPrev; #if GUI_WINSUPPORT WM_Activate(); #endif }
static void _InitContext(GUI_CONTEXT* pContext) { #if GUI_SUPPORT_MEMDEV GUI_SelectLCD(); #else LCD_SetClipRectMax(); #endif pContext->pLCD_HL = &LCD_HL_APIList; pContext->pAFont = GUI_DEFAULT_FONT; pContext->pClipRect_HL = &GUI_Context.ClipRect; pContext->PenSize = 1; /* Variables in WM module */ #if GUI_WINSUPPORT pContext->hAWin = WM_GetDesktopWindow(); #endif /* Variables in GUI_AA module */ pContext->AA_Factor = 3; LCD_SetBkColor(GUI_DEFAULT_BKCOLOR); LCD_SetColor(GUI_DEFAULT_COLOR); }
void GUI_MEMDEV_SetOrg(GUI_MEMDEV_Handle hMem, int x0, int y0) { /* Make sure memory handle is valid */ if (!hMem) { if ((hMem = GUI_Context.hDevData) ==0) { return; } } GUI_LOCK(); { GUI_MEMDEV* pDev = GUI_MEMDEV_h2p(hMem); /* Convert to pointer */ pDev->y0 = y0; pDev->x0 = x0; LCD_SetClipRectMax(); /* Move usage along */ if (pDev->hUsage) { GUI_USAGE* pUsage = GUI_USAGE_h2p(pDev->hUsage); if (((pUsage->XSize = pDev->XSize) != 0) && ((pUsage->YSize = pDev->YSize) != 0)) { pUsage->x0 = x0; pUsage->y0 = y0; } } } GUI_UNLOCK(); }