From baa7dcb90efe9e0332eaa8739c88159389f7e5d8 Mon Sep 17 00:00:00 2001 From: Maarten Lankhorst Date: Mon, 26 Jul 2010 15:44:22 +0200 Subject: [PATCH] mciqtz32: Simplify mciWhere. --- dlls/mciqtz32/mciqtz.c | 32 +++++++++----------------------- 1 file changed, 9 insertions(+), 23 deletions(-) diff --git a/dlls/mciqtz32/mciqtz.c b/dlls/mciqtz32/mciqtz.c index f4866775fea..9d909573bb5 100644 --- a/dlls/mciqtz32/mciqtz.c +++ b/dlls/mciqtz32/mciqtz.c @@ -688,23 +688,14 @@ static DWORD MCIQTZ_mciWhere(UINT wDevID, DWORD dwFlags, LPMCI_DGV_RECT_PARMS lp if (dwFlags & MCI_DGV_WHERE_SOURCE) { if (dwFlags & MCI_DGV_WHERE_MAX) FIXME("MCI_DGV_WHERE_SOURCE_MAX stub %s\n", wine_dbgstr_rect(&rc)); - IBasicVideo_get_SourceLeft(wma->vidbasic, &rc.left); - IBasicVideo_get_SourceTop(wma->vidbasic, &rc.top); - IBasicVideo_get_SourceWidth(wma->vidbasic, &rc.right); - IBasicVideo_get_SourceHeight(wma->vidbasic, &rc.bottom); - /* Undo conversion done below */ - rc.right += rc.left; - rc.bottom += rc.top; + IBasicVideo_GetSourcePosition(wma->vidbasic, &rc.left, &rc.top, &rc.right, &rc.bottom); TRACE("MCI_DGV_WHERE_SOURCE %s\n", wine_dbgstr_rect(&rc)); } if (dwFlags & MCI_DGV_WHERE_DESTINATION) { - if (dwFlags & MCI_DGV_WHERE_MAX) { - GetClientRect(hWnd, &rc); - TRACE("MCI_DGV_WHERE_DESTINATION_MAX %s\n", wine_dbgstr_rect(&rc)); - } else { - FIXME("MCI_DGV_WHERE_DESTINATION not supported yet\n"); - goto out; - } + if (dwFlags & MCI_DGV_WHERE_MAX) + FIXME("MCI_DGV_WHERE_DESTINATION_MAX stub %s\n", wine_dbgstr_rect(&rc)); + IBasicVideo_GetDestinationPosition(wma->vidbasic, &rc.left, &rc.top, &rc.right, &rc.bottom); + TRACE("MCI_DGV_WHERE_DESTINATION %s\n", wine_dbgstr_rect(&rc)); } if (dwFlags & MCI_DGV_WHERE_FRAME) { if (dwFlags & MCI_DGV_WHERE_MAX) @@ -723,22 +714,17 @@ static DWORD MCIQTZ_mciWhere(UINT wDevID, DWORD dwFlags, LPMCI_DGV_RECT_PARMS lp if (dwFlags & MCI_DGV_WHERE_WINDOW) { if (dwFlags & MCI_DGV_WHERE_MAX) { GetWindowRect(GetDesktopWindow(), &rc); + rc.right -= rc.left; + rc.bottom -= rc.top; TRACE("MCI_DGV_WHERE_WINDOW_MAX %s\n", wine_dbgstr_rect(&rc)); } else { - GetWindowRect(hWnd, &rc); + IVideoWindow_GetWindowPosition(wma->vidwin, &rc.left, &rc.top, &rc.right, &rc.bottom); TRACE("MCI_DGV_WHERE_WINDOW %s\n", wine_dbgstr_rect(&rc)); } } ret = 0; - out: - /* In MCI, RECT structure is used differently: rc.right = width & rc.bottom = height - * So convert the normal RECT into a MCI RECT before returning */ - lpParms->rc.left = rc.left; - lpParms->rc.top = rc.top; - lpParms->rc.right = rc.right - rc.left; - lpParms->rc.bottom = rc.bottom - rc.top; - + lpParms->rc = rc; return ret; }