X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/644cb5372c67d2bd246729257b936bd0aa85b882..eea4d01c65f9b29baa1193db762b4c6b8144af24:/src/common/mediactrlcmn.cpp diff --git a/src/common/mediactrlcmn.cpp b/src/common/mediactrlcmn.cpp index ba9d1c0d9b..555c6e71e3 100644 --- a/src/common/mediactrlcmn.cpp +++ b/src/common/mediactrlcmn.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: src/common/mediactrl.cpp +// Name: src/common/mediactrlcmn.cpp // Purpose: wxMediaCtrl common code // Author: Ryan Norton // Modified by: @@ -12,11 +12,11 @@ // TODO: Platform specific backend defaults? //=========================================================================== -// Definitions +// Declarations //=========================================================================== //--------------------------------------------------------------------------- -// Pre-compiled header stuff +// Includes //--------------------------------------------------------------------------- #include "wx/wxprec.h" @@ -29,11 +29,9 @@ #ifndef WX_PRECOMP #include "wx/hash.h" + #include "wx/log.h" #endif -//--------------------------------------------------------------------------- -// Includes -//--------------------------------------------------------------------------- #include "wx/mediactrl.h" //=========================================================================== @@ -47,14 +45,14 @@ //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ IMPLEMENT_CLASS(wxMediaCtrl, wxControl) -DEFINE_EVENT_TYPE(wxEVT_MEDIA_STATECHANGED) -DEFINE_EVENT_TYPE(wxEVT_MEDIA_PLAY) -DEFINE_EVENT_TYPE(wxEVT_MEDIA_PAUSE) +wxDEFINE_EVENT( wxEVT_MEDIA_STATECHANGED, wxMediaEvent ); +wxDEFINE_EVENT( wxEVT_MEDIA_PLAY, wxMediaEvent ); +wxDEFINE_EVENT( wxEVT_MEDIA_PAUSE, wxMediaEvent ); IMPLEMENT_CLASS(wxMediaBackend, wxObject) IMPLEMENT_DYNAMIC_CLASS(wxMediaEvent, wxEvent) -DEFINE_EVENT_TYPE(wxEVT_MEDIA_FINISHED) -DEFINE_EVENT_TYPE(wxEVT_MEDIA_LOADED) -DEFINE_EVENT_TYPE(wxEVT_MEDIA_STOP) +wxDEFINE_EVENT( wxEVT_MEDIA_FINISHED, wxMediaEvent ); +wxDEFINE_EVENT( wxEVT_MEDIA_LOADED, wxMediaEvent ); +wxDEFINE_EVENT( wxEVT_MEDIA_STOP, wxMediaEvent ); //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // @@ -109,8 +107,7 @@ bool wxMediaCtrl::Create(wxWindow* parent, wxWindowID id, { if (!Load(fileName)) { - delete m_imp; - m_imp = NULL; + wxDELETE(m_imp); return false; } } @@ -126,7 +123,6 @@ bool wxMediaCtrl::Create(wxWindow* parent, wxWindowID id, while((classInfo = NextBackend(&it)) != NULL) { - wxLogMessage( classInfo->GetClassName() ); if(!DoCreate(classInfo, parent, id, pos, size, style, validator, name)) continue; @@ -174,8 +170,7 @@ bool wxMediaCtrl::Create(wxWindow* parent, wxWindowID id, if (!Load(location)) { - delete m_imp; - m_imp = NULL; + wxDELETE(m_imp); return false; } @@ -256,6 +251,7 @@ const wxClassInfo* wxMediaCtrl::NextBackend(wxClassInfo::const_iterator* it) if ( classInfo->IsKindOf(CLASSINFO(wxMediaBackend)) && classInfo != CLASSINFO(wxMediaBackend) ) { + ++(*it); return classInfo; } } @@ -470,7 +466,7 @@ void wxMediaCtrl::DoMoveWindow(int x, int y, int w, int h) //--------------------------------------------------------------------------- // wxMediaCtrl::MacVisibilityChanged //--------------------------------------------------------------------------- -#ifdef __WXMAC__ +#ifdef __WXOSX_CARBON__ void wxMediaCtrl::MacVisibilityChanged() { wxControl::MacVisibilityChanged(); @@ -514,13 +510,13 @@ bool wxMediaBackendCommonBase::SendStopEvent() { wxMediaEvent theEvent(wxEVT_MEDIA_STOP, m_ctrl->GetId()); - return !m_ctrl->ProcessEvent(theEvent) || theEvent.IsAllowed(); + return !m_ctrl->GetEventHandler()->ProcessEvent(theEvent) || theEvent.IsAllowed(); } void wxMediaBackendCommonBase::QueueEvent(wxEventType evtType) { wxMediaEvent theEvent(evtType, m_ctrl->GetId()); - m_ctrl->AddPendingEvent(theEvent); + m_ctrl->GetEventHandler()->AddPendingEvent(theEvent); } void wxMediaBackendCommonBase::QueuePlayEvent() @@ -551,7 +547,7 @@ void wxMediaBackendCommonBase::QueueStopEvent() #ifdef __WXMSW__ // MSW has huge backends so we do it seperately FORCE_LINK(wxmediabackend_am) FORCE_LINK(wxmediabackend_wmp10) -#else +#elif !defined(__WXOSX_COCOA__) FORCE_LINK(basewxmediabackends) #endif