int SimpleSliderDelete(void * handler) { SimpleSliderDesc * desc; if (NULL == handler) { return -1; } desc = (SimpleSliderDesc *)handler; if (desc->puzzleData) { esMEMS_Mfree(0, desc->puzzleData); } esMEMS_Mfree(0, handler); return 0; }
__s32 dsk_radio_send_close(void) { __s32 result = 0; if(dsk_radio_send == NULL) { __msg("radio send not open!\n"); return EPDK_FAIL; } result = eLIBs_fioctrl(h_radio->fm_drv, DRV_FM_CMD_SEND_EXIT, 0, 0); esMEMS_Mfree(0,dsk_radio_send); dsk_radio_send = NULL; return result; }
void * SimpleSliderNew(SimpleSliderClass * cls, int * bmps) { SimpleSliderDesc * create; __size_t sz; sz = sizeof(SimpleSliderDesc) + (cls->bmp_nr * sizeof(int)); create = (SimpleSliderDesc *)esMEMS_Malloc(0, sz); if (create) { eLIBs_memcpy((void *)&create->cls, (void *)cls, sizeof(SimpleSliderClass)); create->drew_position = -1; create->puzzleDataSize = BYTESPERPIXEL * cls->puzzle.width * cls->puzzle.height; create->puzzleData = esMEMS_Malloc(0, create->puzzleDataSize); if (NULL == create->puzzleData) { esMEMS_Mfree(0, create); return NULL; } eLIBs_memcpy((void *)&create->bmps[0], (void *)bmps, (cls->bmp_nr * sizeof(int))); } else { return NULL; } return (void *)create; }
void free(void *ptr) { esMEMS_Mfree(NULL,ptr); }
static __s32 homeWndProc(__gui_msg_t * msg) { HomeDescriptor * hdp; H_WIN wndGesture; EWin_InheritInfo_ForHeader * extWinIfno; H_WIN hwnd; char name[20]; hdp = (HomeDescriptor *)GUI_WinGetAddData(msg->h_deswin); if (NULL == hdp) { if (GUI_MSG_CREATE != msg->id) { LogE("Failed to get home window private date, message ID (%d)", msg->id); return GUI_ManWinDefaultProc(msg); } } switch (msg->id) { case GUI_MSG_CREATE: hdp = homeWndInit(msg); if (!hdp) { GUI_PostQuitMessage(msg->h_deswin); LogE("Create Home window failed"); return -1; } if(hdp->ewii.suspend){ GUI_SetTimer(msg->h_deswin,SUSPEND_TIMER,6000,NULL); }else{ __msg("suspend is null"); } GUI_WinSetAddData(msg->h_deswin, (__u32)hdp); GUI_WinSetFocusChild(hdp->hFocusWin); break; case GUI_MSG_DESTROY: GG_GestureClose(hdp->inertia); if (hdp->ewii.gdi.font) { GUI_SFT_ReleaseFont(hdp->ewii.gdi.font); } esMEMS_Mfree(0, hdp); break; case GUI_MSG_TOUCH: #ifdef THIS_DEBUG //LogMI("Touch:%x,%d,%d", msg->dwAddData1, LOSWORD(msg->dwAddData2), HISWORD(msg->dwAddData2)); #endif if(standy_en){ if(hdp->ewii.suspend == 1){ dsk_display_lcd_on(); }else if(hdp->ewii.suspend == 2){ }else if(hdp->ewii.suspend == 3){ GUI_LyrWinDelete(hdp->StandyWindow); } standy_en = 0; break; } if(LOSWORD(msg->dwAddData2) > 320 || HISWORD(msg->dwAddData2) > 240){ break; } GUI_ResetTimer(msg->h_deswin,SUSPEND_TIMER,6000,NULL); if (GUI_MSG_TOUCH_DOWN == msg->dwAddData1) { wndGesture = EWin_GestureAttrCollect(GUI_WinGetFocusChild(msg->h_deswin), LOSWORD(msg->dwAddData2), HISWORD(msg->dwAddData2)); if (wndGesture) { extWinIfno = GUI_WinGetAttr(wndGesture); GG_GestureOnDown(hdp->inertia, msg, LOSWORD(msg->dwAddData2), HISWORD(msg->dwAddData2), &extWinIfno->gestureArgs); } } else if (GUI_MSG_TOUCH_MOVE == msg->dwAddData1) { GG_GestureOnMove(hdp->inertia, msg, LOSWORD(msg->dwAddData2), HISWORD(msg->dwAddData2)); } else if (GUI_MSG_TOUCH_UP == msg->dwAddData1) { GG_GestureOnUp(hdp->inertia, msg, LOSWORD(msg->dwAddData2), HISWORD(msg->dwAddData2)); }else if(GUI_MSG_TOUCH_LONGDOWN == msg->dwAddData1){ GG_GestureOnLpress(hdp->inertia, msg, LOSWORD(msg->dwAddData2), HISWORD(msg->dwAddData2)); } break; case GUI_MSG_TIMER: if (HOME_GESTURE_TIMER == msg->dwAddData1) { GG_GestureOnTimer(hdp->inertia, msg); }else if(SUSPEND_TIMER == msg->dwAddData1){ if(!standy_en){ if(hdp->ewii.suspend==1){ dsk_display_lcd_off(); //standy_en = 1; }else if(hdp->ewii.suspend==2){ msg->h_deswin = GUI_WinGetFocusChild(msg->h_deswin); msg->id = GUI_MSG_USER_GESTURE_DONE; msg->dwAddData2 = MAKELONG(320,0); GUI_PostMessage(msg); //standy_en = 1; }else if(hdp->ewii.suspend==3){ hdp->StandyWindow = StandyWndCreate("d:\\res\\boot_ui\\logo.bmp"); }else{ } standy_en = 1; } } break; case GUI_MSG_USER_WIN_CHANGE: if (HOME_SUBWIN_UPDATE == msg->dwAddData2) { GUI_LyrWinSetSta(hdp->ewii.lyrLow,GUI_LYRWIN_STA_SLEEP); GUI_LyrWinSetSta(hdp->ewii.lyrHigher,GUI_LYRWIN_STA_SLEEP); GUI_LyrWinSetSta(hdp->ewii.inilyrHigher,GUI_LYRWIN_STA_SLEEP); hdp->hFocusWin = SettingWndCreate(&hdp->ewii); if(hdp->hFocusWin){ GUI_WinSetFocusChild(hdp->hFocusWin); } }else if(HOME_SUBWIN_SETTING_TIME== msg->dwAddData2){ GUI_LyrWinSetSta(hdp->ewii.inilyrHigher,GUI_LYRWIN_STA_SLEEP); GUI_LyrWinSetSta(hdp->ewii.lyrHigher,GUI_LYRWIN_STA_SLEEP); GUI_LyrWinSetSta(hdp->ewii.lyrLow,GUI_LYRWIN_STA_SLEEP); hdp->hFocusWin = Setting_TimeWndCreate(&hdp->ewii); if(hdp->hFocusWin){ GUI_WinSetFocusChild(hdp->hFocusWin); } }else { if(GUI_ManWinDelete(hdp->hFocusWin)==ORANGE_OK){ GUI_WinSetFocusChild(GUI_WinGetFirstChild(msg->h_deswin)); GUI_LyrWinSetSta(hdp->ewii.lyrLow,GUI_LYRWIN_STA_ON); GUI_LyrWinSetSta(hdp->ewii.lyrHigher,GUI_LYRWIN_STA_ON); GUI_LyrWinSetSta(hdp->ewii.inilyrHigher,GUI_LYRWIN_STA_ON); } } break; default: #ifdef THIS_DEBUG // LogMI("Unhandled home window message (%d)", msg->id); #endif GUI_ManWinDefaultProc(msg); break; } return 0; }
static __s32 clockWndProc(__gui_msg_t * msg) { __u32 clockhands[CLOCKHANDS]; FB fb; HTHEME hback; HBLOCK block; void * pic; int length; int start_x; int start_y; ClockPrivate * draw; draw = (ClockPrivate *)GUI_WinGetAttr(msg->h_deswin); if ((!draw) || (-1 == EWin_CheckInherit(&draw->scrolling.ewii)) || (!(draw->scrolling.ewii.mask[0] & SCR_WNDINFOMASK_SBUTTON))) { LogE("Null or wrong scrolling page window private data"); return -1; } switch (msg->id) { case GUI_MSG_CREATE: draw->scrolling.ewii.mask[0] |= SCR_WNDINFOMASK_GESTURE; clockhands[0] = ID_CLOCK_PNG_DIG_HAND_H1_BMP; clockhands[1] = ID_CLOCK_PNG_DIG_HAND_H2_BMP; clockhands[2] = ID_CLOCK_PNG_DIG_HAND_H3_BMP; clockhands[3] = ID_CLOCK_PNG_DIG_HAND_H4_BMP; clockhands[4] = ID_CLOCK_PNG_DIG_HAND_H5_BMP; clockhands[5] = ID_CLOCK_PNG_DIG_HAND_H6_BMP; clockhands[6] = ID_CLOCK_PNG_DIG_HAND_H7_BMP; clockhands[7] = ID_CLOCK_PNG_DIG_HAND_H8_BMP; draw->hhdl = picswap_quadrant_begin(clockhands, 25, 80); clockhands[0] = ID_CLOCK_PNG_DIG_HAND_M1_BMP; clockhands[1] = ID_CLOCK_PNG_DIG_HAND_M2_BMP; clockhands[2] = ID_CLOCK_PNG_DIG_HAND_M3_BMP; clockhands[3] = ID_CLOCK_PNG_DIG_HAND_M4_BMP; clockhands[4] = ID_CLOCK_PNG_DIG_HAND_M5_BMP; clockhands[5] = ID_CLOCK_PNG_DIG_HAND_M6_BMP; clockhands[6] = ID_CLOCK_PNG_DIG_HAND_M7_BMP; clockhands[7] = ID_CLOCK_PNG_DIG_HAND_M8_BMP; draw->mhdl = picswap_quadrant_begin(clockhands, 25, 80); clockhands[0] = ID_CLOCK_PNG_DIG_HAND_S1_BMP; clockhands[1] = ID_CLOCK_PNG_DIG_HAND_S2_BMP; clockhands[2] = ID_CLOCK_PNG_DIG_HAND_S3_BMP; clockhands[3] = ID_CLOCK_PNG_DIG_HAND_S4_BMP; clockhands[4] = ID_CLOCK_PNG_DIG_HAND_S5_BMP; clockhands[5] = ID_CLOCK_PNG_DIG_HAND_S6_BMP; clockhands[6] = ID_CLOCK_PNG_DIG_HAND_S7_BMP; clockhands[7] = ID_CLOCK_PNG_DIG_HAND_S8_BMP; draw->shdl = picswap_quadrant_begin(clockhands, 25, 80); draw->bgicon = ID_CLOCK_BMP_DIGITALCLOCK_BG_BMP; GUI_LyrWinGetFB(draw->scrolling.ewii.lyrLow, &fb); draw->bgblock = GUI_BlockCreateFrom(NULL, fb.size.width, fb.size.height, fb.addr[0], 0); GUI_LyrWinGetFB(draw->scrolling.ewii.lyrHigher, &fb); draw->forgblock = GUI_BlockCreateFrom(NULL, fb.size.width, fb.size.height, fb.addr[0], 0); esTIME_GetTime(&draw->tm); draw->minute = draw->tm.minute; draw->invalidate |= INVALIDATE_BACKGROUND|INVALIDATE_FOREGROUND; break; case GUI_MSG_DESTROY: GUI_BlockDelete(draw->forgblock); GUI_BlockDelete(draw->bgblock); picswap_quadrant_end(draw->shdl); picswap_quadrant_end(draw->mhdl); picswap_quadrant_end(draw->hhdl); esMEMS_Mfree(0, draw); break; case GUI_MSG_PAINT: if (draw->invalidate & INVALIDATE_BACKGROUND) { #ifdef THIS_DEBUG log_d("Invalidate background"); #endif GUI_LyrWinSel(draw->scrolling.ewii.lyrLow); hback = dsk_Systheme_open(draw->bgicon); pic = dsk_Systheme_hdl2buf(hback); GUI_BMP_Draw(pic, draw->scrolling.wndRect.x, draw->scrolling.wndRect.y); dsk_theme_close(hback); pic = picget_clock_pic(draw->hhdl, (draw->tm.hour % 12) * 5 + (draw->tm.minute / 12), &length, &start_x, &start_y); block = GUI_BlockCreateFrom(NULL, length, length, pic, 0); GUI_BlockBitBlit(draw->bgblock, draw->scrolling.wndRect.x + start_x + WATCH_OFFSET_X, draw->scrolling.wndRect.y + start_y + WATCH_OFFSET_Y, block, NULL, BLITFLAG_COLORALPHA, NULL); GUI_BlockDelete(block); pic = picget_clock_pic(draw->mhdl, draw->tm.minute, &length, &start_x, &start_y); block = GUI_BlockCreateFrom(NULL, length, length, pic, 0); GUI_BlockBitBlit(draw->bgblock, draw->scrolling.wndRect.x + start_x + WATCH_OFFSET_X, draw->scrolling.wndRect.y + start_y + WATCH_OFFSET_Y, block, NULL, BLITFLAG_COLORALPHA, NULL); GUI_BlockDelete(block); } if (draw->invalidate & INVALIDATE_FOREGROUND) { GUI_LyrWinSel(draw->scrolling.ewii.lyrHigher); GUI_SetBkColor(0); GUI_ClearRect(draw->scrolling.wndRect.x, draw->scrolling.wndRect.y, draw->scrolling.wndRect.x + draw->scrolling.wndRect.width, draw->scrolling.wndRect.y + draw->scrolling.wndRect.height); } pic = picget_clock_pic(draw->shdl, draw->tm.second, &length, &start_x, &start_y); block = GUI_BlockCreateFrom(NULL, length, length, pic, 0); GUI_BlockBitBlit(draw->forgblock, draw->scrolling.wndRect.x + start_x + WATCH_OFFSET_X, draw->scrolling.wndRect.y + start_y + WATCH_OFFSET_Y, block, NULL, BLITFLAG_COLORSET, NULL); GUI_BlockDelete(block); draw->invalidate = INVALIDATE_NULL; break; //case GUI_MSG_USER_REPAINT_NEIGHBOR: //draw->invalidate |= (INVALIDATE_BACKGROUND | INVALIDATE_FOREGROUND); case GUI_MSG_TIMER: esTIME_GetTime(&draw->tm); if (draw->minute != draw->tm.minute) { draw->minute = draw->tm.minute; draw->invalidate |= INVALIDATE_BACKGROUND; } #ifdef THIS_DEBUG log_mi("time: %d,%d,%d", draw->tm.hour, draw->tm.minute, draw->tm.second); log_mi("Date: %d,%d,%d", draw->date.year, draw->date.month, draw->date.day); #endif __here__; GUI_WinUpdate(msg->h_deswin, ORANGE_TRUE); break; case GUI_MSG_SET_FOCUS: draw->invalidate |= (INVALIDATE_BACKGROUND | INVALIDATE_FOREGROUND); GUI_SetTimer(msg->h_deswin, 1, 100, NULL); __msg("12"); return 0; case GUI_MSG_SET_UNFOCUS: GUI_KillTimer(msg->h_deswin, 1); return 0; default: break; } return GUI_FrmWinDefaultProc(msg); }
static void utf16big_destroy(txtEncodeParser *thiz) { esMEMS_Pfree(thiz->bufferTxt, 2*BufferLenght/1024); esMEMS_Mfree(0, thiz); }
/* ********************************************************************************************************************** * _spinbox_ctrl_proc * * author: * * date: 2009-8-4 * * Description: spinboxctrlproc * * parameters: * * return: if success return ERDK_OK * if fail return the number of fail * modify history: ********************************************************************************************************************** */ static int _spinbox_ctrl_proc (__gui_msg_t *msg) { __u32 dwStyle; spinbox_data_t* pData; dwStyle = GUI_WinGetStyle(msg->h_deswin); switch(msg->id) { case GUI_MSG_CREATE: pData = (spinbox_data_t*) esMEMS_Malloc( 0, sizeof(spinbox_data_t) ); if (pData == NULL) { return EPDK_FAIL; } pData->draw_sts = 0; pData->status = 0; pData->draw_flag = 0; pData->hmem = 0; pData->data = (__u32)GUI_WinGetAttr(msg->h_deswin); GUI_CtrlWinSetAddData(msg->h_deswin,(__u32)pData); return 0; case GUI_MSG_DESTROY: pData = (spinbox_data_t*)GUI_CtrlWinGetAddData(msg->h_deswin); esMEMS_Mfree ( 0, (void *)GUI_CtrlWinGetAddData(msg->h_deswin) ); return 0; case GUI_MSG_ENABLE: if (msg->dwAddData1 && (dwStyle & WS_DISABLED)) { dwStyle &= ~WS_DISABLED; GUI_WinSetStyle(msg->h_deswin,dwStyle); } else if (!msg->dwAddData1 && !(dwStyle & WS_DISABLED)) { dwStyle |= WS_DISABLED; GUI_WinSetStyle(msg->h_deswin,dwStyle); } else { return 0; } return 0; case GUI_MSG_SET_UNFOCUS: if(SPINBOX_STATUS(msg->h_deswin) & BST_FOCUS) { SPINBOX_STATUS(msg->h_deswin) &= (~BST_FOCUS); GUI_InvalidateRect (msg->h_deswin, NULL, EPDK_TRUE); } return 0; case GUI_MSG_SET_FOCUS: if(!(SPINBOX_STATUS(msg->h_deswin) & BST_FOCUS)) { SPINBOX_STATUS(msg->h_deswin) |= BST_FOCUS; GUI_InvalidateRect (msg->h_deswin, NULL, EPDK_TRUE); } return 0; case GUI_MSG_KEY: _key_proc(msg); return 0; case GUI_MSG_TOUCH: _touch_proc(msg); return 0; case GUI_MSG_PAINT: _spinbox_ctrl_paint(msg); return 0; default: break; } return GUI_CtrlWinDefaultProc (msg); }