]> git.sesse.net Git - vlc/blobdiff - projects/activex/axvlc.idl
osx/framework: added methods to access end-user-compliant names of subtitles, audio...
[vlc] / projects / activex / axvlc.idl
index 94dcaff492f2f112ce919485caa28496fdf27759..6e131ff2ac7c8561096986255b5838d1cf0f9a28 100644 (file)
@@ -38,10 +38,12 @@ library AXVLC
     interface IVLCAudio;\r
     interface IVLCInput;\r
     interface IVLCLog;\r
+    interface IVLCMarquee;\r
     interface IVLCMessage;\r
     interface IVLCMessageIterator;\r
     interface IVLCMessages;\r
     interface IVLCPlaylist;\r
+    interface IVLCSubtitle;\r
     interface IVLCVideo;\r
     interface IVLCControl2;\r
     dispinterface DVLCEvents;\r
@@ -134,15 +136,6 @@ library AXVLC
 ** for compatibility with some scripting language (JScript)\r
 */\r
 \r
-        /*\r
-         * caution: vlcobject.toolbar:bool does not yet exists in Firefox\r
-         * plugin. Official usage is through "toolbar" property for now,\r
-         * which is compatibile with Firefox.\r
-         */\r
-        [id(DISPID_Toolbar), propget, helpstring("Returns/sets visibility of the toolbar")]\r
-        HRESULT Toolbar([out, retval] VARIANT_BOOL* visible);\r
-        [id(DISPID_Toolbar), propput, helpstring("Returns/sets visibility of the toolbar")]\r
-        HRESULT Toolbar([in] VARIANT_BOOL visible);\r
         HRESULT addTarget([in] BSTR uri, [in] VARIANT options, [in] enum VLCPlaylistMode mode, [in] int position);\r
         [propget, helpstring("Returns index of current item in playlist.")]\r
         HRESULT PlaylistIndex([out, retval] int* index);\r
@@ -217,6 +210,11 @@ library AXVLC
         [propput, helpstring("Returns/sets audio track used/to use.")]\r
         HRESULT track([in] long track);\r
 \r
+        [propget, helpstring("Returns the number of audio tracks available.")]\r
+        HRESULT count([out, retval] long* trackNumber);\r
+        [helpstring("Returns audio track name.")]\r
+        HRESULT description([in] long trackID, [out, retval] BSTR* name);\r
+\r
         [propget, helpstring("Returns audio channel [1-5] indicating; stereo, reverse stereo, left, right, dolby.")]\r
         HRESULT channel([out, retval] long* channel);\r
         [propput, helpstring("Sets audio channel to [1-5] indicating; stereo, reverse stereo, left, right, dolby.")]\r
@@ -409,6 +407,62 @@ library AXVLC
         HRESULT items([out, retval] IVLCPlaylistItems** obj);\r
     };\r
 \r
+    [\r
+      odl,\r
+      uuid(465E787A-0556-452F-9477-954E4A940003),\r
+      helpstring("VLC Subtitle APIs"),\r
+      dual,\r
+      oleautomation\r
+    ]\r
+    interface IVLCSubtitle : IDispatch\r
+    {\r
+        [propget, helpstring("Returns video subtitle used.")]\r
+        HRESULT track([out, retval] long* spu);\r
+        [propput, helpstring("Sets video subtitle to use.")]\r
+        HRESULT track([in] long spu);\r
+\r
+        [propget, helpstring("Returns the number of video subtitles available.")]\r
+        HRESULT count([out, retval] long* spuNumber);\r
+        [helpstring("Returns video subtitle name.")]\r
+        HRESULT description([in] long nameID, [out, retval] BSTR* name);\r
+    };\r
+\r
+    [\r
+      odl,\r
+      uuid(8D076AD6-9B6F-4150-A0FD-5D7E8C8CB02C),\r
+      helpstring("VLC Marquee Filter"),\r
+      dual,\r
+      oleautomation\r
+    ]\r
+    interface IVLCMarquee : IDispatch\r
+    {\r
+        [helpstring("enable Marquee Filter.")]\r
+        HRESULT enable();\r
+\r
+        [helpstring("disable Marquee Filter.")]\r
+        HRESULT disable();\r
+\r
+        [helpstring("set text to Marquee Filter.")]\r
+        HRESULT text([in] BSTR text);\r
+\r
+        [helpstring("change text color.")]\r
+        HRESULT color ([in] long val);\r
+        [helpstring("change  text opacity.")]\r
+        HRESULT opacity ([in] long val);\r
+        [helpstring("change text position.")]\r
+        HRESULT position ([in] long val);\r
+        [helpstring("change refresh time.")]\r
+        HRESULT refresh ([in] long val);\r
+        [helpstring("change text size.")]\r
+        HRESULT size ([in] long val);\r
+        [helpstring("change timeout.")]\r
+        HRESULT timeout ([in] long val);\r
+        [helpstring("change text abcissa.")]\r
+        HRESULT x ([in] long val);\r
+        [helpstring("change text ordinate.")]\r
+        HRESULT y ([in] long val);\r
+    };\r
+\r
     [\r
       odl,\r
       uuid(0AAEDF0B-D333-4B27-A0C6-BBF31413A42E),\r
@@ -420,6 +474,7 @@ library AXVLC
     {\r
         [propget, helpstring("Returns/sets the fullscreen state.")]\r
         HRESULT fullscreen([out, retval] VARIANT_BOOL* fullscreen);\r
+\r
         [propput, helpstring("Returns/sets the fullscreen state.")]\r
         HRESULT fullscreen([in] VARIANT_BOOL fullscreen);\r
 \r
@@ -449,6 +504,11 @@ library AXVLC
         [propput, helpstring("Sets teletext page to use.")]\r
         HRESULT teletext([in] long page);\r
 \r
+        [helpstring("Enable deinterlace filter.")]\r
+        HRESULT deinterlaceEnable([in] BSTR mode);\r
+        [helpstring("Disable deinterlace filter.")]\r
+        HRESULT deinterlaceDisable();\r
+\r
         [helpstring("toggle fullscreen/windowed state.")]\r
         HRESULT toggleFullscreen();\r
 \r
@@ -457,6 +517,9 @@ library AXVLC
 \r
         [helpstring("toggle teletext transparent state.")]\r
         HRESULT toggleTeletext();\r
+\r
+        [propget, helpstring("Returns the marquee object.")]\r
+        HRESULT marquee([out, retval] IVLCMarquee** obj);\r
     };\r
 \r
     [\r
@@ -511,6 +574,16 @@ library AXVLC
         [id(DISPID_BackColor), propput, helpstring("Returns/sets background color.")]\r
         HRESULT BackColor([in] OLE_COLOR backcolor);\r
 \r
+        /*\r
+         * caution: vlcobject.toolbar:bool does not yet exists in Firefox\r
+         * plugin. Official usage is through "toolbar" property for now,\r
+         * which is compatibile with Firefox.\r
+         */\r
+        [id(DISPID_Toolbar), propget, helpstring("Returns/sets visibility of the toolbar")]\r
+        HRESULT Toolbar([out, retval] VARIANT_BOOL* visible);\r
+        [id(DISPID_Toolbar), propput, helpstring("Returns/sets visibility of the toolbar")]\r
+        HRESULT Toolbar([in] VARIANT_BOOL visible);\r
+\r
         [propget, helpstring("Returns the audio object.")]\r
         HRESULT audio([out, retval] IVLCAudio** obj);\r
 \r
@@ -523,6 +596,9 @@ library AXVLC
         [propget, helpstring("Returns the playlist object.")]\r
         HRESULT playlist([out, retval] IVLCPlaylist** obj);\r
 \r
+        [propget, helpstring("Returns the audio object.")]\r
+        HRESULT subtitle([out, retval] IVLCSubtitle** obj);\r
+\r
         [propget, helpstring("Returns the audio object.")]\r
         HRESULT video([out, retval] IVLCVideo** obj);\r
     };\r