// Author: Vaclav Slavik
// Modified by:
// Created: 2004/01/31
-// RCS-ID: $Id$
// Copyright: (c) 2004, Open Source Applications Foundation
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
typedef void (wxEvtHandler::*wxSoundBackendSDLNotificationFunction)
(wxSoundBackendSDLNotification&);
-BEGIN_DECLARE_EVENT_TYPES()
- DECLARE_LOCAL_EVENT_TYPE(wxEVT_SOUND_BACKEND_SDL_NOTIFICATION, -1)
-END_DECLARE_EVENT_TYPES()
+wxDECLARE_EVENT(wxEVT_SOUND_BACKEND_SDL_NOTIFICATION, wxSoundBackendSDLNotification);
#define EVT_SOUND_BACKEND_SDL_NOTIFICATON(func) \
DECLARE_EVENT_TABLE_ENTRY(wxEVT_SOUND_BACKEND_SDL_NOTIFICATION, \
-1, \
-1, \
- (wxObjectEventFunction) wxStaticCastEvent( wxSoundBackendSDLNotificationFunction, & func ), \
- (wxObject *) NULL ),
+ wxEVENT_HANDLER_CAST( wxSoundBackendSDLNotificationFunction, func ), \
+ NULL ),
IMPLEMENT_DYNAMIC_CLASS(wxSoundBackendSDLNotification, wxEvtHandler)
-DEFINE_EVENT_TYPE(wxEVT_SOUND_BACKEND_SDL_NOTIFICATION)
+wxDEFINE_EVENT( wxEVT_SOUND_BACKEND_SDL_NOTIFICATION, wxSoundBackendSDLNotification );
wxSoundBackendSDLNotification::wxSoundBackendSDLNotification()
{
m_data(NULL), m_evtHandler(NULL) {}
virtual ~wxSoundBackendSDL();
- wxString GetName() const { return _T("Simple DirectMedia Layer"); }
+ wxString GetName() const { return wxT("Simple DirectMedia Layer"); }
int GetPriority() const { return 9; }
bool IsAvailable() const;
bool HasNativeAsyncPlayback() const { return true; }
private:
void OnNotify(wxSoundBackendSDLNotification& WXUNUSED(event))
{
- wxLogTrace(_T("sound"),
- _T("received playback status change notification"));
+ wxLogTrace(wxT("sound"),
+ wxT("received playback status change notification"));
m_backend->FinishedPlayback();
}
wxSoundBackendSDL *m_backend;
return false;
}
wxConstCast(this, wxSoundBackendSDL)->m_initialized = true;
- wxLogTrace(_T("sound"), _T("initialized SDL audio subsystem"));
+ wxLogTrace(wxT("sound"), wxT("initialized SDL audio subsystem"));
return true;
}
m_spec.callback = wx_sdl_audio_callback;
m_spec.userdata = (void*)this;
- wxLogTrace(_T("sound"), _T("opening SDL audio..."));
+ wxLogTrace(wxT("sound"), wxT("opening SDL audio..."));
if (SDL_OpenAudio(&m_spec, NULL) >= 0)
{
#if wxUSE_LOG_DEBUG
char driver[256];
+#if SDL_MAJOR_VERSION == 1
SDL_AudioDriverName(driver, 256);
- wxLogTrace(_T("sound"), _T("opened audio, driver '%s'"),
+#elif SDL_MAJOR_VERSION > 1
+ strncpy(driver, SDL_GetCurrentAudioDriver(), 256);
+#endif
+ wxLogTrace(wxT("sound"), wxT("opened audio, driver '%s'"),
wxString(driver, wxConvLocal).c_str());
#endif
m_audioOpen = true;
if (m_audioOpen)
{
SDL_CloseAudio();
- wxLogTrace(_T("sound"), _T("closed audio"));
+ wxLogTrace(wxT("sound"), wxT("closed audio"));
m_audioOpen = false;
}
}
}
SDL_LockAudio();
- wxLogTrace(_T("sound"), _T("playing new sound"));
+ wxLogTrace(wxT("sound"), wxT("playing new sound"));
m_playing = true;
m_pos = 0;
m_loop = (flags & wxSOUND_LOOP);
// wait until playback finishes if called in sync mode:
if (!(flags & wxSOUND_ASYNC))
{
- wxLogTrace(_T("sound"), _T("waiting for sample to finish"));
+ wxLogTrace(wxT("sound"), wxT("waiting for sample to finish"));
while (m_playing && m_data == data)
{
#if wxUSE_THREADS
wxMutexGuiEnter();
#endif
}
- wxLogTrace(_T("sound"), _T("sample finished"));
+ wxLogTrace(wxT("sound"), wxT("sample finished"));
}
return true;