Maarten Lankhorst : mciqtz32: Add support for MCI_PAUSE.

Alexandre Julliard julliard at winehq.org
Thu May 20 11:02:57 CDT 2010


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

Author: Maarten Lankhorst <m.b.lankhorst at gmail.com>
Date:   Thu May 20 00:27:25 2010 +0200

mciqtz32: Add support for MCI_PAUSE.

---

 dlls/mciqtz32/mciqtz.c |   25 ++++++++++++++++++++++++-
 1 files changed, 24 insertions(+), 1 deletions(-)

diff --git a/dlls/mciqtz32/mciqtz.c b/dlls/mciqtz32/mciqtz.c
index 915ffc4..75f2c01 100644
--- a/dlls/mciqtz32/mciqtz.c
+++ b/dlls/mciqtz32/mciqtz.c
@@ -389,6 +389,29 @@ static DWORD MCIQTZ_mciStop(UINT wDevID, DWORD dwFlags, LPMCI_GENERIC_PARMS lpPa
 }
 
 /***************************************************************************
+ *                              MCIQTZ_mciPause                 [internal]
+ */
+static DWORD MCIQTZ_mciPause(UINT wDevID, DWORD dwFlags, LPMCI_GENERIC_PARMS lpParms)
+{
+    WINE_MCIQTZ* wma;
+    HRESULT hr;
+
+    TRACE("(%04x, %08X, %p)\n", wDevID, dwFlags, lpParms);
+
+    wma = MCIQTZ_mciGetOpenDev(wDevID);
+    if (!wma)
+        return MCIERR_INVALID_DEVICE_ID;
+
+    hr = IMediaControl_Pause(wma->pmctrl);
+    if (FAILED(hr)) {
+        TRACE("Cannot pause filtergraph (hr = %x)\n", hr);
+        return MCIERR_INTERNAL;
+    }
+
+    return 0;
+}
+
+/***************************************************************************
  *                              MCIQTZ_mciGetDevCaps            [internal]
  */
 static DWORD MCIQTZ_mciGetDevCaps(UINT wDevID, DWORD dwFlags, LPMCI_GETDEVCAPS_PARMS lpParms)
@@ -876,6 +899,7 @@ LRESULT CALLBACK MCIQTZ_DriverProc(DWORD_PTR dwDevID, HDRVR hDriv, UINT wMsg,
         case MCI_PLAY:          return MCIQTZ_mciPlay      (dwDevID, dwParam1, (LPMCI_PLAY_PARMS)          dwParam2);
         case MCI_SEEK:          return MCIQTZ_mciSeek      (dwDevID, dwParam1, (LPMCI_SEEK_PARMS)          dwParam2);
         case MCI_STOP:          return MCIQTZ_mciStop      (dwDevID, dwParam1, (LPMCI_GENERIC_PARMS)       dwParam2);
+        case MCI_PAUSE:         return MCIQTZ_mciPause     (dwDevID, dwParam1, (LPMCI_GENERIC_PARMS)       dwParam2);
         case MCI_GETDEVCAPS:    return MCIQTZ_mciGetDevCaps(dwDevID, dwParam1, (LPMCI_GETDEVCAPS_PARMS)    dwParam2);
         case MCI_SET:           return MCIQTZ_mciSet       (dwDevID, dwParam1, (LPMCI_DGV_SET_PARMS)       dwParam2);
         case MCI_STATUS:        return MCIQTZ_mciStatus    (dwDevID, dwParam1, (LPMCI_DGV_STATUS_PARMSW)   dwParam2);
@@ -885,7 +909,6 @@ LRESULT CALLBACK MCIQTZ_DriverProc(DWORD_PTR dwDevID, HDRVR hDriv, UINT wMsg,
         case MCI_UPDATE:
             return MCIQTZ_mciUpdate(dwDevID, dwParam1, (LPMCI_DGV_UPDATE_PARMS)dwParam2);
         case MCI_RECORD:
-        case MCI_PAUSE:
         case MCI_RESUME:
         case MCI_INFO:
         case MCI_PUT:




More information about the wine-cvs mailing list