/******************************************************************* * * _DrawEye */ static void _DrawEye(int xPos0, int yPos0, int xPos1, int yPos1, int rx, int ry) { int Hyp; int dx; int dy; int x; int y; GUI_SetColor(GUI_WHITE); GUI_FillEllipse(xPos0, yPos0, rx, ry); GUI_SetColor(GUI_BLACK); GUI_DrawEllipse(xPos0, yPos0, rx, ry); // // Calculate the coordinates // dx = xPos1 - xPos0 + 1; dy = yPos1 - yPos0 + 1; Hyp = GUI__sqrt32(dx * dx + dy * dy); x = (dx * _Min(rx - 5, abs(dx)) * FACTOR / Hyp) + xPos0 * FACTOR; y = (dy * _Min(ry - 5, abs(dy)) * FACTOR / Hyp) + yPos0 * FACTOR; // // Draw the pupil // GUI_AA_SetFactor(FACTOR); GUI_AA_EnableHiRes(); GUI_SetColor(0xD00000); GUI_AA_FillCircle(x, y, (int)(5.75 * FACTOR)); GUI_SetColor(GUI_BLACK); GUI_AA_FillCircle(x, y, (int)(3.75 * FACTOR)); GUI_SetColor(GUI_GRAY); GUI_AA_FillCircle(x - (int)(1.25 * FACTOR), y - (int)(1.25 * FACTOR), (int)(1.25 * FACTOR)); GUI_AA_DisableHiRes(); }
void GUIDEMO_Circle(void) { int XSize = LCD_GetXSize(); int YSize = LCD_GetYSize(); GUIDEMO_ShowIntro("Circles", "\nArbitrary circles" "\nand arcs."); GUI_Clear(); GUI_SetFont(&GUI_Font8x16); GUI_SetColor(GUI_WHITE); #if GUIDEMO_LARGE GUI_DispStringAt("Circle", 0, 0); #endif GUI_FillCircle (XSize / 2, YSize / 2, 50); GUIDEMO_Wait(); GUI_SetDrawMode(GUI_DM_XOR); GUI_FillCircle (XSize / 2, YSize / 2, 60); GUI_SetDrawMode(0); GUIDEMO_Wait(); #if GUI_SUPPORT_AA #if GUIDEMO_LARGE GUIDEMO_ShowInfo("Circles with\nAntialiasing"); #endif GUI_Clear(); GUI_SetColor(GUI_WHITE); #if GUIDEMO_LARGE GUI_DispStringAt("Antialiased\ncircle", 0, 0); #endif GUI_AA_FillCircle(XSize / 2, YSize / 2, 47); GUIDEMO_Wait(); #endif }
/** * @brief Paints menu button * @param hObj: button handle * @retval None */ static void _OnPaint_menu(BUTTON_Handle hObj) { GUI_SetColor(GUI_STCOLOR_LIGHTBLUE); GUI_AA_FillCircle(100, 0, 100); GUI_SetBkColor(GUI_STCOLOR_LIGHTBLUE); GUI_SetColor(GUI_WHITE); GUI_SetFont(&GUI_FontLubalGraph32); GUI_DispStringAt("Menu", 20, 20); }
/** * @brief Paints exit button * @param hObj: button handle * @retval None */ static void _OnPaint_exit1(BUTTON_Handle hObj) { GUI_SetColor(GUI_STCOLOR_LIGHTBLUE); GUI_AA_FillCircle(0, 100, 100); GUI_SetBkColor(GUI_STCOLOR_LIGHTBLUE); GUI_SetColor(GUI_WHITE); GUI_SetFont(&GUI_FontLubalGraph32); GUI_DispStringAt("back", 10, 35); }
/** * @brief Paints exit1 button * @param hObj: button handle * @retval None */ static void _OnPaint_exit1(BUTTON_Handle hObj) { GUI_SetBkColor(GUI_TRANSPARENT); GUI_Clear(); if((WIDGET_GetState(hObj) & BUTTON_STATE_PRESSED)) { GUI_SetColor(GUI_DARKGRAY); GUI_AA_FillCircle(0, 100, 100); GUI_SetBkColor(GUI_DARKGRAY); GUI_SetColor(GUI_WHITE); } else { GUI_SetColor(GUI_STCOLOR_LIGHTBLUE); GUI_AA_FillCircle(0, 100, 100); GUI_SetBkColor(GUI_STCOLOR_LIGHTBLUE); GUI_SetColor(GUI_WHITE); } GUI_SetFont(&GUI_FontLubalGraph32); GUI_DispStringAt("back", 10, 35); }
/** * @brief Paints ok playlist button * @param hObj: button handle * @retval None */ static void _OnPaint_okMessage(BUTTON_Handle hObj) { GUI_SetBkColor(GUI_WHITE); GUI_Clear(); GUI_SetColor(GUI_STCOLOR_LIGHTBLUE); GUI_AA_FillCircle(35, 35, 35); GUI_SetBkColor(GUI_STCOLOR_LIGHTBLUE); GUI_SetColor(GUI_WHITE); GUI_SetFont(&GUI_FontLubalGraph20B); GUI_DispStringAt("OK", 20, 15); }
/** * @brief Paints add to playlist button * @param hObj: button handle * @retval None */ static void _OnPaint_add2PL(BUTTON_Handle hObj) { GUI_SetBkColor(GUI_WHITE); GUI_Clear(); GUI_SetColor(GUI_STCOLOR_LIGHTBLUE); GUI_AA_FillCircle(35, 35, 35); GUI_SetBkColor(GUI_STCOLOR_LIGHTBLUE); GUI_SetColor(GUI_WHITE); GUI_SetFont(&GUI_FontLubalGraph16B); GUI_DispStringAt("Add", 36, 12); }
/** * @brief Paints exit button * @param hObj: button handle * @retval None */ static void _OnPaint_menu(BUTTON_Handle hObj) { GUI_SetBkColor(GUI_TRANSPARENT); GUI_Clear(); GUI_SetColor(GUI_STCOLOR_LIGHTBLUE); GUI_AA_FillCircle(60, 0, 60); GUI_SetBkColor(GUI_STCOLOR_LIGHTBLUE); GUI_SetColor(GUI_WHITE); GUI_SetFont(&GUI_FontLubalGraph16B); GUI_DispStringAt("Menu", 15, 13); }
/** * @brief Paints exit button * @param hObj: button handle * @retval None */ static void _OnPaint_exit1(BUTTON_Handle hObj) { GUI_SetBkColor(GUI_TRANSPARENT); GUI_Clear(); GUI_SetColor(GUI_STCOLOR_LIGHTBLUE); GUI_AA_FillCircle(0, 60, 60); GUI_SetBkColor(GUI_STCOLOR_LIGHTBLUE); GUI_SetColor(GUI_WHITE); GUI_SetFont(&GUI_FontLubalGraph16B); GUI_DispStringAt("back", 8, 23); }
/** * @brief Paints exit button * @param hObj: button handle * @retval None */ static void _OnPaint_exit(BUTTON_Handle hObj) { GUI_SetBkColor(FRAMEWIN_GetDefaultClientColor()); GUI_Clear(); GUI_SetColor(GUI_STCOLOR_LIGHTBLUE); GUI_AA_FillCircle(60, 0, 60); GUI_SetBkColor(GUI_STCOLOR_LIGHTBLUE); GUI_SetColor(GUI_WHITE); GUI_SetFont(&GUI_FontLubalGraph16); GUI_DispStringAt("Menu", 15, 13); }
/** * @brief Paints ok playlist button * @param hObj: button handle * @retval None */ static void _OnPaint_okMessage(BUTTON_Handle hObj) { GUI_SetBkColor(GUI_WHITE); GUI_Clear(); GUI_SetColor(0x00DCA939); GUI_AA_FillCircle(45, 45, 45); GUI_SetBkColor(0x00DCA939); GUI_SetColor(GUI_WHITE); GUI_SetFont(&GUI_Font20B_1); GUI_DispStringAt("OK", 30, 20); }
/** * @brief Paints exit button * @param hObj: button handle * @retval None */ static void _OnPaint_exit(BUTTON_Handle hObj) { GUI_SetBkColor(FRAMEWIN_GetDefaultClientColor()); GUI_Clear(); GUI_SetColor(0x00DCA939); GUI_AA_FillCircle(70, 0, 70); GUI_SetBkColor(0x00DCA939); GUI_SetColor(GUI_WHITE); GUI_SetFont(&GUI_Font20B_1); GUI_DispStringAt("Menu", 10, 15); }
/** * @brief Paints add to playlist button * @param hObj: button handle * @retval None */ static void _OnPaint_add2PL(BUTTON_Handle hObj) { GUI_SetBkColor(GUI_WHITE); GUI_Clear(); GUI_SetColor(0x00DCA939); GUI_AA_FillCircle(45, 45, 45); GUI_SetBkColor(0x00DCA939); GUI_SetColor(GUI_WHITE); GUI_SetFont(&GUI_Font20B_1); GUI_DispStringAt("Add", 47, 20); }
/** * @brief Paints exit button * @param hObj: button handle * @retval None */ static void _OnPaint_menu(BUTTON_Handle hObj) { GUI_SetBkColor(GUI_TRANSPARENT); GUI_Clear(); GUI_SetColor(0x00DCA939); GUI_AA_FillCircle(65, 0, 65); GUI_SetBkColor(0x00DCA939); GUI_SetColor(GUI_WHITE); GUI_SetFont(&GUI_Font20B_1); GUI_DispStringAt("Menu", 20, 15); }
/** * @brief Paints exit button * @param hObj: button handle * @retval None */ static void _OnPaint_exit1(BUTTON_Handle hObj) { GUI_SetBkColor(GUI_TRANSPARENT); GUI_Clear(); GUI_SetColor(0x00DCA939); GUI_AA_FillCircle(0, 65, 65); GUI_SetBkColor(0x00DCA939); GUI_SetColor(GUI_WHITE); GUI_SetFont(&GUI_Font20B_1); GUI_DispStringAt("back", 5, 25); }
/** * @brief Paints ok message button * @param hObj: button handle * @retval None */ static void _OnPaint_okMessage(BUTTON_Handle hObj) { GUI_SetBkColor(GUI_WHITE); GUI_Clear(); if((WIDGET_GetState(hObj) & BUTTON_STATE_PRESSED)) { GUI_SetColor(GUI_DARKGRAY); GUI_AA_FillCircle(60, 60, 50); GUI_SetBkColor(GUI_DARKGRAY); GUI_SetColor(GUI_WHITE); } else { GUI_SetColor(GUI_STCOLOR_LIGHTBLUE); GUI_AA_FillCircle(60, 60, 50); GUI_SetBkColor(GUI_STCOLOR_LIGHTBLUE); GUI_SetColor(GUI_WHITE); } GUI_SetFont(&GUI_FontLubalGraph24B); GUI_DispStringAt("OK", 43, 35); }
/** * @brief Paints add to playlist button * @param hObj: button handle * @retval None */ static void _OnPaint_add2PL(BUTTON_Handle hObj) { GUI_SetBkColor(GUI_WHITE); GUI_Clear(); if((WIDGET_GetState(hObj) & BUTTON_STATE_PRESSED)) { GUI_SetColor(GUI_DARKGRAY); GUI_AA_FillCircle(56, 60, 60); GUI_SetBkColor(GUI_DARKGRAY); GUI_SetColor(GUI_WHITE); } else { GUI_SetColor(GUI_STCOLOR_LIGHTBLUE); GUI_AA_FillCircle(56, 60, 60); GUI_SetBkColor(GUI_STCOLOR_LIGHTBLUE); GUI_SetColor(GUI_WHITE); } GUI_SetFont(&GUI_Font24B_1); GUI_DispStringAt("Add", 65, 30); }
/********************************************************************* * * _DrawAlphaCircles */ static void _DrawAlphaCircles(int mx, int my, int r, int a, int FactorAA) { int Index; int x; int y; I32 SinHQ; I32 CosHQ; U32 a1000; U32 i; const GUI_COLOR aColor[] = { 0xC00FFF38, 0xC000FF8E, 0xC000FCEA, 0xC000B4FF, 0xC0004EFF, 0xC01304FF, 0xC06E00FF, 0xC0D200FF, 0xC0FF00D2, 0xC0FF006E, 0xC0FF0413, 0xC0FF4E00, 0xC0FFB400, 0xC0EAFC00, 0xC08EFF00, 0xC038FF0F }; mx *= FactorAA; my *= FactorAA; r *= FactorAA; a1000 = a * -1000; GUI_AA_EnableHiRes(); GUI_AA_SetFactor(FactorAA); for (i = 0, Index = 0; i < 360000; i += 22500, Index++) { SinHQ = GUI__SinHQ(i + a1000); CosHQ = GUI__CosHQ(i + a1000); x = SHIFT_RIGHT_16(r * CosHQ); y = SHIFT_RIGHT_16(r * SinHQ); GUI_SetColor(aColor[Index % (int)GUI_COUNTOF(aColor)]); GUI_AA_FillCircle(mx + x, my + y, r); } GUI_AA_DisableHiRes(); }
static void _cbDialog(WM_MESSAGE * pMsg) { WM_HWIN hItem; int Id, NCode; switch (pMsg->MsgId) { case WM_INIT_DIALOG: hItem = BUTTON_CreateEx(420, 0, 60, 60, pMsg->hWin, WM_CF_SHOW, 0, ID_BUTTON_EXIT); WM_SetCallback(hItem, _cbButton_exit); hItem = WM_GetDialogItem(pMsg->hWin, ID_VNC_CONNECTION); IMAGE_SetBitmap(hItem, &bmconnection_ko); hItem = BUTTON_CreateEx(315, 195, 40, 40, pMsg->hWin, WM_CF_SHOW, 0, START_VNC); WM_SetCallback(hItem, _cbButton_start); hItem = BUTTON_CreateEx(380, 195, 40, 40, pMsg->hWin, WM_CF_SHOW, 0, GO_BACKGROUND); WM_SetCallback(hItem, _cbButton_bg); hItem = BUTTON_CreateEx(245, 195, 40, 40, pMsg->hWin, WM_CF_SHOW, 0, ID_LOCK); WM_SetCallback(hItem, _cbButton_lock); hItem = WM_GetDialogItem(pMsg->hWin, GO_BACKGROUND); BUTTON_SetFont(hItem, &GUI_FontLubalGraph16B); break; case WM_PAINT: GUI_SetColor(GUI_STCOLOR_LIGHTBLUE); GUI_SetPenSize(5); GUI_DrawBitmap(&bmconnect, 7, 45); GUI_DrawCircle(332, 215, 40); GUI_AA_FillCircle(332, 215, 45); GUI_AA_FillRoundedRect(230, 182, 440, 250, 20); GUI_SetColor(GUI_WHITE); GUI_AA_FillCircle(332, 215, 42); GUI_SetBkColor(GUI_WHITE); GUI_AA_FillRoundedRect(233, 185, 437, 247, 20); GUI_SetColor(GUI_STCOLOR_LIGHTBLUE); GUI_AA_FillCircle(332, 215, 33); break; case WM_NOTIFY_PARENT: Id = WM_GetId(pMsg->hWinSrc); /* Id of widget */ NCode = pMsg->Data.v; /* Notification code */ switch(Id) { case START_VNC: /* Notifications sent by 'Start' */ switch(NCode) { case WM_NOTIFICATION_RELEASED: if((VNC_GetState() == VNC_IDLE)|| (VNC_GetState() == VNC_INIT)) { VNC_SERVER_LogMessage("Starting VNC connection..."); hItem = WM_GetDialogItem(pMsg->hWin, ID_VNC_CONNECTION); IMAGE_SetBitmap(hItem, &bmno_connection); VNC_SetState (VNC_INIT); WM_Exec(); VNC_SERVER_Start(); } else { VNC_SERVER_Stop(); } break; case WM_NOTIFICATION_CLICKED: hItem = WM_GetDialogItem(pMsg->hWin, START_VNC); WM_InvalidateWindow(hItem); WM_Update(hItem); break; } break; case GO_BACKGROUND: /* Notifications sent by 'Background' */ switch(NCode) { case WM_NOTIFICATION_RELEASED: WM_HideWindow(pMsg->hWin); module_prop[k_ModuleGetIndex(&vnc_server)].win_state = 1; ST_AnimatedIconView_SetItemText(hIcon,k_ModuleGetIndex(&vnc_server),"vnc server[B]"); ST_AnimatedIconView_SetDualTextColor(hIcon, ICONVIEW_CI_SEL, GUI_STCOLOR_LIGHTBLUE, GUI_STCOLOR_DARKBLUE ); break; } break; case ID_BUTTON_EXIT: switch(NCode) { case WM_NOTIFICATION_RELEASED: if(VNC_GetState() != VNC_IDLE) { VNC_SERVER_Stop(); } GUI_EndDialog(pMsg->hWin, 0); break; } break; case ID_LOCK: switch(NCode) { case WM_NOTIFICATION_RELEASED: if(VNC_GetState() == VNC_IDLE) { if(VNC_GetLockState()) { VNC_SetLockState(0); } else { VNC_SetLockState(1); } } break; } break; } break; default: WM_DefaultProc(pMsg); break; } }