X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e8482f24cfc00645607f8526fde38d39e0dcaa63..3534e34a1b68639a11ac0e643b372e873995368f:/contrib/src/mmedia/sndwin.cpp diff --git a/contrib/src/mmedia/sndwin.cpp b/contrib/src/mmedia/sndwin.cpp index c2776d9438..467b53db9e 100644 --- a/contrib/src/mmedia/sndwin.cpp +++ b/contrib/src/mmedia/sndwin.cpp @@ -16,11 +16,12 @@ #ifndef WX_PRECOMP #include "wx/defs.h" #include "wx/app.h" - #include "wx/module.h" - #include "wx/msw/private.h" #include "wx/string.h" #endif +#include "wx/module.h" +#include "wx/msw/private.h" + // ------------------------------------------------------------------------- // MMedia headers // ------------------------------------------------------------------------- @@ -97,8 +98,11 @@ wxSoundStreamWin::wxSoundStreamWin() m_waiting_for = FALSE; - if (!OpenDevice(wxSOUND_OUTPUT)) - return; + if (!OpenDevice(wxSOUND_OUTPUT)) { + m_snderror = wxSOUND_NOERROR; //next call to OpenDevice won't do this + if (!OpenDevice(wxSOUND_INPUT)) + return; + } CloseDevice(); } @@ -117,7 +121,9 @@ wxSoundStreamWin::~wxSoundStreamWin() // ----------------------------------------------------------------------- // _wxSoundHandlerWndProc: Window callback to handle buffer completion // ----------------------------------------------------------------------- -LRESULT APIENTRY _EXPORT _wxSoundHandlerWndProc(HWND hWnd, UINT message, +LRESULT APIENTRY _EXPORT + + _wxSoundHandlerWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { wxSoundStreamWin *sndwin; @@ -150,7 +156,9 @@ void wxSoundStreamWin::CreateSndWindow() wxGetInstance()); int error; - m_internal->m_sndWin = ::CreateWindow(wxCanvasClassName, NULL, 0, + // NB: class name must be kept in sync with wxCanvasClassName in + // src/msw/app.cpp! + m_internal->m_sndWin = ::CreateWindow(wxT("wxWindowClass"), NULL, 0, 0, 0, 0, 0, NULL, (HMENU) NULL, wxGetInstance(), NULL); @@ -307,7 +315,7 @@ wxSoundInfoHeader *wxSoundStreamWin::AllocHeader(int mode) info->m_h_header = GlobalAlloc(GMEM_MOVEABLE | GMEM_SHARE, sizeof(WAVEHDR)); if (!info->m_h_data || !info->m_h_header) { delete info; - m_snderror = wxSOUND_MEMERR; + m_snderror = wxSOUND_MEMERROR; return NULL; } @@ -754,7 +762,7 @@ bool wxSoundStreamWin::QueueFilled() const // wxSoundWinModule // -------------------------------------------------------------------------- -class WXDLLEXPORT wxSoundWinModule : public wxModule { +class wxSoundWinModule : public wxModule { DECLARE_DYNAMIC_CLASS(wxSoundWinModule) public: bool OnInit();