Exemplo n.º 1
0
/*------------------------------------------------------------------------------*/
static LRESULT CALLBACK WndProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam )
{
	SettingProc( msg, wParam, lParam );
	pAkindDI->Message( msg, wParam, lParam );

	switch ( msg ){
	case WM_KEYDOWN:
		switch( wParam ){
		case VK_F1  : RemoteJoyLite_ToggleDebug();	break;
		case VK_F3  : RemoteJoyLite_ToggleDisp();	break;
		case VK_F4  : ChangeWindowStyle( hWnd );	break;
		case VK_F5  : ResetUsb = true;              break;
		case VK_F9  : MacroRecodeToggle();			break;
		case VK_F11 : RemoteJoyLite_SaveBitmap();	break;
		case VK_F12 : RemoteJoyLite_SaveMovie();	break;
		}
		break;
	case WM_MENUCHAR:
		return( MNC_CLOSE << 16 );
	case WM_NCMOUSEMOVE:
	case WM_MOUSEMOVE:
		if (!IsMouseShowing()) {
			ShowCursor(TRUE);
		}
		MouseHiddenWaitCount = 0;
		break;
	case WM_LBUTTONDBLCLK:
		ChangeZoomMax( hWnd );
		break;
	case WM_SYSKEYDOWN:
		if ( wParam == VK_RETURN ){ ChangeZoomMax( hWnd ); }
		break;
	case WM_SYSCOMMAND:
		if ( wParam == SC_SCREENSAVE ){ return( 1 ); }
		break;
	case WM_DESTROY:
		LoopFlag = FALSE;
		PostQuitMessage( 0 );
		break;
	case WM_SIZE:
		if ( FullScreen == 0 && !IsIconic(hWnd) ) {
			LOG(LOG_LEVEL_WARN, "WndProc() windowed.");
			pAkindD3D->reset(false);
		}
		break;
	case WM_DEVICECHANGE:
		if (wParam == DBT_DEVICEARRIVAL && IsPspDevice((DEV_BROADCAST_HDR*)lParam)) {
			if (FullScreen) {
				LOG(LOG_LEVEL_WARN, "WndProc() windowed.");
				pAkindD3D->reset(false);
			}
			SetUsbResetStatus(USB_RESET_STATUS_OPENING);
		}
	}
	return( DefWindowProc( hWnd, msg, wParam, lParam ) );
}
Exemplo n.º 2
0
void RefreshWindows()
{
	if(nCurrentMode==LAYOUTER){
		HWND hWndList[6] = { vSceneList.GetHolderWnd(), wingl.CGethWnd(), vSceneObjectList.GetHolderWnd(),
							vObjectList.GetHolderWnd() ,   vTimeline.GetHWnd(), vClone.GetHolderWnd()};
		//float real_ratio[6][4] = { {0.0f, 0.0f, 0.1f, 0.5f}, {0.1f, 0.0f, 0.7f, 0.7125f}, {0.8f, 0.0f, 0.2f, 0.5f},
		//					       {0.0f, 0.5f, 0.1f, 0.5f}, {0.2f, 0.8f, 0.5f, 0.15f}, {0.8f, 0.5f, 0.2f, 0.5f}};
		float real_ratio[6][4] = {  {0.0f, 0.8f, 0.15f, 1-0.8f},
									{0.0f, 0.0f, 0.78125f, 0.8f},
									{0.78125f, 0.2f, 1.0f-0.78125f, 0.3f},
								    {0.78125f,0.0f, 1.0f-0.78125f, 0.2f},
									{0.15f, 0.8f, 0.78125f-0.15f, 0.2f},
									{0.78125f, 0.5f, 1.0f-0.78125f, 0.5f}
								 };

		RECT rect;
		GetClientRect(hMainWnd, &rect);
		
		//上段
		//SetWindowPos(hWndList[0], 0, 0, 0, rect.right*ratio[0][0], rect.bottom*ratio[0][1], SWP_NOZORDER);
		ChangeWindowStyle(hWndList[0], WS_POPUP|WS_VISIBLE);
		SetWindowPos(hWndList[0], 0, rect.right*real_ratio[0][0], rect.bottom*real_ratio[0][1], rect.right*real_ratio[0][2], rect.bottom*real_ratio[0][3], SWP_NOZORDER);

		//SetWindowPos(hWndList[1], 0, rect.right*ratio[0][0], 0, rect.right*ratio[1][0], rect.right*ratio[1][1], SWP_NOZORDER);
		ChangeWindowStyle(hWndList[1], WS_POPUP|WS_VISIBLE);
		SetWindowPos(hWndList[1], 0, rect.right*real_ratio[1][0], rect.bottom*real_ratio[1][1], rect.right*real_ratio[1][2], rect.bottom*real_ratio[1][3], SWP_NOZORDER);

		//SetWindowPos(hWndList[2], 0, rect.right*ratio[0][0]+rect.right*ratio[1][0], 0, rect.right*ratio[2][0], rect.right*ratio[2][1], SWP_NOZORDER);
		ChangeWindowStyle(hWndList[2], WS_POPUP|WS_VISIBLE);
		SetWindowPos(hWndList[2], 0, rect.right*real_ratio[2][0], rect.bottom*real_ratio[2][1], rect.right*real_ratio[2][2], rect.bottom*real_ratio[2][3], SWP_NOZORDER);
		//RECT t;
		//GetClientRect(hWndList[2], &t);
		//SetWindowPos(vObjectList.GetListWnd() , 0, 0, 0, t.right, t.bottom, SWP_NOZORDER|SWP_NOMOVE);

		//下段
		//SetWindowPos(hWndList[3], 0, 0, rect.bottom*ratio[3][1], rect.right*ratio[3][0], rect.bottom*ratio[3][1], SWP_NOZORDER);
		ChangeWindowStyle(hWndList[3], WS_POPUP|WS_VISIBLE);
		SetWindowPos(hWndList[3], 0, rect.right*real_ratio[3][0], rect.bottom*real_ratio[3][1], rect.right*real_ratio[3][2], rect.bottom*real_ratio[3][3], SWP_NOZORDER);

		//SetWindowPos(hWndList[4], 0, rect.right*ratio[3][0], rect.bottom*ratio[4][1], rect.right*ratio[4][0], rect.bottom*ratio[4][1], SWP_NOZORDER);
		ChangeWindowStyle(hWndList[4], WS_POPUP|WS_VISIBLE);
		SetWindowPos(hWndList[4], 0, rect.right*real_ratio[4][0], rect.bottom*real_ratio[4][1], rect.right*real_ratio[4][2], rect.bottom*real_ratio[4][3], SWP_NOZORDER);

		//SetWindowPos(hWndList[5], 0, rect.right*ratio[3][0]+rect.right*ratio[4][0], rect.bottom*ratio[5][1], rect.right*ratio[5][0], rect.bottom*ratio[5][1], SWP_NOZORDER);
		ChangeWindowStyle(hWndList[5], WS_POPUP|WS_VISIBLE);
		SetWindowPos(hWndList[5], 0, rect.right*real_ratio[5][0], rect.bottom*real_ratio[5][1], rect.right*real_ratio[5][2], rect.bottom*real_ratio[5][3], SWP_NOZORDER);
	}else{
		HWND hWndList[6] = { vSceneList.GetHolderWnd(), wingl.CGethWnd(), vSceneObjectList.GetHolderWnd(),
							vSynth.GetHolderWnd() ,   vTimeline.GetHWnd(), vSound.GetHolderWnd()};

		//x,y, width, height
		float real_ratio[6][4] = {	{0.0f, 0.8f, 0.15f, 1-0.8f},
									{0.0f, 0.0f, 0.78125f, 0.8f},
									{0.78125f, 0.40f, 1.0f-0.78125f, 0.30f},//SceneObjectList
									//{0.78125f, 0.40f, 1.0f-0.78125f, 0.40f},//Time
									{0.78125f, 0.0f, 1.0f-0.78125f, 0.40f},//Synth
									{0.15f, 0.8f, 0.78125f-0.15f, 0.2f},
									{0.78125f, real_ratio[2][3] + real_ratio[3][3], 1.0f-0.78125f, 1.00f - real_ratio[5][1]}//Sound
								 };

		RECT rect;
		GetClientRect(hMainWnd, &rect);

		//上段
		//SetWindowPos(hWndList[0], 0, 0, 0, rect.right*ratio[0][0], rect.bottom*ratio[0][1], SWP_NOZORDER);
		ChangeWindowStyle(hWndList[0], WS_POPUP|WS_VISIBLE);
		SetWindowPos(hWndList[0], 0, rect.right*real_ratio[0][0], rect.bottom*real_ratio[0][1], rect.right*real_ratio[0][2], rect.bottom*real_ratio[0][3], SWP_NOZORDER);

		//SetWindowPos(hWndList[1], 0, rect.right*ratio[0][0], 0, rect.right*ratio[1][0], rect.right*ratio[1][1], SWP_NOZORDER);
		ChangeWindowStyle(hWndList[1], WS_POPUP|WS_VISIBLE);
		SetWindowPos(hWndList[1], 0, rect.right*real_ratio[1][0], rect.bottom*real_ratio[1][1], rect.right*real_ratio[1][2], rect.bottom*real_ratio[1][3], SWP_NOZORDER);

		//SetWindowPos(hWndList[2], 0, rect.right*ratio[0][0]+rect.right*ratio[1][0], 0, rect.right*ratio[2][0], rect.right*ratio[2][1], SWP_NOZORDER);
		ChangeWindowStyle(hWndList[2], WS_POPUP|WS_VISIBLE);
		SetWindowPos(hWndList[2], 0, rect.right*real_ratio[2][0], rect.bottom*real_ratio[2][1], rect.right*real_ratio[2][2], rect.bottom*real_ratio[2][3], SWP_NOZORDER);
		//RECT t;
		//GetClientRect(hWndList[2], &t);
		//SetWindowPos(vObjectList.GetListWnd() , 0, 0, 0, t.right, t.bottom, SWP_NOZORDER|SWP_NOMOVE);

		//下段
		//SetWindowPos(hWndList[3], 0, 0, rect.bottom*ratio[3][1], rect.right*ratio[3][0], rect.bottom*ratio[3][1], SWP_NOZORDER);
		ChangeWindowStyle(hWndList[3], WS_POPUP|WS_VISIBLE);
		SetWindowPos(hWndList[3], 0, rect.right*real_ratio[3][0], rect.bottom*real_ratio[3][1], rect.right*real_ratio[3][2], rect.bottom*real_ratio[3][3], SWP_NOZORDER);

		//SetWindowPos(hWndList[4], 0, rect.right*ratio[3][0], rect.bottom*ratio[4][1], rect.right*ratio[4][0], rect.bottom*ratio[4][1], SWP_NOZORDER);
		ChangeWindowStyle(hWndList[4], WS_POPUP|WS_VISIBLE);
		SetWindowPos(hWndList[4], 0, rect.right*real_ratio[4][0], rect.bottom*real_ratio[4][1], rect.right*real_ratio[4][2], rect.bottom*real_ratio[4][3], SWP_NOZORDER);

		//SetWindowPos(hWndList[5], 0, rect.right*ratio[3][0]+rect.right*ratio[4][0], rect.bottom*ratio[5][1], rect.right*ratio[5][0], rect.bottom*ratio[5][1], SWP_NOZORDER);
		ChangeWindowStyle(hWndList[5], WS_POPUP|WS_VISIBLE);
		SetWindowPos(hWndList[5], 0, rect.right*real_ratio[5][0], rect.bottom*real_ratio[5][1], rect.right*real_ratio[5][2], rect.bottom*real_ratio[5][3], SWP_NOZORDER);
	}
}
Exemplo n.º 3
0
static LONG
WindowLong(int Func, HWND hWnd, int nIndex, DWORD dwNewLong)
{
    HWND32 hWndTmp32;
    LPBYTE     ptr,ptr1;
    DWORD dwTemp,dw;
    int i;
    BYTE b;

    if (!(hWndTmp32 = GETHWND32(hWnd))) {
	return(0L);
    }

    if (nIndex < 0) {
	switch(nIndex) {
	    case GWL_EXSTYLE:
		dwTemp = hWndTmp32->dwExStyle;
		if (Func == WND_SET)
		    hWndTmp32->dwExStyle = dwNewLong;
		break;
	    case GWL_STYLE:
		dwTemp = hWndTmp32->dwStyle;
		if (Func == WND_SET)
		    hWndTmp32->dwStyle = ChangeWindowStyle(hWndTmp32,dwNewLong);
		break;
	    case GWL_WNDPROC:
		dwTemp = (DWORD)hWndTmp32->lpfnWndProc;
		if (Func == WND_SET)
		    hWndTmp32->lpfnWndProc = (WNDPROC)dwNewLong;
		break;
	    case GWL_DRVDATA:
		dwTemp = (DWORD)hWndTmp32->lpDrvData;
		if (Func == WND_SET)
		    hWndTmp32->lpDrvData = (LPVOID)dwNewLong;
		break;
	    case GWL_UPDATE:
		dwTemp = (DWORD) hWndTmp32->UpdateRegion;
		if (Func == WND_SET)
		    hWndTmp32->UpdateRegion = dwNewLong;
		break;
	    case GWL_USERDATA:
		dwTemp = (DWORD) hWndTmp32->dwUserData;
		if (Func == WND_SET)
		    hWndTmp32->dwUserData = dwNewLong;
		break;
#ifdef	TWIN32
	    case GWL_HINSTANCE:
		dwTemp = (DWORD)(hWndTmp32->hInstance);
		if (Func == WND_SET)
		    hWndTmp32->hInstance = (HINSTANCE)dwNewLong;
		break;
	    case GWL_ID:
		dwTemp = hWndTmp32->wChildID;
		if (Func == WND_SET)
		    hWndTmp32->wChildID = dwNewLong;
		break;
	    case GWL_HMENU:
		dwTemp = (DWORD)hWndTmp32->hMenu;
		if (Func == WND_SET)
		    hWndTmp32->hMenu = (HMENU)dwNewLong;
		break;
	    case GWL_HSYSMENU:
		dwTemp = (DWORD)hWndTmp32->hSysMenu;
		if (Func == WND_SET)
		    hWndTmp32->hSysMenu = (HMENU)dwNewLong;
		break;
	    case GWL_HWNDMENU:
		dwTemp = (DWORD)hWndTmp32->hWndFrame;
		if (Func == WND_SET)
		    hWndTmp32->hWndFrame = (HWND)dwNewLong;
		break;
	    case GWL_HWNDFOCUS:
		dwTemp = (DWORD)hWndTmp32->hChildFocus;
		if (Func == WND_SET)
		    hWndTmp32->hChildFocus = (HWND)dwNewLong;
		break;
	    case GWL_HWNDPARENT:
		dwTemp = (DWORD)hWndTmp32->hWndParent;
		if (Func == WND_SET) {
		    if (hWndTmp32->dwStyle & WS_CHILD)
			return SetParent(hWnd,(HWND)dwNewLong);
		    else
			hWndTmp32->hWndOwner = (HWND)dwNewLong;
		}
		break;
	    case GWL_HWNDHZSCROLL:
		dwTemp = (DWORD)hWndTmp32->hWndHZScroll;
		if (Func == WND_SET)
		    hWndTmp32->hWndHZScroll = (HWND)dwNewLong;
		break;
	    case GWL_HWNDVTSCROLL:
		dwTemp = (DWORD)hWndTmp32->hWndVTScroll;
		if (Func == WND_SET)
		    hWndTmp32->hWndVTScroll = (HWND)dwNewLong;
		break;
	    case GWL_HDC:
		dwTemp = (DWORD)hWndTmp32->hDC;
		if (Func == WND_SET)
		    hWndTmp32->hDC = (HDC)dwNewLong;
		break;
#endif
	    default:
		ERRSTR((LF_ERROR,
		    "WindowLong: Unknown Index: %d\n", nIndex));
		dwTemp = 0;
		break;
	}

	RELEASEWININFO(hWndTmp32);
	return dwTemp;
    }

    /* assigning extra bytes... */
    ptr = ptr1 = (LPBYTE)(hWndTmp32->lpWndExtra) + nIndex;

    for (i = 0, dwTemp = 0; i < sizeof(DWORD); i++) {
	dw = ((DWORD)(*ptr++)) << (i*8);
	dwTemp |= dw;
    }

    if (Func == WND_SET)
	for (i = 0; i < sizeof(DWORD); i++) {
	    b = (BYTE)(dwNewLong >> (i*8));
	    *ptr1++ = b;
	}

    RELEASEWININFO(hWndTmp32);
    return dwTemp;
}