Esempio n. 1
0
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;
}
Esempio n. 2
0
/*********************************************************************
*
*       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();
  }
}
Esempio n. 3
0
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
}
Esempio n. 4
0
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);
}
Esempio n. 5
0
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();
}