예제 #1
0
//Ends the terminal, destroy everything
int curses_destroy(void)
{
    DeleteObject(font);
    WinDestroy();
    RemoveFontResourceExA("data\\termfont",FR_PRIVATE,NULL);//Unload it
    return 1;
}
예제 #2
0
LRESULT WINAPI WinProcedure(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
{
    switch(msg)
    {
    case WM_CREATE:
        return WinCreate(hWnd) ? 0 : -1;

    case WM_DESTROY:
        return WinDestroy(hWnd) ? 0 : -1;

    case WM_CLOSE:
        return WinClose(hWnd) ? 0 : -1;

    case WM_COMMAND:
        return WinCommand(hWnd,wParam,lParam) ? 0 : -1;

    case WM_CONTEXTMENU:
        return WinContextMenu(hWnd,wParam,lParam) ? 0 : -1;

    case WM_LBUTTONDOWN:
        return WinButtonDown(hWnd,msg,LOWORD(lParam),HIWORD(lParam)) ? 0 : -1;

    case WM_KEYDOWN:
        return WinKeyDown(hWnd,wParam,lParam) ? 0 : -1;

    case WM_SIZE:
        return WinSize(hWnd,msg,wParam,lParam) ? 0 : -1;

    case WM_PAINT:
        return WinPaint(hWnd) ? 0 : -1;
    }

    return DefWindowProc(hWnd,msg,wParam,lParam);
}
예제 #3
0
//Ends the terminal, destroy everything
int endwin(void)
{
    DeleteObject(font);
    WinDestroy();
    delete _windows;
    BOOL b = RemoveFontResourceExA("data\\termfont",FR_PRIVATE,NULL);//Unload it
    return 1;
};
예제 #4
0
파일: Win.c 프로젝트: imaginegit/wifisdk
/*
--------------------------------------------------------------------------------
  Function name : void OSStart(WIN *pWin, THREAD *pThread)
  Author        : ZHengYongzhi
  Description   : 
                  
  Input         : ID
  Return        : 

  History:     <author>         <time>         <version>       
             ZhengYongzhi     2008/07/21         Ver1.0
  desc:         ORG
--------------------------------------------------------------------------------
*/
_ATTR_OS_CODE_
void OSStart(WIN **pWin, THREAD **pThread)
{
    void *pWinArg;
#if PRINTF_CPU_USE
    int idletime=0,sec_prev=0,sec_cur=0;
    float cpubusy=0.0;
#endif
    while(1) 
    {
        *pWin = TaskInit(&pWinArg);//task adjust,call new task code,rturn main window pointer.
        WinCreat((WIN *)NULL, *pWin, pWinArg); 
	 ConnectNumber = 0;
	 printf("wifi init start!\n");
        
        while(1) 
        { 
        #if 1
            if (SysService() != RETURN_OK)
            {
                break;
            }
            
            if (ThreadProcess(*pThread) != TRUE)
            {
                break;
            }
            
            if (WinServiceProc(*pWin) != RETURN_OK)
            {
                break;
            }
                
            if (WinKeyProc(*pWin) != RETURN_OK) 
            {
                break;
            }
           	
            WinPaintProc(*pWin);
	 #endif	

	 #if PRINTF_CPU_USE
            idletime ++;
	     sec_cur = GetSysTick()>>9;// 2^7=1.28S
	     if(sec_cur != sec_prev){
		   sec_prev = sec_cur;
		   cpubusy = 7168.0 / idletime;	// 本公式按照主程序1400转/秒为满负荷,通过指令数比得出
		   printf("CPU usage: %f %\n",cpubusy);   
		   idletime = 0;
	     }
	 #endif
		
        }
        //end the main window.
        WinDestroy(*pWin);
    }
    
}
예제 #5
0
//Ends the terminal, destroy everything
int curses_destroy(void)
{
	TTF_CloseFont(font);
	for(int i=0; i<128; i++)
	{
		for(int j=0; j<16; j++)
		{
			if(glyph_cache[i][j]) SDL_FreeSurface(glyph_cache[i][j]);
			glyph_cache[i][j] = NULL;
		}
	}
    WinDestroy();
    return 1;
}
예제 #6
0
//Ends the terminal, destroy everything
int curses_destroy(void)
{
    TTF_CloseFont(font);
    font = NULL;
    for (int i=0; i<128; i++) {
        for (int j=0; j<16; j++) {
            if (glyph_cache[i][j]) {
                SDL_FreeSurface(glyph_cache[i][j]);
            }
            glyph_cache[i][j] = NULL;
        }
    }
    for(int a=0;a<16;a++)SDL_FreeSurface(ascii[a]);
    WinDestroy();
    return 1;
}
예제 #7
0
파일: Hold.c 프로젝트: imaginegit/wifisdk
/*
--------------------------------------------------------------------------------
  Function name : uint32 MessageBoxService(void)
  Author        : ZhengYongzhi
  Description   : 
                  
  Input         : 
  Return        : 

  History:     <author>         <time>         <version>       
             ZhengYongzhi      2009-4-3         Ver1.0
  desc:         ORG
--------------------------------------------------------------------------------
*/
_ATTR_HOLD_CODE_
uint32 DialogHoldService(void)
{
    INT16 Retval = 0;
    UINT32 Count;
    
    //check regular time, timing is coming   
    Count = SysTickCounter - HoldSystickCounterBack;
    if(Count>HOLD_DISPLAY_TIME*100)
    {
       WinDestroy(&HoldWin);
       SendMsg(MSG_HOLDDIALOG_DESTROY);
       SendMsg(MSG_NEED_PAINT_ALL);
    }
    
    return(Retval);
}
예제 #8
0
_ATTR_WiFiMUSICBrow_CODE_
UINT32 WiFiMusicBrowWinKeyProc(void)
{

    uint32  WifiApKeyVal;
    uint32 RetVal = RETURN_OK;
    TASK_ARG TaskArg;
	
    WifiApKeyVal =  GetKeyVal();
    switch (WifiApKeyVal) 
    {
        case KEY_VAL_MENU_SHORT_UP:
			if (0 != WiFiMusicBrowTreeInf.CurId)
			{
				WiFiMuisicBrowGetName();
				SendMsg(MSG_WIFI_MUSIC_SWITCH);
			}
            WinDestroy(&WiFiMusicBrowWin);
            break;
			
        case KEY_VAL_ESC_SHORT_UP:
            WinDestroy(&WiFiMusicBrowWin);
			break;

		case KEY_VAL_UP_SHORT_UP:
            WiFiMusicBrowTreeInf.PreCounter = WiFiMusicBrowTreeInf.KeyCounter;
            if (WiFiMusicBrowTreeInf.CurId > 0) 
            {
                WiFiMusicBrowTreeInf.CurId--;

                if (WiFiMusicBrowTreeInf.KeyCounter == 0) 
                {
                    WiFiMusicBrowTreeInf.KeyCounter = MAX_WIFI_LCD_BROWNUM - 1;
                    WiFiMusicBrowUpProc();                    
                    SendMsg(MSG_BROW_DIS_ALL_ITEM);
                }
                else
                {
                    WiFiMusicBrowTreeInf.KeyCounter--;
                    SendMsg(MSG_BROW_DIS_SELE_ITEM);
                }
            }
            else
            {
                WiFiMusicBrowTreeInf.CurId = WiFiMusicBrowTreeInf.DispTotalItem - 1;
                if (WiFiMusicBrowTreeInf.DispTotalItem > MAX_WIFI_LCD_BROWNUM)
                {
                    if (WiFiMusicBrowTreeInf.DispTotalItem % MAX_WIFI_LCD_BROWNUM)
                    {
                        WiFiMusicBrowTreeInf.KeyCounter = WiFiMusicBrowTreeInf.DispTotalItem % MAX_WIFI_LCD_BROWNUM - 1;
                    }
                    else
                    {
                        WiFiMusicBrowTreeInf.KeyCounter =  MAX_WIFI_LCD_BROWNUM - 1;
                    }
                    WiFiMusicBrowUpProc();
                    SendMsg(MSG_BROW_DIS_ALL_ITEM);
                }
                else
                {
                    WiFiMusicBrowTreeInf.KeyCounter = WiFiMusicBrowTreeInf.DispTotalItem - 1;
                    SendMsg(MSG_BROW_DIS_SELE_ITEM);
                }
            }
            break;
            
		case KEY_VAL_DOWN_SHORT_UP:
            WiFiMusicBrowTreeInf.PreCounter = WiFiMusicBrowTreeInf.KeyCounter;
            if(WiFiMusicBrowTreeInf.CurId < (WiFiMusicBrowTreeInf.DispTotalItem - 1))
            {
                WiFiMusicBrowTreeInf.CurId++; 
                if(WiFiMusicBrowTreeInf.KeyCounter >= MAX_WIFI_LCD_BROWNUM - 1) 
                {
                    WiFiMusicBrowTreeInf.KeyCounter = 0;
                    WiFiMusicBrowUpProc();                    
                    SendMsg(MSG_BROW_DIS_ALL_ITEM);//display all screen
                }
                else
                {
                    WiFiMusicBrowTreeInf.KeyCounter++;
                    SendMsg(MSG_BROW_DIS_SELE_ITEM);
                }  
            }
            else
            {
                WiFiMusicBrowTreeInf.CurId = 0;
                WiFiMusicBrowTreeInf.KeyCounter = 0;
                if(WiFiMusicBrowTreeInf.DispTotalItem > MAX_WIFI_LCD_BROWNUM)
                {
                    WiFiMusicBrowUpProc();
                    SendMsg(MSG_BROW_DIS_ALL_ITEM);
                }
                else
                {
                   SendMsg(MSG_BROW_DIS_SELE_ITEM);
                }                
            }
            break;
            
		default:        
			break;
    }
    return RetVal;
}