コード例 #1
0
ファイル: main.cpp プロジェクト: Junky228/OpenBoardView
LRESULT WINAPI WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) {
	if (ImGui_ImplDX9_WndProcHandler(hWnd, msg, wParam, lParam))
		return true;

	switch (msg) {
	case WM_SIZE:
		if (g_pd3dDevice != NULL && wParam != SIZE_MINIMIZED) {
			ImGui_ImplDX9_InvalidateDeviceObjects();
			g_d3dpp.BackBufferWidth = LOWORD(lParam);
			g_d3dpp.BackBufferHeight = HIWORD(lParam);
			HRESULT hr = g_pd3dDevice->Reset(&g_d3dpp);
			if (hr == D3DERR_INVALIDCALL)
				IM_ASSERT(0);
			ImGui_ImplDX9_CreateDeviceObjects();
		}
		return 0;
	case WM_SYSCOMMAND:
		if ((wParam & 0xfff0) == SC_KEYMENU) // Disable ALT application menu
			return 0;
		break;
	case WM_DESTROY:
		PostQuitMessage(0);
		return 0;
	}
	return DefWindowProc(hWnd, msg, wParam, lParam);
}
コード例 #2
0
LRESULT WINAPI DetourDefWindowProc(
	_In_ HWND hWnd,
	     _In_ UINT Msg,
	     _In_ WPARAM wParam,
	     _In_ LPARAM lParam
)
{
	static boost::once_flag flag = BOOST_ONCE_INIT;
	boost::call_once(flag, boost::bind(&logOnce, "++ USER32!DefWindowProc called"));

	if (!g_hWnd)
	{
		g_hWnd = hWnd;
	}

	ImGui_ImplDX9_WndProcHandler(hWnd, Msg, wParam, lParam);
	ImGui_ImplDX10_WndProcHandler(hWnd, Msg, wParam, lParam);
	ImGui_ImplDX11_WndProcHandler(hWnd, Msg, wParam, lParam);

	return OriginalDefWindowProc(hWnd, Msg, wParam, lParam);
}
コード例 #3
0
ファイル: WndProc.cpp プロジェクト: A5-/Gamerfood_CSGO
LRESULT __stdcall Hooks::WndProc( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam )
{
	switch( uMsg )
	{
		case WM_LBUTTONDOWN:
			G::PressedKeys[ VK_LBUTTON ] = true;
			break;
		case WM_LBUTTONUP:
			G::PressedKeys[ VK_LBUTTON ] = false;
			break;
		case WM_RBUTTONDOWN:
			G::PressedKeys[ VK_RBUTTON ] = true;
			break;
		case WM_RBUTTONUP:
			G::PressedKeys[ VK_RBUTTON ] = false;
			break;
		case WM_MBUTTONDOWN:
			G::PressedKeys[ VK_MBUTTON ] = true;
			break;
		case WM_MBUTTONUP:
			G::PressedKeys[ VK_MBUTTON ] = false;
			break;
		case WM_XBUTTONDOWN:
		{
			UINT button = GET_XBUTTON_WPARAM( wParam );
			if( button == XBUTTON1 )
			{
				G::PressedKeys[ VK_XBUTTON1 ] = true;
			}
			else if( button == XBUTTON2 )
			{
				G::PressedKeys[ VK_XBUTTON2 ] = true;
			}
			break;
		}
		case WM_XBUTTONUP:
		{
			UINT button = GET_XBUTTON_WPARAM( wParam );
			if( button == XBUTTON1 )
			{
				G::PressedKeys[ VK_XBUTTON1 ] = false;
			}
			else if( button == XBUTTON2 )
			{
				G::PressedKeys[ VK_XBUTTON2 ] = false;
			}
			break;
		}
		case WM_KEYDOWN:
			G::PressedKeys[ wParam ] = true;
			break;
		case WM_KEYUP:
			G::PressedKeys[ wParam ] = false;
			break;
		case WM_SYSKEYDOWN:
			if (wParam == VK_MENU)
				G::PressedKeys[VK_MENU] = true;
			break;
		case WM_SYSKEYUP:
			if (wParam == VK_MENU)
				G::PressedKeys[VK_MENU] = false;
			break;
		default: break;
	}

	OpenMenu();

	if( G::d3dinit && Vars.Menu.Opened && ImGui_ImplDX9_WndProcHandler( hWnd, uMsg, wParam, lParam ) )
		return true;

	return CallWindowProc( oldWindowProc, hWnd, uMsg, wParam, lParam );
}