当前位置: 首页>>代码示例>>C++>>正文


C++ IHTMLDOMNode_Release函数代码示例

本文整理汇总了C++中IHTMLDOMNode_Release函数的典型用法代码示例。如果您正苦于以下问题:C++ IHTMLDOMNode_Release函数的具体用法?C++ IHTMLDOMNode_Release怎么用?C++ IHTMLDOMNode_Release使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了IHTMLDOMNode_Release函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: HTMLSelectElement_add

static HRESULT WINAPI HTMLSelectElement_add(IHTMLSelectElement *iface, IHTMLElement *element,
                                            VARIANT before)
{
    HTMLSelectElement *This = impl_from_IHTMLSelectElement(iface);
    IHTMLDOMNode *node, *tmp;
    HRESULT hres;

    FIXME("(%p)->(%p %s): semi-stub\n", This, element, debugstr_variant(&before));

    if(V_VT(&before) != VT_EMPTY) {
        FIXME("unhandled before %s\n", debugstr_variant(&before));
        return E_NOTIMPL;
    }

    hres = IHTMLElement_QueryInterface(element, &IID_IHTMLDOMNode, (void**)&node);
    if(FAILED(hres))
        return hres;

    hres = IHTMLDOMNode_appendChild(&This->element.node.IHTMLDOMNode_iface, node, &tmp);
    IHTMLDOMNode_Release(node);
    if(SUCCEEDED(hres) && tmp)
        IHTMLDOMNode_Release(tmp);

    return hres;
}
开发者ID:MichaelMcDonnell,项目名称:wine,代码行数:25,代码来源:htmlselect.c

示例2: HTMLTextAreaElement_get_form

static HRESULT WINAPI HTMLTextAreaElement_get_form(IHTMLTextAreaElement *iface, IHTMLFormElement **p)
{
    HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface);
    nsIDOMHTMLFormElement *nsform;
    nsIDOMNode *nsnode;
    HTMLDOMNode *node;
    nsresult nsres;
    HRESULT hres;

    TRACE("(%p)->(%p)\n", This, p);

    nsres = nsIDOMHTMLTextAreaElement_GetForm(This->nstextarea, &nsform);
    assert(nsres == NS_OK);

    if(!nsform) {
        *p = NULL;
        return S_OK;
    }

    nsres = nsIDOMHTMLFormElement_QueryInterface(nsform, &IID_nsIDOMNode, (void**)&nsnode);
    nsIDOMHTMLFormElement_Release(nsform);
    assert(nsres == NS_OK);

    hres = get_node(This->element.node.doc, nsnode, TRUE, &node);
    nsIDOMNode_Release(nsnode);
    if(FAILED(hres))
        return hres;

    hres = IHTMLDOMNode_QueryInterface(&node->IHTMLDOMNode_iface, &IID_IHTMLFormElement, (void**)p);
    IHTMLDOMNode_Release(&node->IHTMLDOMNode_iface);
    return hres;
}
开发者ID:GYGit,项目名称:reactos,代码行数:32,代码来源:htmltextarea.c

示例3: release_nodes

void release_nodes(HTMLDocumentNode *This)
{
    HTMLDOMNode *iter, *next;

    if(!This->nodes)
        return;

    for(iter = This->nodes; iter; iter = next) {
        next = iter->next;
        iter->doc = NULL;
        if(&This->node != iter)
            IHTMLDOMNode_Release(&iter->IHTMLDOMNode_iface);
    }
}
开发者ID:mgriepentrog,项目名称:wine,代码行数:14,代码来源:htmlnode.c

示例4: IUnknown_QueryInterface

/*
 * FIXME
 * We should use better way for getting node object (like private interface)
 * or avoid it at all.
 */
static HTMLDOMNode *get_node_obj(HTMLDocumentNode *This, IUnknown *iface)
{
    HTMLDOMNode *iter = This->nodes;
    IHTMLDOMNode *node;

    IUnknown_QueryInterface(iface, &IID_IHTMLDOMNode, (void**)&node);
    IHTMLDOMNode_Release(node);

    while(iter) {
        if(&iter->IHTMLDOMNode_iface == node)
            return iter;
        iter = iter->next;
    }

    FIXME("Not found %p\n", iface);
    return NULL;
}
开发者ID:mgriepentrog,项目名称:wine,代码行数:22,代码来源:htmlnode.c

示例5: HTMLEventObj_Release

static ULONG WINAPI HTMLEventObj_Release(IHTMLEventObj *iface)
{
    HTMLEventObj *This = impl_from_IHTMLEventObj(iface);
    LONG ref = InterlockedDecrement(&This->ref);

    TRACE("(%p) ref=%d\n", This, ref);

    if(!ref) {
        if(This->target)
            IHTMLDOMNode_Release(&This->target->IHTMLDOMNode_iface);
        if(This->nsevent)
            nsIDOMEvent_Release(This->nsevent);
        release_dispex(&This->dispex);
        heap_free(This);
    }

    return ref;
}
开发者ID:PigFlyGames,项目名称:wine,代码行数:18,代码来源:htmlevent.c

示例6: HTMLElement2_insertAdjacentElement

static HRESULT WINAPI HTMLElement2_insertAdjacentElement(IHTMLElement2 *iface, BSTR where,
        IHTMLElement *insertedElement, IHTMLElement **inserted)
{
    HTMLElement *This = impl_from_IHTMLElement2(iface);
    HTMLDOMNode *ret_node;
    HTMLElement *elem;
    HRESULT hres;

    TRACE("(%p)->(%s %p %p)\n", This, debugstr_w(where), insertedElement, inserted);

    elem = unsafe_impl_from_IHTMLElement(insertedElement);
    if(!elem)
        return E_INVALIDARG;

    hres = insert_adjacent_node(This, where, elem->node.nsnode, &ret_node);
    if(FAILED(hres))
        return hres;

    hres = IHTMLDOMNode_QueryInterface(&ret_node->IHTMLDOMNode_iface, &IID_IHTMLElement, (void**)inserted);
    IHTMLDOMNode_Release(&ret_node->IHTMLDOMNode_iface);
    return hres;
}
开发者ID:RareHare,项目名称:reactos,代码行数:22,代码来源:htmlelem2.c

示例7: HTMLDOMNode2_Release

static ULONG WINAPI HTMLDOMNode2_Release(IHTMLDOMNode2 *iface)
{
    HTMLDOMNode *This = impl_from_IHTMLDOMNode2(iface);

    return IHTMLDOMNode_Release(&This->IHTMLDOMNode_iface);
}
开发者ID:mgriepentrog,项目名称:wine,代码行数:6,代码来源:htmlnode.c

示例8: HTMLTableRow_Release

static ULONG WINAPI HTMLTableRow_Release(IHTMLTableRow *iface)
{
    HTMLTableRow *This = HTMLTABLEROW_THIS(iface);

    return IHTMLDOMNode_Release(HTMLDOMNODE(&This->element.node));
}
开发者ID:bilboed,项目名称:wine,代码行数:6,代码来源:htmltablerow.c

示例9: HTMLBodyElement_Release

static ULONG WINAPI HTMLBodyElement_Release(IHTMLBodyElement *iface)
{
    HTMLBodyElement *This = impl_from_IHTMLBodyElement(iface);

    return IHTMLDOMNode_Release(&This->textcont.element.node.IHTMLDOMNode_iface);
}
开发者ID:mgriepentrog,项目名称:wine,代码行数:6,代码来源:htmlbody.c

示例10: HTMLObjectElement_Release

static ULONG WINAPI HTMLObjectElement_Release(IHTMLObjectElement *iface)
{
    HTMLObjectElement *This = HTMLOBJECT_THIS(iface);

    return IHTMLDOMNode_Release(HTMLDOMNODE(&This->element.node));
}
开发者ID:r6144,项目名称:wine,代码行数:6,代码来源:htmlobject.c

示例11: HTMLFrameBase_Release

static ULONG WINAPI HTMLFrameBase_Release(IHTMLFrameBase *iface)
{
    HTMLFrameBase *This = impl_from_IHTMLFrameBase(iface);

    return IHTMLDOMNode_Release(&This->element.node.IHTMLDOMNode_iface);
}
开发者ID:RareHare,项目名称:reactos,代码行数:6,代码来源:htmlframebase.c

示例12: HTMLTableRow_Release

static ULONG WINAPI HTMLTableRow_Release(IHTMLTableRow *iface)
{
    HTMLTableRow *This = impl_from_IHTMLTableRow(iface);

    return IHTMLDOMNode_Release(&This->element.node.IHTMLDOMNode_iface);
}
开发者ID:JamieYan,项目名称:wine,代码行数:6,代码来源:htmltablerow.c

示例13: HTMLFormElement_Release

static ULONG WINAPI HTMLFormElement_Release(IHTMLFormElement *iface)
{
    HTMLFormElement *This = HTMLFORM_THIS(iface);

    return IHTMLDOMNode_Release(HTMLDOMNODE(&This->element.node));
}
开发者ID:bilboed,项目名称:wine,代码行数:6,代码来源:htmlform.c

示例14: InternetHostSecurityManager_Release

static ULONG WINAPI InternetHostSecurityManager_Release(IInternetHostSecurityManager *iface)
{
    HTMLDocumentNode *This = impl_from_IInternetHostSecurityManager(iface);
    return IHTMLDOMNode_Release(&This->node.IHTMLDOMNode_iface);
}
开发者ID:MichaelMcDonnell,项目名称:wine,代码行数:5,代码来源:secmgr.c

示例15: HTMLIFrameElement_Release

static ULONG WINAPI HTMLIFrameElement_Release(IHTMLIFrameElement *iface)
{
    HTMLIFrame *This = impl_from_IHTMLIFrameElement(iface);

    return IHTMLDOMNode_Release(&This->framebase.element.node.IHTMLDOMNode_iface);
}
开发者ID:AmesianX,项目名称:RosWine,代码行数:6,代码来源:htmliframe.c


注:本文中的IHTMLDOMNode_Release函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。