Files
reactos/reactos/include/psdk/msxml.idl
T
Christoph von Wittich 1f121135ab update riched20,ole32,oleaut32 to latest wine versions
disable ks,portcls,wdm because of broken ks.h
updated psdk,ddk headers
updated uuid and wine libs
implement IdlHeader handling in rbuild
added new idl files and removed the old header files
TODO: get rid of the WINELIB_NAME_AW macros, fix ks.h

svn path=/trunk/; revision=26428
2007-04-20 02:30:53 +00:00

336 lines
8.6 KiB
Plaintext

/*
* Copyright (C) 2005 Mike McCormack
* Copyright (C) 2005 Vijay Kiran Kamuju
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include <msxmldid.h>
import "unknwn.idl";
import "wtypes.idl";
import "objidl.idl";
import "oaidl.idl";
[
local,
object,
odl,
dual,
oleautomation,
uuid(65725580-9b5d-11d0-9bfe-00c04fc99c8e)
]
interface IXMLElementCollection : IDispatch
{
[propput, id(DISPID_XMLELEMENTCOLLECTION_LENGTH)]
HRESULT length( [in] long v );
[propget, id(DISPID_XMLELEMENTCOLLECTION_LENGTH)]
HRESULT length( [retval, out] long *p );
[propget, id(DISPID_XMLELEMENTCOLLECTION_NEWENUM)]
HRESULT _newEnum( [retval, out] IUnknown ** ppUnk );
[id(DISPID_XMLELEMENTCOLLECTION_ITEM)]
HRESULT item(
[optional, in] VARIANT var1,
[optional, in] VARIANT var2,
[retval, out] IDispatch ** ppDisp );
}
[
local,
object,
uuid(3f7f31ac-e15f-11d0-9c25-00c04fc99c8e)
]
interface IXMLElement : IDispatch
{
[propget, id(DISPID_XMLELEMENT_TAGNAME)]
HRESULT tagName( [retval, out] BSTR *p);
[propput, id(DISPID_XMLELEMENT_TAGNAME)]
HRESULT tagName( [in] BSTR p );
[propget, id(DISPID_XMLELEMENT_PARENT)]
HRESULT parent( [retval, out] IXMLElement **parent );
[id(DISPID_XMLELEMENT_SETATTRIBUTE)]
HRESULT setAttribute(
[in] BSTR strPropertyName,
[in] VARIANT PropertyValue );
[id(DISPID_XMLELEMENT_GETATTRIBUTE)]
HRESULT getAttribute(
[in] BSTR strPropertyName,
[retval, out] VARIANT *PropertyValue );
[id(DISPID_XMLELEMENT_REMOVEATTRIBUTE)]
HRESULT removeAttribute(
[in] BSTR strPropertyName );
[propget, id(DISPID_XMLELEMENT_CHILDREN)]
HRESULT children( [retval, out] IXMLElementCollection **p );
[propget, id(DISPID_XMLELEMENT_TYPE)]
HRESULT type( [retval, out] long *p );
[propget, id(DISPID_XMLELEMENT_TEXT)]
HRESULT text( [retval, out] BSTR *p );
[propput, id(DISPID_XMLELEMENT_TEXT)]
HRESULT text( [in] BSTR p );
[id(DISPID_XMLELEMENT_ADDCHILD)]
HRESULT addChild(
[in] IXMLElement *pChildElem,
[in] long lIndex,
[in] long lreserved );
[id(DISPID_XMLELEMENT_REMOVECHILD)]
HRESULT removeChild(
[in] IXMLElement *pChildElem );
}
[
local,
object,
uuid(f52e2b61-18a1-11d1-b105-00805f49916b)
]
interface IXMLDocument : IDispatch
{
[propget, id(DISPID_XMLDOCUMENT_ROOT)]
HRESULT root( [retval, out] IXMLElement **p );
[propget, id(DISPID_XMLDOCUMENT_FILESIZE)]
HRESULT fileSize( [retval, out] BSTR *p );
[propget, id(DISPID_XMLDOCUMENT_FILEMODIFIEDDATE)]
HRESULT fileModifiedDate( [retval, out] BSTR *p );
[propget, id(DISPID_XMLDOCUMENT_FILEUPDATEDDATE)]
HRESULT fileUpdatedDate( [retval, out] BSTR *p );
[propget, id(DISPID_XMLDOCUMENT_URL)]
HRESULT URL( [retval, out] BSTR *p );
[propput, id(DISPID_XMLDOCUMENT_URL)]
HRESULT URL( [in] BSTR p );
[propget, id(DISPID_XMLDOCUMENT_MIMETYPE)]
HRESULT mimeType( [retval, out] BSTR *p );
[propget, id(DISPID_XMLDOCUMENT_READYSTATE)]
HRESULT readyState( [retval, out] long *p );
[propget, id(DISPID_XMLDOCUMENT_CHARSET)]
HRESULT charset( [retval, out] BSTR *p );
[propput, id(DISPID_XMLDOCUMENT_CHARSET)]
HRESULT charset( [in] BSTR p );
[propget, id(DISPID_XMLDOCUMENT_VERSION)]
HRESULT version( [retval, out] BSTR *p );
[propget, id(DISPID_XMLDOCUMENT_DOCTYPE)]
HRESULT doctype( [retval, out] BSTR *p );
[propget, id(DISPID_XMLDOCUMENT_DTDURL)]
HRESULT dtdURl( [retval, out] BSTR *p );
[id(DISPID_XMLDOCUMENT_CREATEELEMENT)]
HRESULT createElement(
[in] VARIANT vType,
[optional, in] VARIANT var1,
[retval, out] IXMLElement **ppElem );
}
[
local,
object,
uuid(2B8DE2FF-8D2D-11d1-B2FC-00C04FD915A9)
]
interface IXMLElement2 : IDispatch
{
[propget, id(DISPID_XMLELEMENT_TAGNAME)]
HRESULT tagName([retval, out] BSTR *p);
[propput, id(DISPID_XMLELEMENT_TAGNAME)]
HRESULT tagName([in] BSTR p);
[propget, id(DISPID_XMLELEMENT_PARENT)]
HRESULT parent([retval, out]IXMLElement2 **ppParent);
[id(DISPID_XMLELEMENT_SETATTRIBUTE)]
HRESULT setAttribute(
[in] BSTR strPropertyName,
[in] VARIANT PropertyValue);
[id(DISPID_XMLELEMENT_GETATTRIBUTE)]
HRESULT getAttribute(
[in] BSTR strPropertyName,
[retval, out] VARIANT *PropertyValue);
[id(DISPID_XMLELEMENT_REMOVEATTRIBUTE)]
HRESULT removeAttribute([in] BSTR strPropertyName);
[propget, id(DISPID_XMLELEMENT_CHILDREN)]
HRESULT children([retval, out] IXMLElementCollection **pp);
[propget, id(DISPID_XMLELEMENT_TYPE)]
HRESULT type([retval, out] long *plType);
[propget, id(DISPID_XMLELEMENT_TEXT)]
HRESULT text([retval, out] BSTR *p);
[propput, id(DISPID_XMLELEMENT_TEXT)]
HRESULT text([in] BSTR p);
[id(DISPID_XMLELEMENT_ADDCHILD)]
HRESULT addChild(
[in] IXMLElement2 *pChildElem,
[in] long lIndex,
[in] long lReserved);
[id(DISPID_XMLELEMENT_REMOVECHILD)]
HRESULT removeChild([in]IXMLElement2 *pChildElem);
[propget, id(DISPID_XMLELEMENT_ATTRIBUTES)]
HRESULT attributes([retval, out] IXMLElementCollection **pp);
}
[
local,
object,
uuid(2B8DE2FE-8D2D-11d1-B2FC-00C04FD915A9)
]
interface IXMLDocument2 : IDispatch
{
[propget, id(DISPID_XMLDOCUMENT_ROOT)]
HRESULT root([retval, out] IXMLElement2 **p);
[propget, id(DISPID_XMLDOCUMENT_FILESIZE)]
HRESULT fileSize([retval, out] BSTR *p);
[propget, id(DISPID_XMLDOCUMENT_FILEMODIFIEDDATE)]
HRESULT fileModifiedDate([retval, out] BSTR *p);
[propget, id(DISPID_XMLDOCUMENT_FILEUPDATEDDATE)]
HRESULT fileUpdatedDate([retval, out] BSTR *p);
[propget, id(DISPID_XMLDOCUMENT_URL)]
HRESULT URL([retval, out] BSTR *p);
[propput, id(DISPID_XMLDOCUMENT_URL)]
HRESULT URL([in] BSTR p);
[propget, id(DISPID_XMLDOCUMENT_MIMETYPE)]
HRESULT mimeType([retval, out] BSTR *p);
[propget, id(DISPID_XMLDOCUMENT_READYSTATE)]
HRESULT readyState([retval, out]long *pl);
[propget, id(DISPID_XMLDOCUMENT_CHARSET)]
HRESULT charset([retval, out]BSTR *p);
[propput, id(DISPID_XMLDOCUMENT_CHARSET)]
HRESULT charset([in]BSTR p);
[propget, id(DISPID_XMLDOCUMENT_VERSION)]
HRESULT version([retval, out]BSTR *p);
[propget, id(DISPID_XMLDOCUMENT_DOCTYPE)]
HRESULT doctype([retval, out]BSTR *p);
[propget, restricted, id(DISPID_XMLDOCUMENT_DTDURL)]
HRESULT dtdURL([retval, out]BSTR *p);
[id(DISPID_XMLDOCUMENT_CREATEELEMENT)]
HRESULT createElement(
[in] VARIANT vType,
[optional, in] VARIANT var,
[retval, out] IXMLElement2 **ppElem);
[propget, id(DISPID_XMLDOCUMENT_ASYNC)]
HRESULT async([retval, out] VARIANT_BOOL *pf);
[propput, id(DISPID_XMLDOCUMENT_ASYNC)]
HRESULT async([in] VARIANT_BOOL f);
}
typedef enum tagXMLEMEM_TYPE {
XMLELEMTYPE_ELEMENT = 0,
XMLELEMTYPE_TEXT = 1,
XMLELEMTYPE_COMMENT = 2,
XMLELEMTYPE_DOCUMENT = 3,
XMLELEMTYPE_DTD = 4,
XMLELEMTYPE_PI = 5,
XMLELEMTYPE_OTHER = 6
} XMLELEM_TYPE;
typedef struct _xml_error {
UINT _nLine;
BSTR _pchBuf;
BSTR _cchBuf;
UINT _ich;
BSTR _pszFound;
BSTR _pszExpected;
DWORD _reserved1;
DWORD _reserved2;
} XML_ERROR;
[
local,
object,
uuid(d4d4a0fc-3b73-11d1-b2b4-00c04fb92596)
]
interface IXMLAttribute : IDispatch
{
[propget, id(DISPID_XMLATTRIBUTE_NAME)]
HRESULT name( [retval, out] BSTR *p );
[propget, id(DISPID_XMLATTRIBUTE_VALUE)]
HRESULT value( [retval, out] BSTR *p );
}
[
local,
object,
uuid(948c5ad3-c58d-11d0-9c0b-00c04fc99c8e)
]
interface IXMLError : IUnknown
{
HRESULT GetErrorInfo([out]XML_ERROR *pErrorReturn);
}
[
object,
local,
uuid(D9F1E15A-CCDB-11d0-9C0C-00C04FC99C8E)
]
interface IXMLElementNotificationSink : IDispatch
{
[id(DISPID_XMLNOTIFSINK_CHILDADDED)]
HRESULT ChildAdded([in]IDispatch *pChildElem);
}
[
uuid(cfc399af-d876-11d0-9c10-00c04fc99c8e)
]
coclass XMLDocument
{
[default] interface IXMLDocument;
}