Alexandre Julliard : include: Define the Scriptlet class in mshtml.idl.

Alexandre Julliard julliard at winehq.org
Thu Dec 23 11:28:02 CST 2010


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

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Wed Dec 22 21:25:44 2010 +0100

include: Define the Scriptlet class in mshtml.idl.

---

 include/mshtmdid.h |   20 +++++++++
 include/mshtml.idl |  116 ++++++++++++++++++++++++++++++++++++++++++++++++----
 2 files changed, 127 insertions(+), 9 deletions(-)

diff --git a/include/mshtmdid.h b/include/mshtmdid.h
index 1e9ab77..c6dc2e7 100644
--- a/include/mshtmdid.h
+++ b/include/mshtmdid.h
@@ -946,6 +946,26 @@
 #define DISPID_IHTMLDOCUMENT6_IE8_GETELEMENTBYID  DISPID_OMDOCUMENT+105
 #define DISPID_IHTMLDOCUMENT6_UPDATESETTINGS      DISPID_OMDOCUMENT+106
 
+/* DWebBridgeEvents */
+#define DISPID_DWEBBRIDGEEVENTS_ONSCRIPTLETEVENT   1
+#define DISPID_DWEBBRIDGEEVENTS_ONREADYSTATECHANGE DISPID_HTMLDOCUMENTEVENTS_ONREADYSTATECHANGE
+#define DISPID_DWEBBRIDGEEVENTS_ONCLICK            DISPID_HTMLDOCUMENTEVENTS_ONCLICK
+#define DISPID_DWEBBRIDGEEVENTS_ONDBLCLICK         DISPID_HTMLDOCUMENTEVENTS_ONDBLCLICK
+#define DISPID_DWEBBRIDGEEVENTS_ONKEYDOWN          DISPID_HTMLDOCUMENTEVENTS_ONKEYDOWN
+#define DISPID_DWEBBRIDGEEVENTS_ONKEYUP            DISPID_HTMLDOCUMENTEVENTS_ONKEYUP
+#define DISPID_DWEBBRIDGEEVENTS_ONKEYPRESS         DISPID_HTMLDOCUMENTEVENTS_ONKEYPRESS
+#define DISPID_DWEBBRIDGEEVENTS_ONMOUSEDOWN        DISPID_HTMLDOCUMENTEVENTS_ONMOUSEDOWN
+#define DISPID_DWEBBRIDGEEVENTS_ONMOUSEMOVE        DISPID_HTMLDOCUMENTEVENTS_ONMOUSEMOVE
+#define DISPID_DWEBBRIDGEEVENTS_ONMOUSEUP          DISPID_HTMLDOCUMENTEVENTS_ONMOUSEUP
+
+/* IWebBridge */
+#define DISPID_IWEBBRIDGE_URL                     1
+#define DISPID_IWEBBRIDGE_SCROLLBAR               2
+#define DISPID_IWEBBRIDGE_EMBED                   3
+#define DISPID_IWEBBRIDGE_EVENT                   DISPID_IHTMLWINDOW2_EVENT
+#define DISPID_IWEBBRIDGE_READYSTATE              DISPID_READYSTATE
+#define DISPID_IWEBBRIDGE_ABOUTBOX                DISPID_ABOUTBOX
+
 /* IHTMLEmbedElement */
 #define DISPID_IHTMLEMBEDELEMENT_HIDDEN       DISPID_OBJECT+10
 #define DISPID_IHTMLEMBEDELEMENT_PALETTE      DISPID_OBJECT+4
diff --git a/include/mshtml.idl b/include/mshtml.idl
index 0269b66..f7dde54 100644
--- a/include/mshtml.idl
+++ b/include/mshtml.idl
@@ -93,6 +93,15 @@ typedef enum _SELECTION_TYPE {
 } SELECTION_TYPE;
 
 [
+    version(4.0),
+    uuid(3050F1C5-98B5-11CF-BB82-00AA00BDCE0B)
+]
+library MSHTML
+{
+
+importlib("stdole2.tlb");
+
+[
     odl,
     oleautomation,
     dual,
@@ -143,15 +152,6 @@ interface IHTMLFiltersCollection : IDispatch
         [retval, out] VARIANT *pvarResult);
 }
 
-[
-    version(4.0),
-    uuid(3050F1C5-98B5-11CF-BB82-00AA00BDCE0B)
-]
-library MSHTML
-{
-
-importlib("stdole2.tlb");
-
 /*****************************************************************************
  *    IHTMLStyle interface
  */
@@ -13138,6 +13138,104 @@ coclass HTMLDocument
 }
 
 /*****************************************************************************
+ *    DWebBridgeEvents dispinterface
+ */
+[
+    hidden,
+    uuid(a6d897ff-0a95-11d1-b0ba-006008166e11)
+]
+dispinterface DWebBridgeEvents
+{
+properties:
+methods:
+    [id(DISPID_DWEBBRIDGEEVENTS_ONSCRIPTLETEVENT)]
+    void onscriptletevent([in] BSTR name,[in] VARIANT eventData);
+
+    [id(DISPID_DWEBBRIDGEEVENTS_ONREADYSTATECHANGE)]
+    void onreadystatechange();
+
+    [id(DISPID_DWEBBRIDGEEVENTS_ONCLICK)]
+    VARIANT_BOOL onclick();
+
+    [id(DISPID_DWEBBRIDGEEVENTS_ONDBLCLICK)]
+    VARIANT_BOOL ondblclick();
+
+    [id(DISPID_DWEBBRIDGEEVENTS_ONKEYDOWN)]
+    void onkeydown();
+
+    [id(DISPID_DWEBBRIDGEEVENTS_ONKEYUP)]
+    void onkeyup();
+
+    [id(DISPID_DWEBBRIDGEEVENTS_ONKEYPRESS)]
+    VARIANT_BOOL onkeypress();
+
+    [id(DISPID_DWEBBRIDGEEVENTS_ONMOUSEDOWN)]
+    void onmousedown();
+
+    [id(DISPID_DWEBBRIDGEEVENTS_ONMOUSEMOVE)]
+    void onmousemove();
+
+    [id(DISPID_DWEBBRIDGEEVENTS_ONMOUSEUP)]
+    void onmouseup();
+}
+
+/*****************************************************************************
+ *    IWebBridge interface
+ */
+[
+    odl,
+    oleautomation,
+    dual,
+    uuid(ae24fdad-03c6-11d1-8b76-0080c744f389)
+]
+interface IWebBridge : IDispatch
+{
+    [propput, id(DISPID_IWEBBRIDGE_URL)]
+    HRESULT URL([in] BSTR v);
+
+    [propget, id(DISPID_IWEBBRIDGE_URL)]
+    HRESULT URL([retval, out] BSTR * p);
+
+    [propput, id(DISPID_IWEBBRIDGE_SCROLLBAR)]
+    HRESULT Scrollbar([in] VARIANT_BOOL v);
+
+    [propget, id(DISPID_IWEBBRIDGE_SCROLLBAR)]
+    HRESULT Scrollbar([retval, out] VARIANT_BOOL * p);
+
+    [propput, id(DISPID_IWEBBRIDGE_EMBED)]
+    HRESULT embed([in] VARIANT_BOOL v);
+
+    [propget, id(DISPID_IWEBBRIDGE_EMBED)]
+    HRESULT embed([retval, out] VARIANT_BOOL * p);
+
+    [propget, id(DISPID_IWEBBRIDGE_EVENT)]
+    HRESULT event([retval, out] IDispatch* * p);
+
+    [propget, id(DISPID_IWEBBRIDGE_READYSTATE)]
+    HRESULT readyState([retval, out] long * p);
+
+    [id(DISPID_IWEBBRIDGE_ABOUTBOX)]
+    HRESULT AboutBox();
+}
+
+/*****************************************************************************
+ *    Scriptlet coclass
+ */
+[
+    control,
+    helpstring("Microsoft Scriptlet Component"),
+    progid("ScriptBridge.ScriptBridge.1"),
+    vi_progid("ScriptBridge.ScriptBridge"),
+    threading(apartment),
+    uuid(ae24fdae-03c6-11d1-8b76-0080c744f389)
+]
+coclass Scriptlet
+{
+    [default]           interface IWebBridge;
+    [source, default]   dispinterface DWebBridgeEvents;
+}
+
+/*****************************************************************************
  *    IHTMLEmbedElement interface
  */
 [




More information about the wine-cvs mailing list