]> git.saurik.com Git - wxWidgets.git/blobdiff - src/osx/carbon/mediactrl.cpp
adding mimetype patch, closes #12072
[wxWidgets.git] / src / osx / carbon / mediactrl.cpp
index 9d525f5b592f7cd05128652332ff83e1de51d6f7..ba2e5831e587fc6864c7db386454264cb2253e55 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        src/mac/carbon/mediactrl.cpp
+// Name:        src/osx/carbon/mediactrl.cpp
 // Purpose:     Built-in Media Backends for Mac
 // Author:      Ryan Norton <wxprojects@comcast.net>
 // Modified by:
     #include "wx/timer.h"
 #endif
 
-// uma is for wxMacFSSpec
-#include "wx/mac/uma.h"
-
-// standard QT stuff
-#ifndef __DARWIN__
-#include <Movies.h>
-#include <Gestalt.h>
-#include <QuickTimeComponents.h>
-#else
-#include <QuickTime/QuickTimeComponents.h>
-#endif
-
-#if !defined(__LP64__)
+#if wxOSX_USE_CARBON
 #define USE_QUICKTIME 1
 #else
 #define USE_QUICKTIME 0
@@ -65,6 +53,9 @@
 
 #if USE_QUICKTIME
 
+#include "wx/osx/private.h"
+#include <QuickTime/QuickTimeComponents.h>
+
 //---------------------------------------------------------------------------
 // Height and Width of movie controller in the movie control (apple samples)
 //---------------------------------------------------------------------------
@@ -95,6 +86,11 @@ public:
 
     virtual bool Load(const wxString& fileName);
     virtual bool Load(const wxURI& location);
+    virtual bool Load(const wxURI& location,
+                      const wxURI& WXUNUSED(proxy))
+    {
+        return Load(location);
+    }
 
     virtual bool Play();
     virtual bool Pause();
@@ -190,7 +186,7 @@ public:
 private:
     wxQTMediaBackend *m_qtb;
 
-    DECLARE_NO_COPY_CLASS(wxQTMediaEvtHandler)
+    wxDECLARE_NO_COPY_CLASS(wxQTMediaEvtHandler);
 };
 
 //===========================================================================
@@ -331,7 +327,7 @@ wxQTMediaBackend::~wxQTMediaBackend()
         // Dispose of the movie controller
         ::DisposeMovieController(m_mc);
         m_mc = NULL;
-        
+
         // Dispose of offscreen GWorld
         ::DisposeGWorld(m_movieWorld);
     }
@@ -439,7 +435,7 @@ bool wxQTMediaBackend::Load(const wxString& fileName)
         NULL); // wasChanged
 
     // Do not use ::GetMoviesStickyError() here because it returns -2009
-    // a.k.a. invalid track on valid mpegs          
+    // a.k.a. invalid track on valid mpegs
     if (err == noErr && ::GetMoviesError() == noErr)
     {
         ::CloseMovieFile(movieResFile);
@@ -773,7 +769,8 @@ bool wxQTMediaBackend::SetPosition(wxLongLong where)
 {
     TimeRecord theTimeRecord;
     memset(&theTimeRecord, 0, sizeof(TimeRecord));
-    theTimeRecord.value.lo = where.GetValue();
+    theTimeRecord.value.lo = where.GetLo();
+    theTimeRecord.value.hi = where.GetHi();
     theTimeRecord.scale = ::GetMovieTimeScale(m_movie);
     theTimeRecord.base = ::GetMovieTimeBase(m_movie);
     ::SetMovieTime(m_movie, &theTimeRecord);
@@ -878,11 +875,7 @@ wxMediaState wxQTMediaBackend::GetState()
 void wxQTMediaBackend::Cleanup()
 {
     m_bPlaying = false;
-    if (m_timer)
-    {
-        delete m_timer;
-        m_timer = NULL;
-    }
+    wxDELETE(m_timer);
 
     // Stop the movie:
     // Apple samples with CreateMovieControl typically