]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/mediactrl.h
Third part of patch #1178276 and game improvements.
[wxWidgets.git] / include / wx / mediactrl.h
index 4caa45cc70ec98e63b7be7a1cadfabf2bc065864..f8458d3d251da11a90c6ef4c3c15cc3bbae91196 100644 (file)
 #pragma interface "mediactrl.h"
 #endif
 
+#include "wx/defs.h"
+
 // ----------------------------------------------------------------------------
 // Compilation guard
 // ----------------------------------------------------------------------------
+
 #if wxUSE_MEDIACTRL
 
 // ----------------------------------------------------------------------------
@@ -179,10 +182,10 @@ public:
     wxFileOffset Length(); //FIXME: This should be const
 
     //
-    // Unofficial parts of API 
+    // Unofficial parts of API
     //
     //DirectShow/GStreamer only.  Quicktime too, but somewhat buggy...
-    bool Load(const wxURI& location);  
+    bool Load(const wxURI& location);
 
     double GetPlaybackRate();           //All but MCI & GStreamer
     bool SetPlaybackRate(double dRate); //All but MCI & GStreamer
@@ -267,6 +270,16 @@ public:
     virtual wxMediaState GetState()
     {   return wxMEDIASTATE_STOPPED;    }
 
+    virtual void RESERVED1() {}
+    virtual void RESERVED2() {}
+    virtual void RESERVED3() {}
+    virtual void RESERVED4() {}
+    virtual void RESERVED5() {}
+    virtual void RESERVED6() {}
+    virtual void RESERVED7() {}
+    virtual void RESERVED8() {}
+    virtual void RESERVED9() {}
+
     DECLARE_DYNAMIC_CLASS(wxMediaBackend)
 };
 
@@ -281,9 +294,12 @@ DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_MEDIA, wxEVT_MEDIA_STOP,     wxMEDIA_STO
 //Function type(s) our events need
 typedef void (wxEvtHandler::*wxMediaEventFunction)(wxMediaEvent&);
 
+#define wxMediaEventHandler(func) \
+    (wxObjectEventFunction)(wxEventFunction)wxStaticCastEvent(wxMediaEventFunction, &func)
+
 //Macro for usage with message maps
-#define EVT_MEDIA_FINISHED(winid, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_MEDIA_FINISHED, winid, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) (wxMediaEventFunction) & fn, (wxObject *) NULL ),
-#define EVT_MEDIA_STOP(winid, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_MEDIA_STOP, winid, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) (wxMediaEventFunction) & fn, (wxObject *) NULL ),
+#define EVT_MEDIA_FINISHED(winid, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_MEDIA_FINISHED, winid, wxID_ANY, wxMediaEventHandler(fn), (wxObject *) NULL ),
+#define EVT_MEDIA_STOP(winid, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_MEDIA_STOP, winid, wxID_ANY, wxMediaEventHandler(fn), (wxObject *) NULL ),
 
 // ----------------------------------------------------------------------------
 // End compilation gaurd