Emulator Issues #5646
closedSupport MultiMon && Show Current Screen Resolution in DX9
0%
Description
diff --git a/Source/Core/DolphinWX/Src/FrameTools.cpp b/Source/Core/DolphinWX/Src/FrameTools.cpp
index d24bd2f..039ec66 100644
--- a/Source/Core/DolphinWX/Src/FrameTools.cpp
+++ b/Source/Core/DolphinWX/Src/FrameTools.cpp
@@ -932,6 +932,17 @@ void CFrame::StartGame(const std::string& filename)
if (position == wxPoint(0, 0))
position = wxDefaultPosition;
#endif
-
//Add here: If use FullScreen mode, show Window at current CursorPos to support MultiMon
-
if(SConfig::GetInstance().m_LocalCoreStartupParameter.bFullscreen)
-
{
-
POINT pt;
-
GetCursorPos(&pt);
-
position.x=pt.x;
-
position.y=pt.y;
-
}
-
else
-
position = wxDefaultPosition;
-
//End m_RenderFrame = new CRenderFrame((wxFrame*)this, wxID_ANY, _("Dolphin"), position); if (SConfig::GetInstance().m_LocalCoreStartupParameter.bKeepWindowOnTop)
diff --git a/Source/Plugins/Plugin_VideoDX9/Src/D3DBase.cpp b/Source/Plugins/Plugin_VideoDX9/Src/D3DBase.cpp
index ff3f68a..7b9fa56 100644
--- a/Source/Plugins/Plugin_VideoDX9/Src/D3DBase.cpp
+++ b/Source/Plugins/Plugin_VideoDX9/Src/D3DBase.cpp
@@ -21,6 +21,7 @@
#include "XFStructs.h"
#include "StringUtil.h"
#include "VideoCommon.h"
+#include "OnScreenDisplay.h"
D3DXSAVESURFACETOFILEATYPE PD3DXSaveSurfaceToFileA = NULL;
D3DXSAVETEXTURETOFILEATYPE PD3DXSaveTextureToFileA = NULL;
@@ -207,6 +208,18 @@ void InitPP(int adapter, int f, int aa_mode, D3DPRESENT_PARAMETERS *pp)
GetClientRect(hWnd, &client);
xres = pp->BackBufferWidth = client.right - client.left;
yres = pp->BackBufferHeight = client.bottom - client.top;
+
-
//Add here: Show Current Screen resolution
-
char x[100]={0};
-
char y[100]={0};
-
char Cur_Res[100]="Current Screen resolution: ";
-
_itoa(xres,x,10);
-
_itoa(yres,y,10);
-
strcat(Cur_Res,x);
-
strcat(Cur_Res," x ");
-
strcat(Cur_Res,y);
-
OSD::AddMessage(Cur_Res , 6000);
-
}//End
pp->SwapEffect = D3DSWAPEFFECT_DISCARD;
pp->PresentationInterval = g_Config.bVSync ? D3DPRESENT_INTERVAL_DEFAULT : D3DPRESENT_INTERVAL_IMMEDIATE;
Updated by iluck.org about 12 years ago
More demo pictures please visit:
http://iluck.org/129.html
Updated by iluck.org about 12 years ago
Default Game-Form location of the Window is always based on X = 0, Y = 0 as a reference, and this is OK in a single monitor, if the program onto the second display (extended display), use X = 0, Y = 0 as a reference, then, the Full screen or Window of the game when the picture will appear in a first display. In fact, the second display position is not X = 0, Y = 0, assumingthe two display resolution all is 800 * 600, made around the type of expansion, the second display position should be: X = 800, Y = 0. Now the second monitor to play the game I think should be full screen, so I made a judgment:
if(SConfig::GetInstance().m_LocalCoreStartupParameter.bFullscreen)
.
.
.
When the full-screen mode, the current mouse position as the starting position of the Game-Form.
Into the full screen, MS-WINDOWS system determines the current form where the Virtual position of the window, in the Virtual Window (Second Display) to enter Full-Screen mode.
If you do not the following judgment:
if(SConfig::GetInstance().m_LocalCoreStartupParameter.bFullscreen)
The Game-Form will always appear at the current location of the mouse, no problem, but it seems some torque.
Sorry my English.
Updated by NeoBrainX about 12 years ago
- Status changed from New to Duplicate
Sorry, but this is a really hacky fix. Instead it should be possible to select the monitor index (or monitor name) from the video config. That's very possible with the Win32 API, and likely also doable from X11 and OS X.
Take a look at the other issue for details.
Updated by NeoBrainX about 12 years ago
Fwiw, if you're willing to work on a proper fix, I'm willing to help you with any questions that might arise. Just ask me (no_cluez) on IRC.
Updated by iluck.org about 12 years ago
The time difference is a big problem.
BTW:IRC address and channels?