| /* |
| * Copyright 2004 Kevin Koltzau |
| * |
| * This library is free software; you can redistribute it and/or |
| * modify it under the terms of the GNU Lesser General Public |
| * License as published by the Free Software Foundation; either |
| * version 2.1 of the License, or (at your option) any later version. |
| * |
| * This library is distributed in the hope that it will be useful, |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| * Lesser General Public License for more details. |
| * |
| * You should have received a copy of the GNU Lesser General Public |
| * License along with this library; if not, write to the Free Software |
| * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA |
| */ |
| |
| #ifndef DO_NO_IMPORTS |
| import "ocidl.idl"; |
| import "oleidl.idl"; |
| import "oaidl.idl"; |
| #endif |
| |
| cpp_quote("#ifndef _NO_SCRIPT_GUIDS") |
| |
| cpp_quote("DEFINE_GUID(CATID_ActiveScript, 0xf0b7a1a1,0x9847,0x11cf,0x8f,0x20,0x00,0x80,0x5f,0x2c,0xd0,0x64);") |
| cpp_quote("DEFINE_GUID(CATID_ActiveScriptParse, 0xf0b7a1a2,0x9847,0x11cf,0x8f,0x20,0x00,0x80,0x5f,0x2c,0xd0,0x64);") |
| cpp_quote("DEFINE_GUID(CATID_ActiveScriptEncode, 0xf0b7a1a3,0x9847,0x11cf,0x8f,0x20,0x00,0x80,0x5f,0x2c,0xd0,0x64);") |
| |
| cpp_quote("#endif") |
| |
| cpp_quote("#define SCRIPTPROP_NAME 0x00000000") |
| cpp_quote("#define SCRIPTPROP_MAJORVERSION 0x00000001") |
| cpp_quote("#define SCRIPTPROP_MINORVERSION 0x00000002") |
| cpp_quote("#define SCRIPTPROP_BUILDNUMBER 0x00000003") |
| cpp_quote("#define SCRIPTPROP_DELAYEDEVENTSINKING 0x00001000") |
| cpp_quote("#define SCRIPTPROP_CATCHEXCEPTION 0x00001001") |
| cpp_quote("#define SCRIPTPROP_CONVERSIONLCID 0x00001002") |
| cpp_quote("#define SCRIPTPROP_HOSTSTACKREQUIRED 0x00001003") |
| cpp_quote("#define SCRIPTPROP_DEBUGGER 0x00001100") |
| cpp_quote("#define SCRIPTPROP_JITDEBUG 0x00001101") |
| cpp_quote("#define SCRIPTPROP_HACK_FIBERSUPPORT 0x70000000") |
| cpp_quote("#define SCRIPTPROP_HACK_TRIDENTEVENTSINK 0x70000001") |
| |
| typedef enum tagSCRIPTSTATE { |
| SCRIPTSTATE_UNINITIALIZED = 0, |
| SCRIPTSTATE_STARTED = 1, |
| SCRIPTSTATE_CONNECTED = 2, |
| SCRIPTSTATE_DISCONNECTED = 3, |
| SCRIPTSTATE_CLOSED = 4, |
| SCRIPTSTATE_INITIALIZED = 5 |
| } SCRIPTSTATE; |
| |
| typedef enum tagSCRIPTTHREADSTATE { |
| SCRIPTTHREADSTATE_NOTINSCRIPT = 0, |
| SCRIPTTHREADSTATE_RUNNING = 1 |
| } SCRIPTTHREADSTATE; |
| |
| typedef DWORD SCRIPTTHREADID; |
| cpp_quote("#define SCRIPTTHREADID_CURRENT ((SCRIPTTHREADID)-1)") |
| cpp_quote("#define SCRIPTTHREADID_BASE ((SCRIPTTHREADID)-2)") |
| cpp_quote("#define SCRIPTTHREADID_ALL ((SCRIPTTHREADID)-3)") |
| |
| cpp_quote("#define SCRIPTITEM_ISVISIBLE 0x00000002") |
| cpp_quote("#define SCRIPTITEM_ISSOURCE 0x00000004") |
| cpp_quote("#define SCRIPTITEM_GLOBALMEMBERS 0x00000008") |
| cpp_quote("#define SCRIPTITEM_ISPERSISTENT 0x00000040") |
| cpp_quote("#define SCRIPTITEM_CODEONLY 0x00000200") |
| cpp_quote("#define SCRIPTITEM_NOCODE 0x00000400") |
| cpp_quote("#define SCRIPTITEM_ALL_FLAGS (SCRIPTITEM_ISSOURCE | \\") |
| cpp_quote(" SCRIPTITEM_ISVISIBLE | \\") |
| cpp_quote(" SCRIPTITEM_ISPERSISTENT | \\") |
| cpp_quote(" SCRIPTITEM_GLOBALMEMBERS | \\") |
| cpp_quote(" SCRIPTITEM_NOCODE | \\") |
| cpp_quote(" SCRIPTITEM_CODEONLY)") |
| cpp_quote("#define SCRIPTTYPELIB_ISCONTROL 0x00000010") |
| cpp_quote("#define SCRIPTTYPELIB_ISPERSISTENT 0x00000040") |
| cpp_quote("#define SCRIPTTYPELIB_ALL_FLAGS (SCRIPTTEXT_ISCONTROL | SCRIPTTYPELIB_ISPERSISTENT)") |
| cpp_quote("#define SCRIPTTEXT_DELAYEXECUTION 0x00000001") |
| cpp_quote("#define SCRIPTTEXT_ISVISIBLE 0x00000002") |
| cpp_quote("#define SCRIPTTEXT_ISEXPRESSION 0x00000020") |
| cpp_quote("#define SCRIPTTEXT_ISPERSISTENT 0x00000040") |
| cpp_quote("#define SCRIPTTEXT_HOSTMANAGESSOURCE 0x00000080") |
| cpp_quote("#define SCRIPTTEXT_ALL_FLAGS (SCRIPTTEXT_DELAYEXECUTION | \\") |
| cpp_quote(" SCRIPTTEXT_ISVISIBLE | \\") |
| cpp_quote(" SCRIPTTEXT_ISEXPRESSION | \\") |
| cpp_quote(" SCRIPTTEXT_ISPERSISTENT | \\") |
| cpp_quote(" SCRIPTTEXT_HOSTMANAGESSOURCE)") |
| cpp_quote("#define SCRIPTPROC_HOSTMANAGESSOURCE 0x00000080") |
| cpp_quote("#define SCRIPTPROC_IMPLICIT_THIS 0x00000100") |
| cpp_quote("#define SCRIPTPROC_IMPLICIT_PARENTS 0x00000200") |
| cpp_quote("#define SCRIPTPROC_ALL_FLAGS (SCRIPTPROC_HOSTMANAGESSOURCE | \\") |
| cpp_quote(" SCRIPTPROC_IMPLICIT_THIS | \\") |
| cpp_quote(" SCRIPTPROC_IMPLICIT_PARENTS)") |
| cpp_quote("#define SCRIPTINFO_IUNKNOWN 0x00000001") |
| cpp_quote("#define SCRIPTINFO_ITYPEINFO 0x00000002") |
| cpp_quote("#define SCRIPTINFO_ALL_FLAGS (SCRIPTINFO_IUNKNOWN | SCRIPTINFO_ITYPEINFO)") |
| cpp_quote("#define SCRIPTINTERRUPT_DEBUG 0x00000001") |
| cpp_quote("#define SCRIPTINTERRUPT_RAISEEXCEPTION 0x00000002") |
| cpp_quote("#define SCRIPTINTERRUPT_ALL_FLAGS (SCRIPTINTERRUPT_DEBUG | SCRIPTINTERRUPT_RAISEEXCEPTION)") |
| cpp_quote("#define SCRIPTSTAT_STATEMENT_COUNT 1") |
| cpp_quote("#define SCRIPTSTAT_INSTRUCTION_COUNT 2") |
| cpp_quote("#define SCRIPTSTAT_INTSTRUCTION_TIME 3") |
| cpp_quote("#define SCRIPTSTAT_TOTAL_TIME 4") |
| |
| [ |
| object, |
| uuid(EAE1BA61-A4ED-11cf-8F20-00805F2CD064), |
| pointer_default(unique) |
| ] |
| interface IActiveScriptError : IUnknown |
| { |
| HRESULT GetExceptionInfo( |
| [out] EXCEPINFO *pexcepinfo |
| ); |
| |
| HRESULT GetSourcePosition( |
| [out] DWORD *pdwSourceContext, |
| [out] ULONG *pulLineNumber, |
| [out] LONG *plCharacterPosition |
| ); |
| |
| HRESULT GetSourceLineText( |
| [out] BSTR *pbstrSourceLine |
| ); |
| } |
| |
| [ |
| object, |
| uuid(DB01A1E3-A42B-11cf-8F20-00805F2CD064), |
| pointer_default(unique) |
| ] |
| interface IActiveScriptSite : IUnknown |
| { |
| HRESULT GetLCID( |
| [out] LCID *plcid); |
| |
| HRESULT GetItemInfo( |
| [in] LPCOLESTR pstrName, |
| [in] DWORD dwReturnMask, |
| [out] IUnknown **ppiunkItem, |
| [out] ITypeInfo **ppti |
| ); |
| |
| HRESULT GetDocVersionString( |
| [out] BSTR *pbstrVersion |
| ); |
| |
| HRESULT OnScriptTerminate( |
| [in] const VARIANT *pvarResult, |
| [in] const EXCEPINFO *pexcepinfo |
| ); |
| |
| HRESULT OnStateChange( |
| [in] SCRIPTSTATE ssScriptState |
| ); |
| |
| HRESULT OnScriptError( |
| [in] IActiveScriptError *pscripterror |
| ); |
| |
| HRESULT OnEnterScript(void); |
| |
| HRESULT OnLeaveScript(void); |
| } |
| |
| cpp_quote("typedef IActiveScriptSite *PIActiveScriptSite;") |
| |
| [ |
| object, |
| uuid(D10F6761-83E9-11cf-8F20-00805F2CD064), |
| pointer_default(unique) |
| ] |
| interface IActiveScriptSiteWindow : IUnknown |
| { |
| HRESULT GetWindow( |
| [out] HWND *phwnd |
| ); |
| |
| HRESULT EnableModeless( |
| [in] BOOL fEnable |
| ); |
| } |
| |
| [ |
| object, |
| uuid(539698A0-CDCA-11CF-A5EB-00AA0047A063), |
| pointer_default(unique) |
| ] |
| interface IActiveScriptSiteInterruptPoll : IUnknown |
| { |
| HRESULT QueryContinue(); |
| } |
| |
| [ |
| object, |
| uuid(BB1A2AE1-A4F9-11cf-8F20-00805F2CD064), |
| pointer_default(unique) |
| ] |
| interface IActiveScript : IUnknown |
| { |
| HRESULT SetScriptSite( |
| [in] IActiveScriptSite *pass |
| ); |
| |
| HRESULT GetScriptSite( |
| [in] REFIID riid, |
| [out, iid_is(riid)] void **ppvObject |
| ); |
| |
| HRESULT SetScriptState( |
| [in] SCRIPTSTATE ss |
| ); |
| |
| HRESULT GetScriptState( |
| [out] SCRIPTSTATE *pssState |
| ); |
| |
| HRESULT Close(void); |
| |
| HRESULT AddNamedItem( |
| [in] LPCOLESTR pstrName, |
| [in] DWORD dwFlags |
| ); |
| |
| HRESULT AddTypeLib( |
| [in] REFGUID rguidTypeLib, |
| [in] DWORD dwMajor, |
| [in] DWORD dwMinor, |
| [in] DWORD dwFlags |
| ); |
| |
| HRESULT GetScriptDispatch( |
| [in] LPCOLESTR pstrItemName, |
| [out] IDispatch **ppdisp |
| ); |
| |
| HRESULT GetCurrentScriptThreadID( |
| [out] SCRIPTTHREADID *pstidThread |
| ); |
| |
| HRESULT GetScriptThreadID( |
| [in] DWORD dwWin32ThreadId, |
| [out] SCRIPTTHREADID *pstidThread |
| ); |
| |
| HRESULT GetScriptThreadState( |
| [in] SCRIPTTHREADID stidThread, |
| [out] SCRIPTTHREADSTATE *pstsState |
| ); |
| |
| HRESULT InterruptScriptThread( |
| [in] SCRIPTTHREADID stidThread, |
| [in] const EXCEPINFO *pexcepinfo, |
| [in] DWORD dwFlags |
| ); |
| |
| HRESULT Clone( |
| [out] IActiveScript **ppscript |
| ); |
| } |
| |
| cpp_quote("typedef IActiveScript *PIActiveScript;") |
| |
| [ |
| object, |
| uuid(BB1A2AE2-A4F9-11cf-8F20-00805F2CD064), |
| pointer_default(unique) |
| ] |
| interface IActiveScriptParse : IUnknown |
| { |
| HRESULT InitNew(void); |
| |
| HRESULT AddScriptlet( |
| [in] LPCOLESTR pstrDefaultName, |
| [in] LPCOLESTR pstrCode, |
| [in] LPCOLESTR pstrItemName, |
| [in] LPCOLESTR pstrSubItemName, |
| [in] LPCOLESTR pstrEventName, |
| [in] LPCOLESTR pstrDelimiter, |
| [in] DWORD dwSourceContextCookie, |
| [in] ULONG ulStartingLineNumber, |
| [in] DWORD dwFlags, |
| [out] BSTR *pbstrName, |
| [out] EXCEPINFO *pexcepinfo |
| ); |
| |
| HRESULT ParseScriptText( |
| [in] LPCOLESTR pstrCode, |
| [in] LPCOLESTR pstrItemName, |
| [in] IUnknown *punkContext, |
| [in] LPCOLESTR pstrDelimiter, |
| [in] DWORD dwSourceContextCookie, |
| [in] ULONG ulStartingLineNumber, |
| [in] DWORD dwFlags, |
| [out] VARIANT *pvarResult, |
| [out] EXCEPINFO *pexcepinfo |
| ); |
| } |
| |
| cpp_quote("typedef IActiveScriptParse *PIActiveScriptParse;") |
| |
| [ |
| object, |
| uuid(1CFF0050-6FDD-11d0-9328-00A0C90DCAA9), |
| pointer_default(unique) |
| ] |
| interface IActiveScriptParseProcedureOld : IUnknown |
| { |
| HRESULT ParseProcedureText( |
| [in] LPCOLESTR pstrCode, |
| [in] LPCOLESTR pstrFormalParams, |
| [in] LPCOLESTR pstrItemName, |
| [in] IUnknown *punkContext, |
| [in] LPCOLESTR pstrDelimiter, |
| [in] DWORD dwSourceContextCookie, |
| [in] ULONG ulStartingLineNumber, |
| [in] DWORD dwFlags, |
| [out] IDispatch **ppdisp |
| ); |
| } |
| |
| [ |
| object, |
| uuid(AA5B6A80-B834-11d0-932F-00A0C90DCAA9), |
| pointer_default(unique) |
| ] |
| interface IActiveScriptParseProcedure : IUnknown |
| { |
| HRESULT ParseProcedureText( |
| [in] LPCOLESTR pstrCode, |
| [in] LPCOLESTR pstrFormalParams, |
| [in] LPCOLESTR pstrProcedureName, |
| [in] LPCOLESTR pstrItemName, |
| [in] IUnknown *punkContext, |
| [in] LPCOLESTR pstrDelimiter, |
| [in] DWORD dwSourceContextCookie, |
| [in] ULONG ulStartingLineNumber, |
| [in] DWORD dwFlags, |
| [out] IDispatch **ppdisp |
| ); |
| } |
| |
| [ |
| object, |
| uuid(63CDBCB0-C1B1-11d0-9336-00A0C90DCAA9), |
| pointer_default(unique) |
| ] |
| interface IBindEventHandler : IUnknown |
| { |
| HRESULT BindHandler( |
| [in] LPCOLESTR pstrEvent, |
| [in] IDispatch *pdisp |
| ); |
| } |
| |
| [ |
| object, |
| uuid(B8DA6310-E19B-11d0-933C-00A0C90DCAA9), |
| pointer_default(unique) |
| ] |
| interface IActiveScriptStats : IUnknown |
| { |
| HRESULT GetStat( |
| [in] DWORD stid, |
| [out] ULONG *pluHi, |
| [out] ULONG *pluLo |
| ); |
| |
| HRESULT GetStatEx( |
| [in] REFGUID guid, |
| [out] ULONG *pluHi, |
| [out] ULONG *pluLo |
| ); |
| |
| HRESULT ResetStats(void); |
| } |
| |
| [ |
| object, |
| uuid(4954e0d0-fbc7-11d1-8410-006008c3fbfc), |
| pointer_default(unique) |
| ] |
| interface IActiveScriptProperty : IUnknown |
| { |
| HRESULT GetProperty( |
| [in] DWORD dwProperty, |
| [in] VARIANT *pvarIndex, |
| [out] VARIANT *pvarValue); |
| |
| HRESULT SetProperty( |
| [in] DWORD dwProperty, |
| [in] VARIANT *pvarIndex, |
| [in] VARIANT *pvarValue); |
| } |