wxMediaCtrl patch from Ryan:

- factored out Active X code into separate files
- also refactored common part of all backends in mediactrlcmn.cpp
- adds async loading from URLs support to Mac version
- support for ShowPlayerControls() in Mac wxMediaCtrl
- more minor bug fixes in the MSW version and the sample

(this is slightly modified patch 1264533 (without the list control part))


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35461 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2005-09-11 11:04:00 +00:00
parent 86e778e267
commit bf354396f6
16 changed files with 2147 additions and 1506 deletions

View File

@@ -326,6 +326,7 @@ public:
DECLARE_DYNAMIC_CLASS(wxMediaBackend)
};
//Event ID to give to our events
#define wxMEDIA_FINISHED_ID 13000
#define wxMEDIA_STOP_ID 13001
@@ -350,6 +351,34 @@ typedef void (wxEvtHandler::*wxMediaEventFunction)(wxMediaEvent&);
# define EVT_MEDIA_LOADED(winid, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_MEDIA_LOADED, winid, wxID_ANY, wxMediaEventHandler(fn), (wxObject *) NULL ),
#endif
// ----------------------------------------------------------------------------
// common backend base class used by many other backends
// ----------------------------------------------------------------------------
class WXDLLIMPEXP_MEDIA wxMediaBackendCommonBase : public wxMediaBackend
{
public:
// add a pending wxMediaEvent of the given type
void QueueEvent(wxEventType evtType);
// notify that the movie playback is finished
void QueueFinishEvent() { QueueEvent(wxEVT_MEDIA_FINISHED); }
// send the stop event and return true if it hasn't been vetoed
bool SendStopEvent();
protected:
// call this when the movie size has changed but not because it has just
// been loaded (in this case, call NotifyMovieLoaded() below)
void NotifyMovieSizeChanged();
// call this when the movie is fully loaded
void NotifyMovieLoaded();
wxMediaCtrl *m_ctrl; // parent control
};
// ----------------------------------------------------------------------------
// End compilation gaurd
// ----------------------------------------------------------------------------