Jacek Caban : mshtml: Added IActiveScriptDebug32 stub implementation.

Alexandre Julliard julliard at winehq.org
Thu Apr 17 07:38:37 CDT 2008


Module: wine
Branch: master
Commit: d0d8dc2811b495914b1c1b6eb45b62ae26b2e5ac
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=d0d8dc2811b495914b1c1b6eb45b62ae26b2e5ac

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Thu Apr 17 02:31:00 2008 +0200

mshtml: Added IActiveScriptDebug32 stub implementation.

---

 dlls/mshtml/script.c |   71 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 71 insertions(+), 0 deletions(-)

diff --git a/dlls/mshtml/script.c b/dlls/mshtml/script.c
index 412a3ec..6a6442e 100644
--- a/dlls/mshtml/script.c
+++ b/dlls/mshtml/script.c
@@ -27,6 +27,7 @@
 #include "winuser.h"
 #include "ole2.h"
 #include "activscp.h"
+#include "activdbg.h"
 #include "objsafe.h"
 
 #include "wine/debug.h"
@@ -44,6 +45,7 @@ typedef struct {
     const IActiveScriptSiteVtbl               *lpIActiveScriptSiteVtbl;
     const IActiveScriptSiteInterruptPollVtbl  *lpIActiveScriptSiteInterruptPollVtbl;
     const IActiveScriptSiteWindowVtbl         *lpIActiveScriptSiteWindowVtbl;
+    const IActiveScriptSiteDebug32Vtbl        *lpIActiveScriptSiteDebug32Vtbl;
 
     LONG ref;
 
@@ -61,6 +63,7 @@ typedef struct {
 #define ACTSCPSITE(x)  ((IActiveScriptSite*)               &(x)->lpIActiveScriptSiteVtbl)
 #define ACTSCPPOLL(x)  ((IActiveScriptSiteInterruptPoll*)  &(x)->lpIActiveScriptSiteInterruptPollVtbl)
 #define ACTSCPWIN(x)   ((IActiveScriptSiteWindow*)         &(x)->lpIActiveScriptSiteWindowVtbl)
+#define ACTSCPDBG32(x) ((IActiveScriptSiteDebug32*)        &(x)->lpIActiveScriptSiteDebug32Vtbl)
 
 static BOOL init_script_engine(ScriptHost *script_host)
 {
@@ -205,6 +208,9 @@ static HRESULT WINAPI ActiveScriptSite_QueryInterface(IActiveScriptSite *iface,
     }else if(IsEqualGUID(&IID_IActiveScriptSiteWindow, riid)) {
         TRACE("(%p)->(IID_IActiveScriptSiteWindow %p)\n", This, ppv);
         *ppv = ACTSCPWIN(This);
+    }else if(IsEqualGUID(&IID_IActiveScriptSiteDebug32, riid)) {
+        TRACE("(%p)->(IID_IActiveScriptSiteDebug32 %p)\n", This, ppv);
+        *ppv = ACTSCPDBG32(This);
     }else {
         FIXME("(%p)->(%s %p)\n", This, debugstr_guid(riid), ppv);
         return E_NOINTERFACE;
@@ -426,6 +432,70 @@ static const IActiveScriptSiteWindowVtbl ActiveScriptSiteWindowVtbl = {
     ActiveScriptSiteWindow_EnableModeless
 };
 
+#define ACTSCPDBG32_THIS(iface) DEFINE_THIS(ScriptHost, IActiveScriptSiteDebug32, iface)
+
+static HRESULT WINAPI ActiveScriptSiteDebug32_QueryInterface(IActiveScriptSiteDebug32 *iface,
+        REFIID riid, void **ppv)
+{
+    ScriptHost *This = ACTSCPDBG32_THIS(iface);
+    return IActiveScriptSite_QueryInterface(ACTSCPSITE(This), riid, ppv);
+}
+
+static ULONG WINAPI ActiveScriptSiteDebug32_AddRef(IActiveScriptSiteDebug32 *iface)
+{
+    ScriptHost *This = ACTSCPDBG32_THIS(iface);
+    return IActiveScriptSite_AddRef(ACTSCPSITE(This));
+}
+
+static ULONG WINAPI ActiveScriptSiteDebug32_Release(IActiveScriptSiteDebug32 *iface)
+{
+    ScriptHost *This = ACTSCPDBG32_THIS(iface);
+    return IActiveScriptSite_Release(ACTSCPSITE(This));
+}
+
+static HRESULT WINAPI ActiveScriptSiteDebug32_GetDocumentContextFromPosition(IActiveScriptSiteDebug32 *iface,
+            DWORD dwSourceContext, ULONG uCharacterOffset, ULONG uNumChars, IDebugDocumentContext **ppsc)
+{
+    ScriptHost *This = ACTSCPDBG32_THIS(iface);
+    FIXME("(%p)->(%x %u %u %p)\n", This, dwSourceContext, uCharacterOffset, uNumChars, ppsc);
+    return E_NOTIMPL;
+}
+
+static HRESULT WINAPI ActiveScriptSiteDebug32_GetApplication(IActiveScriptSiteDebug32 *iface, IDebugApplication32 **ppda)
+{
+    ScriptHost *This = ACTSCPDBG32_THIS(iface);
+    FIXME("(%p)->(%p)\n", This, ppda);
+    return E_NOTIMPL;
+}
+
+static HRESULT WINAPI ActiveScriptSiteDebug32_GetRootApplicationNode(IActiveScriptSiteDebug32 *iface,
+            IDebugApplicationNode **ppdanRoot)
+{
+    ScriptHost *This = ACTSCPDBG32_THIS(iface);
+    FIXME("(%p)->(%p)\n", This, ppdanRoot);
+    return E_NOTIMPL;
+}
+
+static HRESULT WINAPI ActiveScriptSiteDebug32_OnScriptErrorDebug(IActiveScriptSiteDebug32 *iface,
+            IActiveScriptErrorDebug *pErrorDebug, BOOL *pfEnterDebugger, BOOL *pfCallOnScriptErrorWhenContinuing)
+{
+    ScriptHost *This = ACTSCPDBG32_THIS(iface);
+    FIXME("(%p)->(%p %p %p)\n", This, pErrorDebug, pfEnterDebugger, pfCallOnScriptErrorWhenContinuing);
+    return E_NOTIMPL;
+}
+
+#undef ACTSCPDBG32_THIS
+
+static const IActiveScriptSiteDebug32Vtbl ActiveScriptSiteDebug32Vtbl = {
+    ActiveScriptSiteDebug32_QueryInterface,
+    ActiveScriptSiteDebug32_AddRef,
+    ActiveScriptSiteDebug32_Release,
+    ActiveScriptSiteDebug32_GetDocumentContextFromPosition,
+    ActiveScriptSiteDebug32_GetApplication,
+    ActiveScriptSiteDebug32_GetRootApplicationNode,
+    ActiveScriptSiteDebug32_OnScriptErrorDebug
+};
+
 static ScriptHost *create_script_host(HTMLDocument *doc, GUID *guid)
 {
     ScriptHost *ret;
@@ -435,6 +505,7 @@ static ScriptHost *create_script_host(HTMLDocument *doc, GUID *guid)
     ret->lpIActiveScriptSiteVtbl               = &ActiveScriptSiteVtbl;
     ret->lpIActiveScriptSiteInterruptPollVtbl  = &ActiveScriptSiteInterruptPollVtbl;
     ret->lpIActiveScriptSiteWindowVtbl         = &ActiveScriptSiteWindowVtbl;
+    ret->lpIActiveScriptSiteDebug32Vtbl        = &ActiveScriptSiteDebug32Vtbl;
     ret->ref = 1;
     ret->doc = doc;
     ret->script_state = SCRIPTSTATE_UNINITIALIZED;




More information about the wine-cvs mailing list