以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 SVG/GML/VRML/X3D/XAML 』  (http://bbs.xml.org.cn/list.asp?boardid=21)
----  [转帖]Adobe SVG Viewer IDL  (http://bbs.xml.org.cn/dispbbs.asp?boardid=21&rootid=&id=14833)


--  作者:SCYANGYU
--  发布时间:2/27/2005 10:53:00 AM

--  [转帖]Adobe SVG Viewer IDL
The following is the interface definition for the Adobe SVG Viewer. It is a standard IDL document, and is used to link to the Viewer as an ActiveX object. This allows the viewer to be used as a component within a Windows program written in any language which supports IDL, such as C, C++, C#, Delphi, Java, Javascript, Visual Basic, and others.

To use the following code, highlight all of the text within the light yellow box, copy and paste it into a text editor, then save it as NPSVG3.IDL in any convenient directory. After saving the IDL file, follow the directions provided with your programming IDE on how to include it within your project.

Have Fun!

Brian Grainger granam@shaw.ca

// typelib filename: NPSVG3.dll

[
  uuid(8415B62C-3C1B-416E-B5D7-40D983A9FA50),
  version(3.0),
  helpstring("SVGActiveX 3.0 Type Library"),
  custom(DE77BA64-517C-11D1-A2DA-0000F8773CE9, 83951780),
  custom(DE77BA63-517C-11D1-A2DA-0000F8773CE9, 1004130005)

]
library SVGACTIVEXLib
{
    // TLib :     // TLib : OLE Automation : {00020430-0000-0000-C000-000000000046}
    importlib("Stdole2.tlb");

    // Forward declare all types defined in this typelib
    dispinterface _ISVGControlEvents;
    interface ISVGControl;

    [
      uuid(BD719F6D-BC21-4435-9BA1-AFD2F73E22B2),
      helpstring("_ISVGControlEvents Interface")
    ]
    dispinterface _ISVGControlEvents {
        properties:
        methods:
    };

    [
      uuid(377B5106-3B4E-4A2D-8520-8767590CAC86),
      helpstring("SVGCtl Class")
    ]
    coclass SVGCtl {
        [default] interface ISVGControl;
    };

    [
      odl,
      uuid(41066AF3-53A3-4C67-83AC-14688B13B31E),
      helpstring("ISVGControl Interface"),
      dual,
      oleautomation
    ]
    interface ISVGControl : IDispatch {
        [id(0x00000014), propget, helpstring("property SRC")]
        HRESULT SRC([out, retval] BSTR* pVal);
        [id(0x00000014), propput, helpstring("property SRC")]
        HRESULT SRC([in] BSTR pVal);
        [id(0x60020002), helpstring("gets the src")]
        HRESULT getSrc([out, retval] BSTR* pVal);
        [id(0x60020003), helpstring("sets the src")]
        HRESULT setSrc([in] BSTR newVal);
        [id(0xfffffdf3), propget, helpstring("Stock property ReadyState")]
        HRESULT ReadyState([out, retval] long* pnReadyState);
        [id(0x00000065), helpstring("method reload")]
        HRESULT reload();
        [id(0x00000002), propget, helpstring("property DefaultFontFamily")]
        HRESULT DefaultFontFamily([out, retval] BSTR* pVal);
        [id(0x00000002), propput, helpstring("property DefaultFontFamily")]
        HRESULT DefaultFontFamily([in] BSTR pVal);
        [id(0x60020008), helpstring("getDefaultFontFamily")]
        HRESULT getDefaultFontFamily([out, retval] BSTR* pVal);
        [id(0x60020009), helpstring("setDefaultFontFamily")]
        HRESULT setDefaultFontFamily([in] BSTR newVal);
        [id(0x00000003), propget, helpstring("property DefaultFontSize")]
        HRESULT DefaultFontSize([out, retval] single* pVal);
        [id(0x00000003), propput, helpstring("property DefaultFontSize")]
        HRESULT DefaultFontSize([in] single pVal);
        [id(0x6002000c), helpstring("getDefaultFontSize")]
        HRESULT getDefaultFontSize([out, retval] single* pVal);
        [id(0x6002000d), helpstring("setDefaultFontSize")]
        HRESULT setDefaultFontSize([in] single newVal);
        [id(0x00000004), propget, helpstring("property DefaultAntialias")]
        HRESULT DefaultAntialias([out, retval] long* pVal);
        [id(0x00000004), propput, helpstring("property DefaultAntialias")]
        HRESULT DefaultAntialias([in] long pVal);
        [id(0x60020010), helpstring("getDefaultAntialias")]
        HRESULT getDefaultAntialias([out, retval] long* pVal);
        [id(0x60020011), helpstring("setDefaultAntialias")]
        HRESULT setDefaultAntialias([in] long newVal);
        [id(0x00000012), propget, helpstring("property FULLSCREEN")]
        HRESULT FULLSCREEN([out, retval] BSTR* pVal);
        [id(0x00000012), propput, helpstring("property FULLSCREEN")]
        HRESULT FULLSCREEN([in] BSTR pVal);
        [id(0x00000013), propget, helpstring("property USE_SVGZ")]
        HRESULT USE_SVGZ([out, retval] BSTR* pVal);
        [id(0x00000013), propput, helpstring("property USE_SVGZ")]
        HRESULT USE_SVGZ([in] BSTR pVal);
        [id(0x00000015), propget, helpstring("property WMODE")]
        HRESULT WMODE([out, retval] BSTR* pVal);
        [id(0x00000015), propput, helpstring("property WMODE")]
        HRESULT WMODE([in] BSTR pVal);
        [id(0x00000017), propget, helpstring("property INTERNALID")]
        HRESULT INTERNALID([out, retval] BSTR* pVal);
        [id(0x00000017), propput, helpstring("property INTERNALID")]
        HRESULT INTERNALID([in] BSTR pVal);
        [id(0x00000016), propget, helpstring("property window")]
        HRESULT window([out, retval] IDispatch** pVal);
        [id(0x0000006d), helpstring("getWindow")]
        HRESULT getWindow([out, retval] IDispatch** pVal);
        [id(0x0000006b), helpstring("method getSVGDocument")]
        HRESULT getSVGDocument([out, retval] IDispatch** ppSVGDocument);
        [id(0x0000006a), helpstring("method getSVGViewerVersion")]
        HRESULT getSVGViewerVersion([out, retval] BSTR* pVersion);
        [id(0x0000006c), helpstring("method disableAutoUpdate")]
        HRESULT disableAutoUpdate();
    };

    [
      uuid(78156A80-C6A1-4BBF-8E6A-3CD390EEB4E2),
      helpstring("SVG Behavior Factory Class")
    ]
    coclass SVGBehaviorFactory {
        [default] interface IDispatch;
    };

    [
      uuid(ABD2F8EA-F1D9-4704-BDC3-A07741F967A2),
      helpstring("SVG Scriptable Renderer Class")
    ]
    coclass SVGRenderer {
        [default] interface IDispatch;
    };
};


http://wiki.svg.org/index.php/AsvIDL


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
6,482.422ms