Jacek Caban : vbscript: Added IActiveScriptParse stub implementation.
Alexandre Julliard
julliard at winehq.org
Mon Jul 18 12:47:01 CDT 2011
Module: wine
Branch: master
Commit: cf30b6aea38df4e27e60908eb2332b0f3ddc4053
URL: http://source.winehq.org/git/wine.git/?a=commit;h=cf30b6aea38df4e27e60908eb2332b0f3ddc4053
Author: Jacek Caban <jacek at codeweavers.com>
Date: Mon Jul 18 16:57:41 2011 +0200
vbscript: Added IActiveScriptParse stub implementation.
---
dlls/vbscript/vbscript.c | 69 ++++++++++++++++++++++++++++++++++++++++++++++
dlls/vbscript/vbscript.h | 1 +
2 files changed, 70 insertions(+), 0 deletions(-)
diff --git a/dlls/vbscript/vbscript.c b/dlls/vbscript/vbscript.c
index f82bc56..f0da4ed 100644
--- a/dlls/vbscript/vbscript.c
+++ b/dlls/vbscript/vbscript.c
@@ -59,6 +59,9 @@ static HRESULT WINAPI VBScript_QueryInterface(IActiveScript *iface, REFIID riid,
}else if(IsEqualGUID(riid, &IID_IActiveScript)) {
TRACE("(%p)->(IID_IActiveScript %p)\n", This, ppv);
*ppv = &This->IActiveScript_iface;
+ }else if(IsEqualGUID(riid, &IID_IActiveScriptParse)) {
+ TRACE("(%p)->(IID_IActiveScriptParse %p)\n", This, ppv);
+ *ppv = &This->IActiveScriptParse_iface;
}else {
FIXME("(%p)->(%s %p)\n", This, debugstr_guid(riid), ppv);
*ppv = NULL;
@@ -208,6 +211,71 @@ static const IActiveScriptVtbl VBScriptVtbl = {
VBScript_Clone
};
+static inline VBScript *impl_from_IActiveScriptParse(IActiveScriptParse *iface)
+{
+ return CONTAINING_RECORD(iface, VBScript, IActiveScriptParse_iface);
+}
+
+static HRESULT WINAPI VBScriptParse_QueryInterface(IActiveScriptParse *iface, REFIID riid, void **ppv)
+{
+ VBScript *This = impl_from_IActiveScriptParse(iface);
+ return IActiveScript_QueryInterface(&This->IActiveScript_iface, riid, ppv);
+}
+
+static ULONG WINAPI VBScriptParse_AddRef(IActiveScriptParse *iface)
+{
+ VBScript *This = impl_from_IActiveScriptParse(iface);
+ return IActiveScript_AddRef(&This->IActiveScript_iface);
+}
+
+static ULONG WINAPI VBScriptParse_Release(IActiveScriptParse *iface)
+{
+ VBScript *This = impl_from_IActiveScriptParse(iface);
+ return IActiveScript_Release(&This->IActiveScript_iface);
+}
+
+static HRESULT WINAPI VBScriptParse_InitNew(IActiveScriptParse *iface)
+{
+ VBScript *This = impl_from_IActiveScriptParse(iface);
+ FIXME("(%p)\n", This);
+ return S_OK;
+}
+
+static HRESULT WINAPI VBScriptParse_AddScriptlet(IActiveScriptParse *iface,
+ LPCOLESTR pstrDefaultName, LPCOLESTR pstrCode, LPCOLESTR pstrItemName,
+ LPCOLESTR pstrSubItemName, LPCOLESTR pstrEventName, LPCOLESTR pstrDelimiter,
+ CTXARG_T dwSourceContextCookie, ULONG ulStartingLineNumber, DWORD dwFlags,
+ BSTR *pbstrName, EXCEPINFO *pexcepinfo)
+{
+ VBScript *This = impl_from_IActiveScriptParse(iface);
+ FIXME("(%p)->(%s %s %s %s %s %s %s %u %x %p %p)\n", This, debugstr_w(pstrDefaultName),
+ debugstr_w(pstrCode), debugstr_w(pstrItemName), debugstr_w(pstrSubItemName),
+ debugstr_w(pstrEventName), debugstr_w(pstrDelimiter), wine_dbgstr_longlong(dwSourceContextCookie),
+ ulStartingLineNumber, dwFlags, pbstrName, pexcepinfo);
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI VBScriptParse_ParseScriptText(IActiveScriptParse *iface,
+ LPCOLESTR pstrCode, LPCOLESTR pstrItemName, IUnknown *punkContext,
+ LPCOLESTR pstrDelimiter, CTXARG_T dwSourceContextCookie, ULONG ulStartingLine,
+ DWORD dwFlags, VARIANT *pvarResult, EXCEPINFO *pexcepinfo)
+{
+ VBScript *This = impl_from_IActiveScriptParse(iface);
+ FIXME("(%p)->(%s %s %p %s %s %u %x %p %p)\n", This, debugstr_w(pstrCode),
+ debugstr_w(pstrItemName), punkContext, debugstr_w(pstrDelimiter),
+ wine_dbgstr_longlong(dwSourceContextCookie), ulStartingLine, dwFlags, pvarResult, pexcepinfo);
+ return E_NOTIMPL;
+}
+
+static const IActiveScriptParseVtbl VBScriptParseVtbl = {
+ VBScriptParse_QueryInterface,
+ VBScriptParse_AddRef,
+ VBScriptParse_Release,
+ VBScriptParse_InitNew,
+ VBScriptParse_AddScriptlet,
+ VBScriptParse_ParseScriptText
+};
+
HRESULT WINAPI VBScriptFactory_CreateInstance(IClassFactory *iface, IUnknown *pUnkOuter, REFIID riid, void **ppv)
{
VBScript *ret;
@@ -220,6 +288,7 @@ HRESULT WINAPI VBScriptFactory_CreateInstance(IClassFactory *iface, IUnknown *pU
return E_OUTOFMEMORY;
ret->IActiveScript_iface.lpVtbl = &VBScriptVtbl;
+ ret->IActiveScriptParse_iface.lpVtbl = &VBScriptParseVtbl;
ret->ref = 1;
diff --git a/dlls/vbscript/vbscript.h b/dlls/vbscript/vbscript.h
index 3b2da9a..cd97e09 100644
--- a/dlls/vbscript/vbscript.h
+++ b/dlls/vbscript/vbscript.h
@@ -21,6 +21,7 @@
struct VBScript {
IActiveScript IActiveScript_iface;
+ IActiveScriptParse IActiveScriptParse_iface;
LONG ref;
};
More information about the wine-cvs
mailing list