108 if (
This->node) IXMLDOMNode_Release(
This->node);
158 if (
This->node) IXMLDOMNode_Release(
This->node );
168 return IDispatchEx_GetTypeInfoCount(&
This->dispex.IDispatchEx_iface, pctinfo);
177 return IDispatchEx_GetTypeInfo(&
This->dispex.IDispatchEx_iface,
178 iTInfo, lcid, ppTInfo);
187 return IDispatchEx_GetIDsOfNames(&
This->dispex.IDispatchEx_iface,
188 riid, rgszNames, cNames, lcid, rgDispId);
195 EXCEPINFO* pExcepInfo,
UINT* puArgErr )
198 return IDispatchEx_Invoke(&
This->dispex.IDispatchEx_iface,
199 dispIdMember,
riid, lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
231 IXSLProcessor **processor)
272 TRACE(
"(%p)\n", ppObj);
283 *ppObj = &
This->IXSLTemplate_iface;
285 TRACE(
"returning iface %p\n", *ppObj);
292 IXSLProcessor *iface,
338 if (
This->input) IXMLDOMNode_Release(
This->input);
339 if (
This->output.unk)
340 IUnknown_Release(
This->output.unk);
346 IXSLTemplate_Release(&
This->stylesheet->IXSLTemplate_iface);
356 return IDispatchEx_GetTypeInfoCount(&
This->dispex.IDispatchEx_iface, pctinfo);
360 IXSLProcessor *iface,
365 return IDispatchEx_GetTypeInfo(&
This->dispex.IDispatchEx_iface,
366 iTInfo, lcid, ppTInfo);
370 IXSLProcessor *iface,
375 return IDispatchEx_GetIDsOfNames(&
This->dispex.IDispatchEx_iface,
376 riid, rgszNames, cNames, lcid, rgDispId);
380 IXSLProcessor *iface,
383 EXCEPINFO* pExcepInfo,
UINT* puArgErr )
386 return IDispatchEx_Invoke(&
This->dispex.IDispatchEx_iface,
387 dispIdMember,
riid, lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
400 hr = IUnknown_QueryInterface(
V_UNKNOWN(&
input), &IID_IXMLDOMNode, (
void**)&input_node);
402 hr = IDispatch_QueryInterface(
V_DISPATCH(&
input), &IID_IXMLDOMNode, (
void**)&input_node);
412 hr = IXMLDOMDocument_load(doc,
input, &
b);
414 hr = IXMLDOMDocument_QueryInterface(doc, &IID_IXMLDOMNode, (
void**)&input_node);
415 IXMLDOMDocument_Release(doc);
421 if (
This->input) IXMLDOMNode_Release(
This->input);
422 This->input = input_node;
437 IXSLProcessor *iface,
438 IXSLTemplate **
template)
442 FIXME(
"(%p)->(%p): stub\n",
This,
template);
447 IXSLProcessor *iface,
458 IXSLProcessor *iface,
468 IXSLProcessor *iface,
478 IXSLProcessor *iface,
498 hr = IUnknown_QueryInterface(
V_UNKNOWN(&
var), &IID_IStream, (
void **)&output);
500 hr = IUnknown_QueryInterface(
V_UNKNOWN(&
var), &IID_ISequentialStream, (
void **)&output);
504 hr = IUnknown_QueryInterface(
V_UNKNOWN(&
var), &IID_IResponse, (
void **)&output);
516 WARN(
"failed to get output interface, 0x%08x\n",
hr);
526 if (
This->output.unk)
527 IUnknown_Release(
This->output.unk);
528 This->output.unk = output;
536 IXSLProcessor *iface,
545 if (
This->output.unk)
549 IUnknown_AddRef(
This->output.unk);
551 else if (
This->outstr)
563 IXSLProcessor *iface,
579 ISequentialStream_AddRef(
stream);
596 switch (
This->output_type)
605 hr = IPersistStream_Load(
This->output.persiststream,
src);
637 IResponse_BinaryWrite(
This->output.response,
bin);
649 ISequentialStream_Release(
stream);
651 *
ret =
hr ==
S_OK ? VARIANT_TRUE : VARIANT_FALSE;
654 FIXME(
"libxml2 is required but wasn't present at compile time\n");
668 IXSLProcessor *iface,
698 IXSLProcessor *iface,
711 FIXME(
"namespace uri is not supported\n");
748 This->params.count++;
759 IXSLProcessor *iface,
770 IXSLProcessor *iface,
820 TRACE(
"(%p)\n", ppObj);
833 This->params.count = 0;
834 This->stylesheet =
template;
835 IXSLTemplate_AddRef(&
template->IXSLTemplate_iface);
838 *ppObj = &
This->IXSLProcessor_iface;
840 TRACE(
"returning iface %p\n", *ppObj);
static void * heap_alloc(size_t len)
static BOOL heap_free(void *mem)
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static void list_remove(struct list_entry *entry)
static void list_add_tail(struct list_entry *head, struct list_entry *entry)
static void list_init(struct list_entry *head)
HRESULT DOMDocument_create(MSXML_VERSION version, void **ppObj)
HRESULT WINAPI GetHGlobalFromStream(IStream *pstm, HGLOBAL *phglobal)
HRESULT WINAPI CreateStreamOnHGlobal(HGLOBAL hGlobal, BOOL fDeleteOnRelease, LPSTREAM *ppstm)
HRESULT WINAPI SafeArrayAccessData(SAFEARRAY *psa, void **ppvData)
HRESULT WINAPI SafeArrayUnaccessData(SAFEARRAY *psa)
SAFEARRAY *WINAPI SafeArrayCreate(VARTYPE vt, UINT cDims, SAFEARRAYBOUND *rgsabound)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLboolean GLboolean GLboolean b
GLenum const GLfloat * params
GLenum GLenum GLenum input
LPVOID NTAPI GlobalLock(HGLOBAL hMem)
BOOL NTAPI GlobalUnlock(HGLOBAL hMem)
SIZE_T NTAPI GlobalSize(HGLOBAL hMem)
static HTMLDOMNode * get_node_obj(IHTMLDOMNode *)
HRESULT init_dispex(jsdisp_t *dispex, script_ctx_t *ctx, const builtin_info_t *builtin_info, jsdisp_t *prototype)
#define memcpy(s1, s2, n)
static const char * debugstr_variant(const VARIANT *var)
static struct _PeImage bin
static VARIANTARG static DISPID
BOOL dispex_query_interface(DispatchEx *This, REFIID riid, void **ppv)
BSTR WINAPI SysAllocString(LPCOLESTR str)
void WINAPI DECLSPEC_HOTPATCH SysFreeString(BSTR str)
const GUID IID_IPersistStreamInit
const GUID IID_IPersistStream
#define IsEqualGUID(rguid1, rguid2)
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
#define LIST_FOR_EACH_ENTRY_SAFE(cursor, cursor2, list, type, field)
ISequentialStream * stream
IPersistStream * persiststream
enum output_type output_type
IXSLProcessor IXSLProcessor_iface
IXSLTemplate IXSLTemplate_iface
static const tid_t xslprocessor_iface_tids[]
static HRESULT xslprocessor_set_parvalue(const VARIANT *var, struct xslprocessor_par *par)
static ULONG WINAPI xslprocessor_Release(IXSLProcessor *iface)
static HRESULT WINAPI xslprocessor_setStartMode(IXSLProcessor *iface, BSTR p, BSTR uri)
static HRESULT XSLProcessor_create(xsltemplate *, IXSLProcessor **)
static dispex_static_data_t xslprocessor_dispex
static HRESULT WINAPI xslprocessor_QueryInterface(IXSLProcessor *iface, REFIID riid, void **ppvObject)
static HRESULT WINAPI xslprocessor_get_readyState(IXSLProcessor *iface, LONG *state)
static HRESULT WINAPI xslprocessor_put_input(IXSLProcessor *iface, VARIANT input)
static ULONG WINAPI xslprocessor_AddRef(IXSLProcessor *iface)
static HRESULT WINAPI xslprocessor_transform(IXSLProcessor *iface, VARIANT_BOOL *ret)
static void xsltemplate_set_node(xsltemplate *This, IXMLDOMNode *node)
static HRESULT WINAPI xslprocessor_reset(IXSLProcessor *iface)
static HRESULT WINAPI xsltemplate_Invoke(IXSLTemplate *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
static HRESULT WINAPI xslprocessor_put_output(IXSLProcessor *iface, VARIANT var)
static HRESULT WINAPI xsltemplate_QueryInterface(IXSLTemplate *iface, REFIID riid, void **ppvObject)
@ PROCESSOR_OUTPUT_NOT_SET
@ PROCESSOR_OUTPUT_RESPONSE
@ PROCESSOR_OUTPUT_PERSISTSTREAM
@ PROCESSOR_OUTPUT_STREAM
static HRESULT WINAPI xslprocessor_addObject(IXSLProcessor *iface, IDispatch *obj, BSTR uri)
static void xslprocessor_par_free(struct xslprocessor_params *params, struct xslprocessor_par *par)
static HRESULT WINAPI xslprocessor_get_stylesheet(IXSLProcessor *iface, IXMLDOMNode **node)
static HRESULT WINAPI xsltemplate_GetIDsOfNames(IXSLTemplate *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
static HRESULT WINAPI xslprocessor_get_startModeURI(IXSLProcessor *iface, BSTR *uri)
static HRESULT WINAPI xslprocessor_GetIDsOfNames(IXSLProcessor *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
static HRESULT WINAPI xsltemplate_createProcessor(IXSLTemplate *iface, IXSLProcessor **processor)
static HRESULT WINAPI xslprocessor_get_input(IXSLProcessor *iface, VARIANT *input)
static xsltemplate * impl_from_IXSLTemplate(IXSLTemplate *iface)
static const struct IXSLProcessorVtbl XSLProcessorVtbl
static HRESULT WINAPI xsltemplate_GetTypeInfoCount(IXSLTemplate *iface, UINT *pctinfo)
HRESULT XSLTemplate_create(void **ppObj)
static dispex_static_data_t xsltemplate_dispex
static HRESULT WINAPI xslprocessor_GetTypeInfoCount(IXSLProcessor *iface, UINT *pctinfo)
static HRESULT WINAPI xslprocessor_GetTypeInfo(IXSLProcessor *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
static xslprocessor * impl_from_IXSLProcessor(IXSLProcessor *iface)
static HRESULT WINAPI xsltemplate_GetTypeInfo(IXSLTemplate *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
static HRESULT WINAPI xslprocessor_get_ownerTemplate(IXSLProcessor *iface, IXSLTemplate **template)
static HRESULT WINAPI xslprocessor_addParameter(IXSLProcessor *iface, BSTR p, VARIANT var, BSTR uri)
static HRESULT WINAPI xsltemplate_putref_stylesheet(IXSLTemplate *iface, IXMLDOMNode *node)
static const struct IXSLTemplateVtbl XSLTemplateVtbl
static ULONG WINAPI xsltemplate_AddRef(IXSLTemplate *iface)
static HRESULT WINAPI xslprocessor_Invoke(IXSLProcessor *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
static HRESULT WINAPI xsltemplate_get_stylesheet(IXSLTemplate *iface, IXMLDOMNode **node)
static const tid_t xsltemplate_iface_tids[]
static HRESULT WINAPI xslprocessor_get_output(IXSLProcessor *iface, VARIANT *output)
static HRESULT WINAPI xslprocessor_get_startMode(IXSLProcessor *iface, BSTR *p)
static ULONG WINAPI xsltemplate_Release(IXSLTemplate *iface)
#define CONTAINING_RECORD(address, type, field)
HRESULT WINAPI DECLSPEC_HOTPATCH VariantClear(VARIANTARG *pVarg)
_In_ DWORD _Out_ _In_ WORD wFlags
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject