X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=activex%2Faxvlc.idl;h=a0edad41e4bdbdc4353a81e7af6797689b59d45a;hb=7c3759c3555bd5bda7b0e15b6e5323abc2e6cc5a;hp=b946e6e9c0e59765d9cbbe0b79a91395cb39f1f0;hpb=043ddf1233f41165bae28497ce86fc9a4e8e06a4;p=vlc diff --git a/activex/axvlc.idl b/activex/axvlc.idl index b946e6e9c0..a0edad41e4 100644 --- a/activex/axvlc.idl +++ b/activex/axvlc.idl @@ -4,6 +4,7 @@ * Copyright (C) 2006 the VideoLAN team * * Authors: Damien Fouilleul + * Jean-Paul Saman * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -23,7 +24,7 @@ //comments terminated by [t] are by tonsofpcs, regarding the string review. April 02, 2006. [t] //Possibly change all instances of "the current playlist" to "the playlist" and "current playlist" to "the playlist" [t] -import "oaidl.idl"; +import "ocidl.idl"; [ uuid(DF2BBE39-40A8-433b-A279-073F48DA94B6), @@ -62,6 +63,8 @@ library AXVLC const int VLCPlayListEnd = -666; // DISPID definitions + const int DISPID_BackColor = -501; + const int DISPID_Visible = 100; const int DISPID_Playing = 101; const int DISPID_Position = 102; @@ -79,7 +82,6 @@ library AXVLC uuid(C2FA41D0-B113-476e-AC8C-9BD14999C1C1), helpstring("VLC Control (deprecated)"), dual, - hidden, oleautomation ] interface IVLCControl : IDispatch @@ -165,7 +167,6 @@ library AXVLC [ uuid(DF48072F-5EF8-434e-9B40-E2F3AE759B5F), helpstring("Event interface for VLC control"), - hidden ] dispinterface DVLCEvents { @@ -183,9 +184,7 @@ library AXVLC odl, uuid(9E0BD17B-2D3C-4656-B94D-03084F3FD9D4), helpstring("VLC Audio APIs"), - hidden, dual, - nonextensible, oleautomation ] interface IVLCAudio : IDispatch @@ -202,15 +201,23 @@ library AXVLC [helpstring("Mute/unmute audio playback.")] HRESULT toggleMute(); + + [propget, helpstring("Returns/sets audio track used/to use.")] + HRESULT track([out, retval] long* track); + [propput, helpstring("Returns/sets audio track used/to use.")] + HRESULT track([in] long track); + + [propget, helpstring("Returns audio channel [1-5] indicating; stereo, reverse stereo, left, right, dolby.")] + HRESULT channel([out, retval] long* channel); + [propput, helpstring("Sets audio channel to [1-5] indicating; stereo, reverse stereo, left, right, dolby.")] + HRESULT channel([in] long channel); }; [ odl, uuid(49E0DBD1-9440-466C-9C97-95C67190C603), helpstring("VLC Input APIs"), - hidden, dual, - nonextensible, oleautomation ] interface IVLCInput : IDispatch @@ -247,9 +254,7 @@ library AXVLC odl, uuid(9ED00AFA-7BCD-4FFF-8D48-7DD4DB2C800D), helpstring("VLC Log Message"), - hidden, dual, - nonextensible, oleautomation ] interface IVLCMessage: IDispatch @@ -277,9 +282,7 @@ library AXVLC odl, uuid(15179CD8-CC12-4242-A58E-E412217FF343), helpstring("VLC Log iterator"), - hidden, dual, - nonextensible, oleautomation ] interface IVLCMessageIterator : IDispatch @@ -294,10 +297,8 @@ library AXVLC [ odl, uuid(6C5CE55D-2D6C-4AAD-8299-C62D2371F106), - helpstring("VLC Log APIs"), - hidden, + helpstring("VLC Log Messages Collection."), dual, - nonextensible, oleautomation ] interface IVLCMessages : IDispatch @@ -319,9 +320,7 @@ library AXVLC odl, uuid(8E3BC3D9-62E9-48FB-8A6D-993F9ABC4A0A), helpstring("VLC Log APIs"), - hidden, dual, - nonextensible, oleautomation ] interface IVLCLog : IDispatch @@ -335,31 +334,48 @@ library AXVLC HRESULT verbosity([in] long level); }; + [ + odl, + uuid(FD37FE32-82BC-4A25-B056-315F4DBB194D), + helpstring("VLC Playlist Items collection"), + dual, + oleautomation + ] + interface IVLCPlaylistItems : IDispatch + { + [propget, helpstring("Returns number of items in playlist.")] + HRESULT count([out, retval] long* count); + + [helpstring("Remove all items from playlist.")] + HRESULT clear(); + + [helpstring("remove item from playlist.")] + HRESULT remove([in] long itemId); + }; + [ odl, uuid(54613049-40BF-4035-9E70-0A9312C0188D), helpstring("VLC Playlist APIs"), - hidden, dual, - nonextensible, oleautomation ] interface IVLCPlaylist : IDispatch { - [propget, helpstring("Returns number of items in playlist.")] + [hidden, propget, helpstring("Returns number of items in playlist. (deprecated)")] HRESULT itemCount([out, retval] long* count); [propget, helpstring("Returns whether playback displays video.")] HRESULT isPlaying([out, retval] VARIANT_BOOL* playing); [helpstring("Add a playlist item.")] - HRESULT add([in] BSTR uri, [in, optional] VARIANT name, [in, optional] VARIANT options, [out, retval] long* item); + HRESULT add([in] BSTR uri, [in, optional] VARIANT name, [in, optional] VARIANT options, [out, retval] long* itemId); [helpstring("Play/Resume the playlist.")] HRESULT play(); [helpstring("Play item in playlist.")] - HRESULT playItem([in] long item); + HRESULT playItem([in] long itemId); [helpstring("Play/Pause current clip.")] HRESULT togglePause(); @@ -373,20 +389,21 @@ library AXVLC [helpstring("Advance to previous item in playlist.")] HRESULT prev(); - [helpstring("Remove all items from playlist.")] + [hidden, helpstring("Remove all items from playlist. (deprecated)")] HRESULT clear(); - [helpstring("remove item from playlist.")] + [hidden, helpstring("Remove item from playlist. (deprecated)")] HRESULT removeItem([in] long item); + + [propget, helpstring("Returns the playlist items collection object.")] + HRESULT items([out, retval] IVLCPlaylistItems** obj); }; [ odl, uuid(0AAEDF0B-D333-4B27-A0C6-BBF31413A42E), helpstring("VLC Video APIs"), - hidden, dual, - nonextensible, oleautomation ] interface IVLCVideo : IDispatch @@ -403,19 +420,36 @@ library AXVLC HRESULT height([out, retval] long* height); [propget, helpstring("Returns video aspect ratio.")] - HRESULT aspectRatio([out, retval] BSTR aspect); + HRESULT aspectRatio([out, retval] BSTR* aspect); [propput, helpstring("Sets video aspect ratio.")] HRESULT aspectRatio([in] BSTR aspect); + [propget, helpstring("Returns video subtitle used.")] + HRESULT subtitle([out, retval] long* spu); + [propput, helpstring("Sets video subtitle to use.")] + HRESULT subtitle([in] long spu); + + [propget, helpstring("Returns crop filter geometry.")] + HRESULT crop([out, retval] BSTR* geometry); + [propput, helpstring("Sets crop filter geometry.")] + HRESULT crop([in] BSTR geometry); + + [propget, helpstring("Returns teletext page used.")] + HRESULT subtitle([out, retval] long* page); + [propput, helpstring("Sets teletext page to use.")] + HRESULT subtitle([in] long page); + [helpstring("toggle fullscreen/windowed state.")] HRESULT toggleFullscreen(); + + [helpstring("take video snapshot and save it into picture object.")] + HRESULT takeSnapshot([out, retval] IPictureDisp** picture); }; [ odl, uuid(2D719729-5333-406C-BF12-8DE787FD65E3), helpstring("VLC Control"), - hidden, dual, oleautomation ] @@ -459,6 +493,11 @@ library AXVLC [id(DISPID_Volume), propput, helpstring("Returns/sets default audio volume.")] HRESULT Volume([in] long volume); + [id(DISPID_BackColor), propget, helpstring("Returns/sets background color.")] + HRESULT BackColor([out, retval] OLE_COLOR* backcolor); + [id(DISPID_BackColor), propput, helpstring("Returns/sets background color.")] + HRESULT BackColor([in] OLE_COLOR backcolor); + [propget, helpstring("Returns the audio object.")] HRESULT audio([out, retval] IVLCAudio** obj); @@ -496,6 +535,5 @@ library AXVLC { [default] interface IVLCControl2; interface IVLCControl; - [default, source] dispinterface DVLCEvents; }; };