Stefan Dösinger : wined3d: Use SetDisplayMode to set the display mode.

Alexandre Julliard julliard at winehq.org
Wed Dec 12 09:29:15 CST 2007


Module: wine
Branch: master
Commit: f78ae8d12578bacef6f9ed0033957491d015b519
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=f78ae8d12578bacef6f9ed0033957491d015b519

Author: Stefan Dösinger <stefan at codeweavers.com>
Date:   Tue Dec 11 16:40:07 2007 +0100

wined3d: Use SetDisplayMode to set the display mode.

---

 dlls/wined3d/device.c |   29 +++++++----------------------
 1 files changed, 7 insertions(+), 22 deletions(-)

diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index d09b94d..1793ed4 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -1509,33 +1509,18 @@ static HRESULT WINAPI IWineD3DDeviceImpl_CreateAdditionalSwapChain(IWineD3DDevic
     **************************************/
 
    if (!pPresentationParameters->Windowed) {
+        WINED3DDISPLAYMODE mode;
 
-        DEVMODEW devmode;
-        int      bpp = 0;
-        RECT     clip_rc;
-
-        bpp = formatDesc->bpp * 8;
 
         /* Change the display settings */
-        memset(&devmode, 0, sizeof(devmode));
-        devmode.dmSize       = sizeof(devmode);
-        devmode.dmFields     = DM_BITSPERPEL | DM_PELSWIDTH | DM_PELSHEIGHT;
-        devmode.dmBitsPerPel = bpp;
-        devmode.dmPelsWidth  = pPresentationParameters->BackBufferWidth;
-        devmode.dmPelsHeight = pPresentationParameters->BackBufferHeight;
-        ChangeDisplaySettingsExW(This->adapter->DeviceName, &devmode, NULL, CDS_FULLSCREEN, NULL);
-        displaymode_set = TRUE;
-
-        /* For GetDisplayMode */
-        This->ddraw_width = devmode.dmPelsWidth;
-        This->ddraw_height = devmode.dmPelsHeight;
-        This->ddraw_format = pPresentationParameters->BackBufferFormat;
+        mode.Width = pPresentationParameters->BackBufferWidth;
+        mode.Height = pPresentationParameters->BackBufferHeight;
+        mode.Format = pPresentationParameters->BackBufferFormat;
+        mode.RefreshRate = pPresentationParameters->FullScreen_RefreshRateInHz;
 
+        IWineD3DDevice_SetDisplayMode(iface, 0, &mode);
+        displaymode_set = TRUE;
         IWineD3DDevice_SetFullscreen(iface, TRUE);
-
-        /* And finally clip mouse to our screen */
-        SetRect(&clip_rc, 0, 0, devmode.dmPelsWidth, devmode.dmPelsHeight);
-        ClipCursor(&clip_rc);
     }
 
         /**




More information about the wine-cvs mailing list