More 3D Vision related stuff. This is the last one I promise.

Hotkeys now work when running 3D Vision. You've just got to select the render window first (as in click on the fullscreen image), don't ask me why, it's something to do with RendererHasFocus in Frame.cpp. Annoyingly, escape crashes the emulator and the screenshot button doesn't do anything, though I guess any other hotkey should be working. I wouldn't usually commit this but I remember someone really wanting to be able to connect their Wiimote while in 3D, so I figured I might aswell.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7396 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
Matt Callaghan 2011-03-22 19:05:08 +00:00
parent e8f4323834
commit cfd268073c
1 changed files with 14 additions and 11 deletions

View File

@ -172,13 +172,6 @@ LRESULT CALLBACK WndProc( HWND hWnd, UINT iMsg, WPARAM wParam, LPARAM lParam )
/* Post the mouse events to the main window, it's nessesary because in difference to the
keyboard inputs these events only appear here, not in the parent window or any other WndProc()*/
case WM_LBUTTONDOWN:
if(g_ActiveConfig.backend_info.bSupports3DVision && g_ActiveConfig.b3DVision)
{
// This basically throws away the left button down input when b3DVision is activated so WX
// can't get access to it, stopping focus pulling on mouse click.
// (Input plugins use a different system so it doesn't cause too much weirdness)
break;
}
case WM_LBUTTONUP:
case WM_LBUTTONDBLCLK:
PostMessage(GetParentWnd(), iMsg, wParam, lParam);
@ -218,6 +211,16 @@ LRESULT CALLBACK WndProc( HWND hWnd, UINT iMsg, WPARAM wParam, LPARAM lParam )
return DefWindowProc(hWnd, iMsg, wParam, lParam);
}
break;
if(g_ActiveConfig.backend_info.bSupports3DVision && g_ActiveConfig.b3DVision)
{
case WM_USER_KEYDOWN:
case WM_SYSKEYDOWN:
case WM_KEYDOWN:
PostMessage(m_hParent, iMsg, wParam, lParam);
break;
}
case WM_SETCURSOR:
PostMessage(m_hParent, WM_USER, WM_USER_SETCURSOR, 0);
return true;
@ -309,14 +312,14 @@ void Show()
ShowWindow(m_hWnd, SW_SHOW);
BringWindowToTop(m_hWnd);
UpdateWindow(m_hWnd);
SetFocus(m_hParent);
if(g_ActiveConfig.backend_info.bSupports3DVision && g_ActiveConfig.b3DVision)
{
SetActiveWindow(m_hParent);
SetFocus(m_hWnd);
SetForegroundWindow(m_hWnd);
}
else
SetFocus(m_hParent);
}
HWND Create(HWND hParent, HINSTANCE hInstance, const TCHAR *title)