25 #define CTXARG_T DWORDLONG 26 #define IActiveScriptSiteDebugVtbl IActiveScriptSiteDebug64Vtbl 28 #define IActiveScriptParse_Release IActiveScriptParse64_Release 29 #define IActiveScriptParse_InitNew IActiveScriptParse64_InitNew 30 #define IActiveScriptParse_ParseScriptText IActiveScriptParse64_ParseScriptText 31 #define IActiveScriptParseProcedure2_Release IActiveScriptParseProcedure2_64_Release 32 #define IActiveScriptParseProcedure2_ParseProcedureText IActiveScriptParseProcedure2_64_ParseProcedureText 36 #define CTXARG_T DWORD 37 #define IActiveScriptSiteDebugVtbl IActiveScriptSiteDebug32Vtbl 39 #define IActiveScriptParse_Release IActiveScriptParse32_Release 40 #define IActiveScriptParse_InitNew IActiveScriptParse32_InitNew 41 #define IActiveScriptParse_ParseScriptText IActiveScriptParse32_ParseScriptText 42 #define IActiveScriptParseProcedure2_Release IActiveScriptParseProcedure2_32_Release 43 #define IActiveScriptParseProcedure2_ParseProcedureText IActiveScriptParseProcedure2_32_ParseProcedureText 79 hres = IActiveScript_QueryInterface(script_host->
script, &IID_IActiveScriptProperty,
80 (
void**)&script_prop);
82 WARN(
"Could not get IActiveScriptProperty iface: %08x\n",
hres);
87 IActiveScriptProperty_Release(script_prop);
96 DWORD supported_opts=0, enabled_opts=0;
100 hres = IActiveScript_QueryInterface(script_host->
script, &IID_IActiveScriptParse, (
void**)&script_host->
parse);
102 WARN(
"Could not get IActiveScriptHost: %08x\n",
hres);
106 hres = IActiveScript_QueryInterface(script_host->
script, &IID_IObjectSafety, (
void**)&safety);
108 FIXME(
"Could not get IObjectSafety: %08x\n",
hres);
112 hres = IObjectSafety_GetInterfaceSafetyOptions(safety, &IID_IActiveScriptParse, &supported_opts, &enabled_opts);
114 FIXME(
"GetInterfaceSafetyOptions failed: %08x\n",
hres);
115 }
else if(!(supported_opts & INTERFACE_USES_DISPEX)) {
116 FIXME(
"INTERFACE_USES_DISPEX is not supported\n");
118 hres = IObjectSafety_SetInterfaceSafetyOptions(safety, &IID_IActiveScriptParse,
119 INTERFACESAFE_FOR_UNTRUSTED_DATA|INTERFACE_USES_DISPEX|INTERFACE_USES_SECURITY_MANAGER,
120 INTERFACESAFE_FOR_UNTRUSTED_DATA|INTERFACE_USES_DISPEX|INTERFACE_USES_SECURITY_MANAGER);
122 FIXME(
"SetInterfaceSafetyOptions failed: %08x\n",
hres);
125 IObjectSafety_Release(safety);
139 WARN(
"InitNew failed: %08x\n",
hres);
145 WARN(
"SetScriptSite failed: %08x\n",
hres);
146 IActiveScript_Close(script_host->
script);
152 WARN(
"GetScriptState failed: %08x\n",
hres);
158 WARN(
"Starting script failed: %08x\n",
hres);
163 SCRIPTITEM_ISVISIBLE|SCRIPTITEM_ISSOURCE|SCRIPTITEM_GLOBALMEMBERS);
169 WARN(
"AddNamedItem failed: %08x\n",
hres);
172 hres = IActiveScript_QueryInterface(script_host->
script, &IID_IActiveScriptParseProcedure2,
176 WARN(
"Could not get IActiveScriptParseProcedure iface: %08x\n",
hres);
187 switch(
This->script_state) {
194 IActiveScript_Close(
This->script);
197 if(
This->parse_proc) {
208 IActiveScript_Release(
This->script);
236 *
ppv = &
This->IActiveScriptSite_iface;
239 *
ppv = &
This->IActiveScriptSite_iface;
241 TRACE(
"(%p)->(IID_IActiveScriptSiteInterruprtPoll %p)\n",
This,
ppv);
242 *
ppv = &
This->IActiveScriptSiteInterruptPoll_iface;
244 TRACE(
"(%p)->(IID_IActiveScriptSiteWindow %p)\n",
This,
ppv);
245 *
ppv = &
This->IActiveScriptSiteWindow_iface;
247 TRACE(
"(%p)->(IID_IActiveScriptSiteUIControl %p)\n",
This,
ppv);
248 *
ppv = &
This->IActiveScriptSiteUIControl_iface;
250 TRACE(
"(%p)->(IID_IActiveScriptSiteDebug %p)\n",
This,
ppv);
251 *
ppv = &
This->IActiveScriptSiteDebug_iface;
254 *
ppv = &
This->IServiceProvider_iface;
256 TRACE(
"(%p)->(IID_ICanHandleException not supported %p)\n",
This,
ppv);
309 TRACE(
"(%p)->(%s %x %p %p)\n",
This,
debugstr_w(pstrName), dwReturnMask, ppiunkItem, ppti);
311 if(dwReturnMask != SCRIPTINFO_IUNKNOWN) {
312 FIXME(
"Unsupported mask %x\n", dwReturnMask);
325 *ppiunkItem = (
IUnknown*)&
This->window->base.IHTMLWindow2_iface;
326 IUnknown_AddRef(*ppiunkItem);
334 FIXME(
"(%p)->(%p)\n",
This, pbstrVersion);
342 FIXME(
"(%p)->(%p %p)\n",
This, pvarResult, pexcepinfo);
350 TRACE(
"(%p)->(%x)\n",
This, ssScriptState);
352 This->script_state = ssScriptState;
359 FIXME(
"(%p)->(%p)\n",
This, pscripterror);
404 return IActiveScriptSite_QueryInterface(&
This->IActiveScriptSite_iface,
riid,
ppv);
410 return IActiveScriptSite_AddRef(&
This->IActiveScriptSite_iface);
416 return IActiveScriptSite_Release(&
This->IActiveScriptSite_iface);
444 return IActiveScriptSite_QueryInterface(&
This->IActiveScriptSite_iface,
riid,
ppv);
450 return IActiveScriptSite_AddRef(&
This->IActiveScriptSite_iface);
456 return IActiveScriptSite_Release(&
This->IActiveScriptSite_iface);
465 if(!
This->window || !
This->window->base.outer_window || !
This->window->base.outer_window->doc_obj)
468 *phwnd =
This->window->base.outer_window->doc_obj->hwnd;
495 return IActiveScriptSite_QueryInterface(&
This->IActiveScriptSite_iface,
riid,
ppv);
501 return IActiveScriptSite_AddRef(&
This->IActiveScriptSite_iface);
507 return IActiveScriptSite_Release(&
This->IActiveScriptSite_iface);
515 WARN(
"(%p)->(%d %p) semi-stub\n",
This, UicItem, pUicHandling);
537 return IActiveScriptSite_QueryInterface(&
This->IActiveScriptSite_iface,
riid,
ppv);
543 return IActiveScriptSite_AddRef(&
This->IActiveScriptSite_iface);
549 return IActiveScriptSite_Release(&
This->IActiveScriptSite_iface);
580 FIXME(
"(%p)->(%p %p %p)\n",
This, pErrorDebug, pfEnterDebugger, pfCallOnScriptErrorWhenContinuing);
602 return IActiveScriptSite_QueryInterface(&
This->IActiveScriptSite_iface,
riid,
ppv);
608 return IActiveScriptSite_AddRef(&
This->IActiveScriptSite_iface);
614 return IActiveScriptSite_Release(&
This->IActiveScriptSite_iface);
622 if(
IsEqualGUID(&SID_SInternetHostSecurityManager, guidService)) {
623 TRACE(
"(%p)->(SID_SInternetHostSecurityManager)\n",
This);
625 if(!
This->window || !
This->window->doc)
628 return IInternetHostSecurityManager_QueryInterface(&
This->window->doc->IInternetHostSecurityManager_iface,
632 if(
IsEqualGUID(&SID_SContainerDispatch, guidService)) {
633 TRACE(
"(%p)->(SID_SContainerDispatch)\n",
This);
635 if(!
This->window || !
This->window->doc)
638 return IHTMLDocument2_QueryInterface(&
This->window->doc->basedoc.IHTMLDocument2_iface,
riid,
ppv);
657 ret = heap_alloc_zero(
sizeof(*
ret));
675 &IID_IActiveScript, (
void**)&
ret->script);
677 WARN(
"Could not load script engine: %08x\n",
hres);
711 if(readystate != READYSTATE_INTERACTIVE) {
724 task->
elem = script_elem;
752 0, 0, SCRIPTTEXT_ISVISIBLE|SCRIPTTEXT_HOSTMANAGESSOURCE,
781 if(
This->script_elem) {
782 IHTMLScriptElement_Release(&
This->script_elem->IHTMLScriptElement_iface);
813 if(
This->script_elem->readystate == READYSTATE_LOADING)
822 IHTMLScriptElement_Release(&
This->script_elem->IHTMLScriptElement_iface);
841 if(
This->bsc.readed >=
This->size) {
896 bsc = heap_alloc_zero(
sizeof(*
bsc));
898 IMoniker_Release(mon);
903 IMoniker_Release(mon);
911 bsc->script_elem = script_elem;
917 IBindStatusCallback_Release(&
bsc->bsc.IBindStatusCallback_iface);
921 if(!
bsc->bsc.readed) {
926 switch(
bsc->bsc.bom) {
928 if(
bsc->bsc.readed %
sizeof(
WCHAR)) {
929 FIXME(
"The buffer is not a valid utf16 string\n");
963 IBindStatusCallback_Release(&
bsc->bsc.IBindStatusCallback_iface);
977 static const WCHAR wine_schemaW[] = {
'w',
'i',
'n',
'e',
':'};
980 src +=
sizeof(wine_schemaW)/
sizeof(
WCHAR);
1003 nsres = nsIDOMHTMLScriptElement_GetText(script_elem->
nsscript, &text_str);
1007 ERR(
"GetText failed: %08x\n", nsres);
1022 nsres = nsIDOMHTMLScriptElement_GetEvent(script_elem->
nsscript, &event_str);
1033 ERR(
"GetEvent failed: %08x\n", nsres);
1038 nsres = nsIDOMHTMLScriptElement_GetSrc(script_elem->
nsscript, &src_str);
1042 ERR(
"GetSrc failed: %08x\n", nsres);
1065 const WCHAR text_javascriptW[] =
1066 {
't',
'e',
'x',
't',
'/',
'j',
'a',
'v',
'a',
's',
'c',
'r',
'i',
'p',
't',0};
1067 const WCHAR text_jscriptW[] =
1068 {
't',
'e',
'x',
't',
'/',
'j',
's',
'c',
'r',
'i',
'p',
't',0};
1069 const WCHAR text_vbscriptW[] =
1070 {
't',
'e',
'x',
't',
'/',
'v',
'b',
's',
'c',
'r',
'i',
'p',
't',0};
1110 nsres = nsIDOMHTMLScriptElement_GetType(nsscript, &val_str);
1121 ERR(
"GetType failed: %08x\n", nsres);
1124 nsres = nsIDOMHTMLScriptElement_QueryInterface(nsscript, &IID_nsIDOMHTMLElement, (
void**)&nselem);
1128 nsIDOMHTMLElement_Release(nselem);
1159 WARN(
"Could not find script GUID\n");
1165 TRACE(
"Ignoring JScript\n");
1180 if(script_host->
parse)
1192 static const WCHAR delimiterW[] = {
'\"',0};
1213 WARN(
"Could not find language\n");
1225 TRACE(
"Ignoring JScript\n");
1235 SCRIPTPROC_HOSTMANAGESSOURCE|SCRIPTPROC_IMPLICIT_THIS|SCRIPTPROC_IMPLICIT_PARENTS, &disp);
1237 WARN(
"ParseProcedureText failed: %08x\n",
hres);
1241 TRACE(
"ret %p\n", disp);
1252 static const WCHAR delimW[] = {
'"',0};
1255 WARN(
"Could not find script GUID\n");
1261 FIXME(
"No script host\n");
1265 if(!script_host->
parse) {
1266 FIXME(
"script_host->parse == NULL\n");
1270 memset(&ei, 0,
sizeof(ei));
1305 nsres = nsIDOMHTMLScriptElement_GetHtmlFor(script_elem->
nsscript, &target_id_str);
1307 ERR(
"GetScriptFor failed: %08x\n", nsres);
1314 FIXME(
"Empty for attribute\n");
1333 return event_target;
1381 nsres = nsIDOMHTMLScriptElement_GetEvent(script_elem->
nsscript, &nsstr);
1399 nsres = nsIDOMHTMLScriptElement_GetText(script_elem->
nsscript, &nsstr);
1406 SCRIPTPROC_HOSTMANAGESSOURCE|SCRIPTPROC_IMPLICIT_THIS|SCRIPTPROC_IMPLICIT_PARENTS, &disp);
1410 ERR(
"GetText failed: %08x\n", nsres);
1438 static const PRUnichar selectorW[] = {
's',
'c',
'r',
'i',
'p',
't',
'[',
'e',
'v',
'e',
'n',
't',
']',0};
1446 nsres = nsIDOMHTMLDocument_QuerySelectorAll(doc->
nsdoc, &selector_str, &node_list);
1449 ERR(
"QuerySelectorAll failed: %08x\n", nsres);
1456 nsres = nsIDOMNodeList_GetLength(node_list, &
length);
1460 nsres = nsIDOMNodeList_Item(node_list,
i, &script_node);
1462 ERR(
"Item(%d) failed: %08x\n",
i, nsres);
1466 nsres = nsIDOMNode_QueryInterface(script_node, &IID_nsIDOMHTMLScriptElement, (
void**)&nsscript);
1468 nsIDOMNode_Release(script_node);
1479 (
void**)&plugin_container);
1486 if(plugin_container)
1491 IDispatch_Release(event_disp);
1497 nsIDOMNodeList_Release(node_list);
1502 IDispatchEx *dispex;
1512 hres = IDispatch_QueryInterface(disp, &IID_IDispatchEx, (
void**)&dispex);
1514 hres = IDispatchEx_GetDispID(dispex,
name,
flags & (~fdexNameEnsure), ret_id);
1515 IDispatchEx_Release(dispex);
1517 FIXME(
"No IDispatchEx\n");
1521 IDispatch_Release(disp);
1541 IUnknown_Release(unk);
1553 nsIWebBrowserSetup *
setup;
1557 TRACE(
"jscript.dll not available\n");
1564 if(!
window->doc_obj->nscontainer || !
window->doc_obj->nscontainer->webbrowser)
1567 nsres = nsIWebBrowser_QueryInterface(
window->doc_obj->nscontainer->webbrowser,
1568 &IID_nsIWebBrowserSetup, (
void**)&
setup);
1570 nsres = nsIWebBrowserSetup_SetProperty(
setup, SETUP_ALLOW_JAVASCRIPT,
1574 nsres = nsIWebBrowserSetup_SetProperty(
setup, SETUP_DISABLE_NOSCRIPT,
TRUE);
1576 nsIWebBrowserSetup_Release(
setup);
1580 ERR(
"JavaScript setup failed: %08x\n", nsres);
UINT get_document_charset(HTMLDocumentNode *doc)
static ScriptHost * impl_from_IActiveScriptSiteUIControl(IActiveScriptSiteUIControl *iface)
static HRESULT ScriptBSC_stop_binding(BSCallback *bsc, HRESULT result)
static ULONG WINAPI ActiveScriptSite_Release(IActiveScriptSite *iface)
static const WCHAR languageW[]
static const WCHAR windowW[]
static BOOL get_guid_from_type(LPCWSTR type, GUID *guid)
IHTMLScriptElement IHTMLScriptElement_iface
static BOOL get_guid_from_language(LPCWSTR type, GUID *guid)
void bind_activex_event(HTMLDocumentNode *doc, HTMLPluginContainer *plugin_container, WCHAR *event, IDispatch *disp)
static HRESULT ScriptBSC_start_binding(BSCallback *bsc)
static ULONG WINAPI ASServiceProvider_Release(IServiceProvider *iface)
HRESULT script_elem_from_nsscript(HTMLDocumentNode *doc, nsIDOMHTMLScriptElement *nsscript, HTMLScriptElement **ret)
static const IActiveScriptSiteDebugVtbl ActiveScriptSiteDebugVtbl
int memcmp(void *Buffer1, void *Buffer2, ACPI_SIZE Count)
WINE_UNICODE_INLINE unsigned int strlenW(const WCHAR *str)
nsIDOMHTMLDocument * nsdoc
void connect_scripts(HTMLInnerWindow *window)
HRESULT exec_script(HTMLInnerWindow *window, const WCHAR *code, const WCHAR *lang, VARIANT *ret)
static IDispatch * parse_event_elem(HTMLDocumentNode *doc, HTMLScriptElement *script_elem, WCHAR **ret_event)
#define IActiveScriptParse_Release
static ScriptHost * impl_from_IActiveScriptSiteWindow(IActiveScriptSiteWindow *iface)
static HRESULT ScriptBSC_beginning_transaction(BSCallback *bsc, WCHAR **additional_headers)
unsigned parser_callback_cnt
IActiveScriptSiteInterruptPoll IActiveScriptSiteInterruptPoll_iface
static HRESULT WINAPI ActiveScriptSiteWindow_GetWindow(IActiveScriptSiteWindow *iface, HWND *phwnd)
WINE_UNICODE_INLINE int isspaceW(WCHAR wc)
static GUID get_default_script_guid(HTMLInnerWindow *window)
static HRESULT WINAPI ActiveScriptSiteWindow_EnableModeless(IActiveScriptSiteWindow *iface, BOOL fEnable)
static HRESULT WINAPI ActiveScriptSiteInterruptPoll_QueryContinue(IActiveScriptSiteInterruptPoll *iface)
static void parse_inline_script(ScriptHost *script_host, HTMLScriptElement *script_elem)
static void parse_elem_text(ScriptHost *script_host, HTMLScriptElement *script_elem, LPCWSTR text)
#define DISP_E_MEMBERNOTFOUND
static const CLSID CLSID_JScript
static HRESULT WINAPI ActiveScriptSiteDebug_QueryInterface(IActiveScriptSiteDebug *iface, REFIID riid, void **ppv)
IActiveScriptParseProcedure2 * parse_proc
nsresult get_elem_attr_value(nsIDOMHTMLElement *nselem, const WCHAR *name, nsAString *val_str, const PRUnichar **val)
static HRESULT WINAPI ActiveScriptSiteDebug_GetApplication(IActiveScriptSiteDebug *iface, IDebugApplication **ppda)
static HRESULT WINAPI ActiveScriptSite_GetDocVersionString(IActiveScriptSite *iface, BSTR *pbstrVersion)
static BOOL is_jscript_available(void)
static void fire_readystatechange_proc(task_t *_task)
LCID WINAPI GetUserDefaultLCID(void)
static ScriptHost * impl_from_IActiveScriptSiteInterruptPoll(IActiveScriptSiteInterruptPoll *iface)
static BOOL get_script_guid(HTMLInnerWindow *window, nsIDOMHTMLScriptElement *nsscript, GUID *guid)
void WINAPI VariantInit(VARIANTARG *pVarg)
static HRESULT WINAPI ActiveScriptSiteInterruptPoll_QueryInterface(IActiveScriptSiteInterruptPoll *iface, REFIID riid, void **ppv)
static const IActiveScriptSiteInterruptPollVtbl ActiveScriptSiteInterruptPollVtbl
static HRESULT WINAPI ActiveScriptSiteDebug_OnScriptErrorDebug(IActiveScriptSiteDebug *iface, IActiveScriptErrorDebug *pErrorDebug, BOOL *pfEnterDebugger, BOOL *pfCallOnScriptErrorWhenContinuing)
HRESULT WINAPI DECLSPEC_HOTPATCH CLSIDFromProgID(LPCOLESTR progid, LPCLSID clsid)
static void * heap_realloc(void *mem, size_t len)
IActiveScriptSiteDebug IActiveScriptSiteDebug_iface
static const WCHAR script_endW[]
static void * heap_alloc(size_t len)
static void parse_extern_script(ScriptHost *script_host, HTMLScriptElement *script_elem, LPCWSTR src)
static HRESULT WINAPI ActiveScriptSiteUIControl_GetUIBehavior(IActiveScriptSiteUIControl *iface, SCRIPTUICITEM UicItem, SCRIPTUICHANDLING *pUicHandling)
const CLSID CLSID_VBScript
__WINE_SERVER_LIST_INLINE struct list * list_head(const struct list *list)
static const WCHAR emptyW[]
static HRESULT WINAPI ActiveScriptSite_OnLeaveScript(IActiveScriptSite *iface)
static HRESULT WINAPI ActiveScriptSiteWindow_QueryInterface(IActiveScriptSiteWindow *iface, REFIID riid, void **ppv)
__WINE_SERVER_LIST_INLINE void list_add_tail(struct list *list, struct list *elem)
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
static HRESULT WINAPI ActiveScriptSite_OnEnterScript(IActiveScriptSite *iface)
static HRESULT WINAPI ActiveScriptSite_GetItemInfo(IActiveScriptSite *iface, LPCOLESTR pstrName, DWORD dwReturnMask, IUnknown **ppiunkItem, ITypeInfo **ppti)
static void node_release(HTMLDOMNode *node)
void bind_event_scripts(HTMLDocumentNode *doc)
static HRESULT bind_script_to_text(HTMLInnerWindow *window, IUri *uri, HTMLScriptElement *script_elem, WCHAR **ret)
IActiveScriptSiteWindow IActiveScriptSiteWindow_iface
static ULONG WINAPI ActiveScriptSiteInterruptPoll_AddRef(IActiveScriptSiteInterruptPoll *iface)
static ULONG WINAPI ActiveScriptSiteWindow_AddRef(IActiveScriptSiteWindow *iface)
static WCHAR * heap_strdupW(const WCHAR *str)
static ScriptHost * impl_from_IServiceProvider(IServiceProvider *iface)
static HRESULT ScriptBSC_on_response(BSCallback *bsc, DWORD response_code, LPCWSTR response_headers)
GLenum GLuint GLenum GLsizei length
HTMLScriptElement * script
IActiveScriptSiteUIControl IActiveScriptSiteUIControl_iface
#define IActiveScriptSiteDebugVtbl
static IBindStatusCallbackEx bsc
static ScriptHost * get_script_host(HTMLInnerWindow *window, const GUID *guid)
static WCHAR available[MAX_STRING_RESOURCE_LEN]
static HRESULT WINAPI ActiveScriptSite_OnStateChange(IActiveScriptSite *iface, SCRIPTSTATE ssScriptState)
enum tagSCRIPTSTATE SCRIPTSTATE
static HRESULT WINAPI ActiveScriptSiteDebug_GetDocumentContextFromPosition(IActiveScriptSiteDebug *iface, CTXARG_T dwSourceContext, ULONG uCharacterOffset, ULONG uNumChars, IDebugDocumentContext **ppsc)
static void set_script_elem_readystate(HTMLScriptElement *script_elem, READYSTATE readystate)
IServiceProvider IServiceProvider_iface
IDispatchEx IDispatchEx_iface
static void ScriptBSC_destroy(BSCallback *bsc)
PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)
HRESULT WINAPI DECLSPEC_HOTPATCH CoGetClassObject(REFCLSID rclsid, DWORD dwClsContext, COSERVERINFO *pServerInfo, REFIID iid, LPVOID *ppv)
#define IActiveScriptParseProcedure2_ParseProcedureText
static const IActiveScriptSiteWindowVtbl ActiveScriptSiteWindowVtbl
static const WCHAR lang[]
static HRESULT ScriptBSC_read_data(BSCallback *bsc, IStream *stream)
__WINE_SERVER_LIST_INLINE void list_remove(struct list *elem)
GLboolean GLboolean GLboolean b
void bind_target_event(HTMLDocumentNode *doc, EventTarget *event_target, const WCHAR *event, IDispatch *disp)
#define IActiveScriptParse_ParseScriptText
static const BSCallbackVtbl ScriptBSCVtbl
HRESULT start_binding(HTMLInnerWindow *, BSCallback *, IBindCtx *) DECLSPEC_HIDDEN
static ULONG WINAPI ASServiceProvider_AddRef(IServiceProvider *iface)
BOOL find_global_prop(HTMLInnerWindow *window, BSTR name, DWORD flags, ScriptHost **ret_host, DISPID *ret_id)
IActiveScriptParse * parse
HTMLScriptElement * script_elem
static const IActiveScriptSiteVtbl ActiveScriptSiteVtbl
static ULONG WINAPI ActiveScriptSiteUIControl_AddRef(IActiveScriptSiteUIControl *iface)
static HRESULT ScriptBSC_on_progress(BSCallback *bsc, ULONG status_code, LPCWSTR status_text)
enum tagSCRIPTUICITEM SCRIPTUICITEM
#define NS_SUCCEEDED(res)
static HRESULT ScriptBSC_init_bindinfo(BSCallback *bsc)
#define IActiveScriptParseProcedure2_Release
static HRESULT WINAPI ActiveScriptSite_OnScriptError(IActiveScriptSite *iface, IActiveScriptError *pscripterror)
static HRESULT WINAPI ActiveScriptSite_GetLCID(IActiveScriptSite *iface, LCID *plcid)
static HRESULT WINAPI ASServiceProvider_QueryService(IServiceProvider *iface, REFGUID guidService, REFIID riid, void **ppv)
#define InterlockedDecrement
IDispatch * get_script_disp(ScriptHost *script_host)
IActiveScriptSite IActiveScriptSite_iface
HRESULT WINAPI CreateURLMonikerEx2(IMoniker *pmkContext, IUri *pUri, IMoniker **ppmk, DWORD dwFlags)
static const WCHAR documentW[]
#define memcpy(s1, s2, n)
static const IServiceProviderVtbl ASServiceProviderVtbl
UINT32 nsAString_GetData(const nsAString *, const PRUnichar **) DECLSPEC_HIDDEN
void set_script_mode(HTMLOuterWindow *window, SCRIPTMODE mode)
static IHTMLWindow2 * window
enum tagSCRIPTUICHANDLING SCRIPTUICHANDLING
WINE_UNICODE_INLINE int isalnumW(WCHAR wc)
static ULONG WINAPI ActiveScriptSiteInterruptPoll_Release(IActiveScriptSiteInterruptPoll *iface)
static BOOL parse_event_str(WCHAR *event, const WCHAR **args)
static ULONG WINAPI ActiveScriptSiteDebug_AddRef(IActiveScriptSiteDebug *iface)
HRESULT WINAPI DECLSPEC_HOTPATCH CoCreateInstance(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, REFIID iid, LPVOID *ppv)
static ScriptHost * impl_from_IActiveScriptSiteDebug(IActiveScriptSiteDebug *iface)
HRESULT get_doc_elem_by_id(HTMLDocumentNode *doc, const WCHAR *id, HTMLElement **ret)
static void set_script_prop(ScriptHost *script_host, DWORD property, VARIANT *val)
struct stdole::EXCEPINFO EXCEPINFO
__WINE_SERVER_LIST_INLINE int list_empty(const struct list *list)
static HRESULT WINAPI ActiveScriptSiteUIControl_QueryInterface(IActiveScriptSiteUIControl *iface, REFIID riid, void **ppv)
static VARIANTARG static DISPID
#define InterlockedIncrement
static EventTarget * find_event_target(HTMLDocumentNode *doc, HTMLScriptElement *script_elem)
static ULONG WINAPI ActiveScriptSiteDebug_Release(IActiveScriptSiteDebug *iface)
static ScriptHost * impl_from_IActiveScriptSite(IActiveScriptSite *iface)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
static const IActiveScriptSiteUIControlVtbl ActiveScriptSiteUIControlVtbl
static ScriptBSC * impl_from_BSCallback(BSCallback *iface)
IDispatch * script_parse_event(HTMLInnerWindow *window, LPCWSTR text)
static ScriptHost * get_elem_script_host(HTMLInnerWindow *window, HTMLScriptElement *script_elem)
static void parse_script_elem(ScriptHost *script_host, HTMLScriptElement *script_elem)
static HRESULT WINAPI ASServiceProvider_QueryInterface(IServiceProvider *iface, REFIID riid, void **ppv)
static ULONG htmldoc_addref(HTMLDocument *This)
void nsAString_InitDepend(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
BOOL WINAPI IsEqualGUID(REFGUID rguid1, REFGUID rguid2)
#define IActiveScriptParse_InitNew
HRESULT read_stream(BSCallback *, IStream *, void *, DWORD, DWORD *) DECLSPEC_HIDDEN
static ULONG WINAPI ActiveScriptSiteWindow_Release(IActiveScriptSiteWindow *iface)
void doc_insert_script(HTMLInnerWindow *window, HTMLScriptElement *script_elem)
#define MultiByteToWideChar
BOOL nsAString_Init(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
static ULONG WINAPI ActiveScriptSite_AddRef(IActiveScriptSite *iface)
void setup(char *serport, int baud)
static void release_script_engine(ScriptHost *This)
void nsAString_Finish(nsAString *) DECLSPEC_HIDDEN
static ScriptHost * create_script_host(HTMLInnerWindow *window, const GUID *guid)
static HRESULT WINAPI ActiveScriptSite_OnScriptTerminate(IActiveScriptSite *iface, const VARIANT *pvarResult, const EXCEPINFO *pexcepinfo)
WINE_UNICODE_INLINE int strcmpW(const WCHAR *str1, const WCHAR *str2)
nsIDOMHTMLScriptElement * nsscript
static EXCEPINFO excepinfo
HRESULT push_task(task_t *, task_proc_t, task_proc_t, LONG) DECLSPEC_HIDDEN
static __inline const char * wine_dbgstr_longlong(ULONGLONG ll)
static ULONG WINAPI ActiveScriptSiteUIControl_Release(IActiveScriptSiteUIControl *iface)
void release_script_hosts(HTMLInnerWindow *window)
static HRESULT WINAPI ActiveScriptSiteDebug_GetRootApplicationNode(IActiveScriptSiteDebug *iface, IDebugApplicationNode **ppdanRoot)
static HRESULT WINAPI ActiveScriptSite_QueryInterface(IActiveScriptSite *iface, REFIID riid, void **ppv)
GLuint GLuint GLsizei GLenum type
static BOOL init_script_engine(ScriptHost *script_host)
BOOL pending_readystatechange_event
static void fire_readystatechange_task_destr(task_t *_task)
void init_bscallback(BSCallback *, const BSCallbackVtbl *, IMoniker *, DWORD) DECLSPEC_HIDDEN
static BOOL heap_free(void *mem)
HRESULT create_uri(const WCHAR *, DWORD, IUri **) DECLSPEC_HIDDEN
void fire_event(HTMLDocumentNode *doc, eventid_t eid, BOOL set_event, nsIDOMNode *target, nsIDOMEvent *nsevent, IDispatch *script_this)