mirror of
https://github.com/FunkyFr3sh/cnc-ddraw.git
synced 2025-03-24 17:49:52 +01:00
Allow mouse unlocking in fullscreen (for dual head users mostly)
This commit is contained in:
parent
b2c1500c70
commit
52ec288169
65
main.c
65
main.c
@ -149,56 +149,47 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|||||||
{
|
{
|
||||||
case WM_NCACTIVATE:
|
case WM_NCACTIVATE:
|
||||||
/* game's drawing loop stops when it inactivates, so don't */
|
/* game's drawing loop stops when it inactivates, so don't */
|
||||||
if(ddraw->windowed)
|
DefWindowProc(hWnd, uMsg, wParam, lParam);
|
||||||
|
|
||||||
|
if(wParam == FALSE)
|
||||||
{
|
{
|
||||||
DefWindowProc(hWnd, uMsg, wParam, lParam);
|
mouse_unlock();
|
||||||
if(wParam == FALSE)
|
|
||||||
{
|
|
||||||
mouse_unlock();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
mouse_lock();
|
|
||||||
}
|
|
||||||
SetCursor(LoadCursor((HINSTANCE)GetWindowLong(ddraw->hWnd, GWL_HINSTANCE), IDC_ARROW));
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
break;
|
else
|
||||||
case WM_KEYDOWN:
|
|
||||||
if(ddraw->windowed)
|
|
||||||
{
|
{
|
||||||
if(wParam == VK_CONTROL)
|
mouse_lock();
|
||||||
{
|
}
|
||||||
ddraw->key_ctrl = TRUE;
|
|
||||||
}
|
return 0;
|
||||||
if(wParam == VK_TAB)
|
case WM_KEYDOWN:
|
||||||
{
|
if(wParam == VK_CONTROL)
|
||||||
ddraw->key_tab = TRUE;
|
{
|
||||||
}
|
ddraw->key_ctrl = TRUE;
|
||||||
if(ddraw->key_tab && ddraw->key_ctrl)
|
}
|
||||||
{
|
if(wParam == VK_TAB)
|
||||||
mouse_unlock();
|
{
|
||||||
}
|
ddraw->key_tab = TRUE;
|
||||||
|
}
|
||||||
|
if(ddraw->key_tab && ddraw->key_ctrl)
|
||||||
|
{
|
||||||
|
mouse_unlock();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case WM_KEYUP:
|
case WM_KEYUP:
|
||||||
if(ddraw->windowed)
|
if(wParam == VK_CONTROL)
|
||||||
{
|
{
|
||||||
if(wParam == VK_CONTROL)
|
ddraw->key_ctrl = FALSE;
|
||||||
{
|
}
|
||||||
ddraw->key_ctrl = FALSE;
|
if(wParam == VK_TAB)
|
||||||
}
|
{
|
||||||
if(wParam == VK_TAB)
|
ddraw->key_tab = FALSE;
|
||||||
{
|
|
||||||
ddraw->key_tab = FALSE;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case WM_LBUTTONDOWN:
|
case WM_LBUTTONDOWN:
|
||||||
case WM_RBUTTONDOWN:
|
case WM_RBUTTONDOWN:
|
||||||
case WM_LBUTTONUP:
|
case WM_LBUTTONUP:
|
||||||
case WM_RBUTTONUP:
|
case WM_RBUTTONUP:
|
||||||
if(!ddraw->locked && ddraw->windowed)
|
if(!ddraw->locked)
|
||||||
{
|
{
|
||||||
mouse_lock();
|
mouse_lock();
|
||||||
return 0;
|
return 0;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user