totem r5152 - in trunk: . browser-plugin browser-plugin/idl
- From: hadess svn gnome org
- To: svn-commits-list gnome org
- Subject: totem r5152 - in trunk: . browser-plugin browser-plugin/idl
- Date: Wed, 20 Feb 2008 11:08:43 +0000 (GMT)
Author: hadess
Date: Wed Feb 20 11:08:43 2008
New Revision: 5152
URL: http://svn.gnome.org/viewvc/totem?rev=5152&view=rev
Log:
2008-02-20 Bastien Nocera <hadess hadess net>
* browser-plugin/idl/totemIMullYPlayer.idl:
Implement from documentation
* browser-plugin/totemMullYPlugin.cpp:
Implement stubs for the DivX Web Player Javascript
interface (Closes: #354856)
* browser-plugin/totemConePlugin.cpp:
Fix warning
Modified:
trunk/ChangeLog
trunk/browser-plugin/idl/totemIMullYPlayer.idl
trunk/browser-plugin/totemConePlugin.cpp
trunk/browser-plugin/totemMullYPlugin.cpp
Modified: trunk/browser-plugin/idl/totemIMullYPlayer.idl
==============================================================================
--- trunk/browser-plugin/idl/totemIMullYPlayer.idl (original)
+++ trunk/browser-plugin/idl/totemIMullYPlayer.idl Wed Feb 20 11:08:43 2008
@@ -21,9 +21,69 @@
#include "nsISupports.idl"
+/* Original documentation at:
+ * http://download.divx.com/player/DivXWebPlayer_WebmasterSDK.zip */
+
[scriptable, uuid(9fd39e29-09ec-42ce-a075-a2f58bf40c7b)]
interface totemIMullYPlayer : nsISupports {
+ /* Version */
+ ACString GetVersion ();
+
+ /* Setup */
+ void SetMinVersion (in ACString version);
+ void SetMode (in ACString mode);
+ void SetAllowContextMenu (in boolean allow);
+ void SetAutoPlay (in boolean play);
+ void SetLoop (in boolean loop);
+ void SetBufferingMode (in ACString mode);
+ void SetBannerEnabled (in boolean enabled);
+ void SetVolume (in unsigned long volume);
+ void SetMovieTitle (in AUTF8String movieTitle);
+ void SetPreviewImage (in AUTF8String imageURL);
+ void SetPreviewMessage (in AUTF8String message);
+ void SetPreviewMessageFontSize (in unsigned long size);
+
+ /* Media management */
+ void Open (in AUTF8String URL);
+
+ /* Playback */
void Play ();
- void Rewind ();
+ void Pause ();
+ void StepForward ();
+ void StepBackward ();
+ void FF ();
+ void RW ();
void Stop ();
+ void Mute ();
+ void UnMute ();
+ void Seek (in ACString method, in unsigned long percent);
+
+ /* Windowing */
+ void About ();
+ void ShowPreferences ();
+ void ShowContextMenu ();
+ void GoEmbedded ();
+ void GoWindowed ();
+ void GoFullscreen ();
+ void Resize (in unsigned long width, in unsigned long height);
+
+ /* Media information */
+ unsigned long GetTotalTime ();
+ unsigned long GetVideoWidth ();
+ unsigned long GetVideoHeight ();
+ double GetTotalVideoFrames ();
+ double GetVideoFramerate ();
+ unsigned long GetNumberOfAudioTracks ();
+ unsigned long GetNumberOfSubtitleTracks ();
+ ACString GetAudioTrackLanguage (in unsigned long trackIndex);
+ ACString GetSubtitleTrackLanguage (in unsigned long trackIndex);
+ AUTF8String GetAudioTrackName (in unsigned long trackIndex);
+ AUTF8String GetSubtitleTrackName (in unsigned long trackIndex);
+ long GetCurrentAudioTrack ();
+ long GetCurrentSubtitleTrack ();
+
+ /* Media management */
+ void SetCurrentAudioTrack (in long index);
+ void SetCurrentSubtitleTrack (in long index);
};
+
Modified: trunk/browser-plugin/totemConePlugin.cpp
==============================================================================
--- trunk/browser-plugin/totemConePlugin.cpp (original)
+++ trunk/browser-plugin/totemConePlugin.cpp Wed Feb 20 11:08:43 2008
@@ -36,6 +36,8 @@
/* define GNOME_ENABLE_DEBUG for more debug spew */
#include "debug.h"
+#include "totemICone.h"
+
#include "totemDebug.h"
#include "totemClassInfo.h"
@@ -437,7 +439,7 @@
NS_ENSURE_STATE (IsValid ());
- *_retval = mPlugin->mVolume * 200.0;
+ *_retval = (PRInt32) (mPlugin->mVolume * 200.0);
return NS_OK;
}
Modified: trunk/browser-plugin/totemMullYPlugin.cpp
==============================================================================
--- trunk/browser-plugin/totemMullYPlugin.cpp (original)
+++ trunk/browser-plugin/totemMullYPlugin.cpp Wed Feb 20 11:08:43 2008
@@ -38,6 +38,7 @@
#include "totemIMullYPlayer.h"
+#include "totemDebug.h"
#include "totemClassInfo.h"
#include "totemMullYPlugin.h"
@@ -49,7 +50,8 @@
static const char kClassDescription[] = "totemMullYPlugin";
static const char kPluginDescription[] = "DivX\xC2\xAE Web Player";
-static const char kPluginLongDescription[] = "DivX Web Player version 1.4.0.233";
+#define TOTEM_MULLY_VERSION "1.4.0.233"
+static const char kPluginLongDescription[] = "DivX Web Player version " TOTEM_MULLY_VERSION;
static const totemPluginMimeEntry kMimeTypes[] = {
{ "video/divx", "divx", "video/x-msvideo" },
@@ -103,14 +105,134 @@
/* totemIMullYPlayer */
+#define TOTEM_SCRIPTABLE_INTERFACE "totemIMullYPlayer"
+
+/* ACString GetVersion (); */
NS_IMETHODIMP
-totemScriptablePlugin::Rewind ()
+totemScriptablePlugin::GetVersion(nsACString & aVersion)
{
- NS_ENSURE_STATE (IsValid ());
+ aVersion.Assign (TOTEM_MULLY_VERSION);
+ return NS_OK;
+}
- return mPlugin->DoCommand (TOTEM_COMMAND_PAUSE);
+/* void SetMinVersion (in ACString version); */
+NS_IMETHODIMP
+totemScriptablePlugin::SetMinVersion(const nsACString & aVersion)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void SetMode (in ACString mode); */
+NS_IMETHODIMP
+totemScriptablePlugin::SetMode(const nsACString & aMode)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void SetAllowContextMenu (in boolean allow); */
+NS_IMETHODIMP
+totemScriptablePlugin::SetAllowContextMenu(PRBool allowed)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void SetAutoPlay (in boolean play); */
+NS_IMETHODIMP
+totemScriptablePlugin::SetAutoPlay(PRBool aPlay)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
}
+/* void SetLoop (in boolean loop); */
+NS_IMETHODIMP
+totemScriptablePlugin::SetLoop(PRBool aLoop)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void SetBufferingMode (in ACString mode); */
+NS_IMETHODIMP
+totemScriptablePlugin::SetBufferingMode(const nsACString & aMode)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void SetBannerEnabled (in boolean enabled); */
+NS_IMETHODIMP
+totemScriptablePlugin::SetBannerEnabled(PRBool enabled)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void SetVolume (in unsigned long volume); */
+NS_IMETHODIMP
+totemScriptablePlugin::SetVolume(PRUint32 aVolume)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void SetMovieTitle (in AUTF8String movieTitle); */
+NS_IMETHODIMP
+totemScriptablePlugin::SetMovieTitle (const nsACString & aMovieTitle)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void SetPreviewImage (in AUTF8String imageURL); */
+NS_IMETHODIMP
+totemScriptablePlugin::SetPreviewImage (const nsACString & aImageURL)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void SetPreviewMessage (in AUTF8String message); */
+NS_IMETHODIMP
+totemScriptablePlugin::SetPreviewMessage (const nsACString & aMessage)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void SetPreviewMessageFontSize (in unsigned long size); */
+NS_IMETHODIMP
+totemScriptablePlugin::SetPreviewMessageFontSize(PRUint32 aSize)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void Open (in AUTF8String URL); */
+NS_IMETHODIMP
+totemScriptablePlugin::Open(const nsACString & aURL)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void Play (); */
NS_IMETHODIMP
totemScriptablePlugin::Play ()
{
@@ -119,10 +241,282 @@
return mPlugin->DoCommand (TOTEM_COMMAND_PLAY);
}
+/* void Pause (); */
+NS_IMETHODIMP
+totemScriptablePlugin::Pause ()
+{
+ NS_ENSURE_STATE (IsValid ());
+
+ return mPlugin->DoCommand (TOTEM_COMMAND_PAUSE);
+}
+
+/* void StepForward (); */
+NS_IMETHODIMP
+totemScriptablePlugin::StepForward()
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void StepBackward (); */
+NS_IMETHODIMP
+totemScriptablePlugin::StepBackward()
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void FF (); */
+NS_IMETHODIMP
+totemScriptablePlugin::FF()
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void RW (); */
NS_IMETHODIMP
-totemScriptablePlugin::Stop ()
+totemScriptablePlugin::RW()
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void Stop (); */
+NS_IMETHODIMP
+totemScriptablePlugin::Stop()
{
NS_ENSURE_STATE (IsValid ());
return mPlugin->DoCommand (TOTEM_COMMAND_STOP);
}
+
+/* void Mute (); */
+NS_IMETHODIMP
+totemScriptablePlugin::Mute()
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void UnMute (); */
+NS_IMETHODIMP
+totemScriptablePlugin::UnMute()
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void Seek (in ACString method, in unsigned long percent); */
+NS_IMETHODIMP
+totemScriptablePlugin::Seek(const nsACString & aMethod, PRUint32 aPercent)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void About (); */
+NS_IMETHODIMP
+totemScriptablePlugin::About()
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void ShowPreferences (); */
+NS_IMETHODIMP
+totemScriptablePlugin::ShowPreferences()
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void ShowContextMenu (); */
+NS_IMETHODIMP
+totemScriptablePlugin::ShowContextMenu()
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void GoEmbedded (); */
+NS_IMETHODIMP
+totemScriptablePlugin::GoEmbedded()
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void GoWindowed (); */
+NS_IMETHODIMP
+totemScriptablePlugin::GoWindowed()
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void GoFullscreen (); */
+NS_IMETHODIMP
+totemScriptablePlugin::GoFullscreen()
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void Resize (in unsigned long width, in unsigned long height); */
+NS_IMETHODIMP
+totemScriptablePlugin::Resize(PRUint32 aWidth, PRUint32 aHeight)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* unsigned long GetTotalTime (); */
+NS_IMETHODIMP
+totemScriptablePlugin::GetTotalTime(PRUint32 *aTime)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* unsigned long GetVideoWidth (); */
+NS_IMETHODIMP
+totemScriptablePlugin::GetVideoWidth(PRUint32 *aWidth)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* unsigned long GetVideoHeight (); */
+NS_IMETHODIMP
+totemScriptablePlugin::GetVideoHeight(PRUint32 *aHeight)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* double GetTotalVideoFrames (); */
+NS_IMETHODIMP
+totemScriptablePlugin::GetTotalVideoFrames(double *aPosition)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* double GetVideoFramerate (); */
+NS_IMETHODIMP
+totemScriptablePlugin::GetVideoFramerate(double *aPosition)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* unsigned long GetNumberOfAudioTracks (); */
+NS_IMETHODIMP
+totemScriptablePlugin::GetNumberOfAudioTracks(PRUint32 *aNumAudioTracks)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* unsigned long GetNumberOfSubtitleTracks (); */
+NS_IMETHODIMP
+totemScriptablePlugin::GetNumberOfSubtitleTracks(PRUint32 *aNumSubtitleTracks)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* ACString GetAudioTrackLanguage (in unsigned long trackIndex); */
+NS_IMETHODIMP
+totemScriptablePlugin::GetAudioTrackLanguage(PRUint32 trackIndex, nsACString & _retval)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* ACString GetSubtitleTrackLanguage (in unsigned long trackIndex); */
+NS_IMETHODIMP
+totemScriptablePlugin::GetSubtitleTrackLanguage(PRUint32 trackIndex, nsACString & _retval)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* AUTF8String GetAudioTrackName (in unsigned long trackIndex); */
+NS_IMETHODIMP
+totemScriptablePlugin::GetAudioTrackName(PRUint32 trackIndex, nsACString & _retval)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* AUTF8String GetSubtitleTrackName (in unsigned long trackIndex); */
+NS_IMETHODIMP
+totemScriptablePlugin::GetSubtitleTrackName(PRUint32 trackIndex, nsACString & _retval)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* long GetCurrentAudioTrack (); */
+NS_IMETHODIMP
+totemScriptablePlugin::GetCurrentAudioTrack(PRInt32 *_retval)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* long GetCurrentSubtitleTrack (); */
+NS_IMETHODIMP
+totemScriptablePlugin::GetCurrentSubtitleTrack(PRInt32 *_retval)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void SetCurrentAudioTrack (in long index); */
+NS_IMETHODIMP
+totemScriptablePlugin::SetCurrentAudioTrack(PRInt32 index)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* void SetCurrentSubtitleTrack (in long index); */
+NS_IMETHODIMP
+totemScriptablePlugin::SetCurrentSubtitleTrack(PRInt32 index)
+{
+ TOTEM_SCRIPTABLE_WARN_UNIMPLEMENTED ();
+
+ return NS_ERROR_NOT_IMPLEMENTED;
+}
+
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]