Home | History | Annotate | Download | only in Interfaces
      1 /*
      2  * Copyright (C) 2006, 2007, 2008 Apple Inc.  All rights reserved.
      3  *
      4  * Redistribution and use in source and binary forms, with or without
      5  * modification, are permitted provided that the following conditions
      6  * are met:
      7  * 1. Redistributions of source code must retain the above copyright
      8  *    notice, this list of conditions and the following disclaimer.
      9  * 2. Redistributions in binary form must reproduce the above copyright
     10  *    notice, this list of conditions and the following disclaimer in the
     11  *    documentation and/or other materials provided with the distribution.
     12  *
     13  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
     14  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     15  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
     16  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
     17  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
     18  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
     19  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
     20  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
     21  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
     22  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
     23  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     24  */
     25 
     26 #ifndef DO_NO_IMPORTS
     27 import "oaidl.idl";
     28 import "ocidl.idl";
     29 import "DOMCore.idl";
     30 #endif
     31 
     32 interface IDOMElement;
     33 interface IDOMNode;
     34 
     35 /*!
     36     @class WebHTMLRepresentation
     37 */
     38 [
     39     object,
     40     oleautomation,
     41     uuid(E043542A-9545-4de3-8DF0-794FD6811CB1),
     42     pointer_default(unique)
     43 ]
     44 interface IWebHTMLRepresentation : IUnknown
     45 {
     46     /*
     47         + (NSArray *)supportedMIMETypes;
     48     */
     49     HRESULT supportedMIMETypes([in, out] BSTR* types, [in, out] int* cTypes);
     50 
     51     /*
     52         + (NSArray *)supportedNonImageMIMETypes;
     53     */
     54     HRESULT supportedNonImageMIMETypes([in, out] BSTR* types, [in, out] int* cTypes);
     55 
     56     /*
     57         + (NSArray *)supportedImageMIMETypes;
     58     */
     59     HRESULT supportedImageMIMETypes([in, out] BSTR* types, [in, out] int* cTypes);
     60 
     61     /*
     62         - (NSAttributedString *)attributedStringFrom:(DOMNode *)startNode startOffset:(int)startOffset to:(DOMNode *)endNode endOffset:(int)endOffset;
     63     */
     64     HRESULT attributedStringFromDOMNodes([in] IDOMNode* startNode, [in] int startOffset, [in] IDOMNode* endNode, [in] int endOffset, [out, retval] IDataObject** attributedString);
     65 
     66     /*
     67         - (DOMElement *)elementWithName:(NSString *)name inForm:(DOMElement *)form;
     68     */
     69     HRESULT elementWithName([in] BSTR name, [in] IDOMElement* form, [out, retval] IDOMElement** element);
     70 
     71     /*
     72         - (BOOL)elementDoesAutoComplete:(DOMElement *)element;
     73     */
     74     HRESULT elementDoesAutoComplete([in] IDOMElement* element, [out, retval] BOOL* result);
     75 
     76     /*
     77         - (BOOL)elementIsPassword:(DOMElement *)element;
     78     */
     79     HRESULT elementIsPassword([in] IDOMElement* element, [out, retval] BOOL* result);
     80 
     81     /*
     82         - (DOMElement *)formForElement:(DOMElement *)element;
     83     */
     84     HRESULT formForElement([in] IDOMElement* element, [out, retval] IDOMElement** form);
     85 
     86     /*
     87         - (DOMElement *)currentForm;
     88     */
     89     HRESULT currentForm([out, retval] IDOMElement** form);
     90 
     91     /*
     92         - (NSArray *)controlsInForm:(DOMElement *)form;
     93     */
     94     HRESULT controlsInForm([in] IDOMElement* form, [in, out] IDOMElement** controls, [in, out] int* cControls);
     95 
     96     /*
     97         - (NSString *)searchForLabels:(NSArray *)labels beforeElement:(DOMElement *)element;
     98         Deprecated: use the variant that includes resultDistance and resultIsInCellAbove instead.
     99     */
    100     HRESULT deprecatedSearchForLabels([in, size_is(cLabels)] BSTR* labels, [in] int cLabels, [in] IDOMElement* beforeElement, [out, retval] BSTR* result);
    101 
    102     /*
    103         - (NSString *)matchLabels:(NSArray *)labels againstElement:(DOMElement *)element;
    104     */
    105     HRESULT matchLabels([in, size_is(cLabels)] BSTR* labels, [in] int cLabels, [in] IDOMElement* againstElement, [out, retval] BSTR* result);
    106 
    107     /*
    108         - (NSString *)searchForLabels:(NSArray *)labels beforeElement:(DOMElement *)element resultDistance:(NSUInteger*)outDistance resultIsInCellAbove:(BOOL*)outIsInCellAbove;
    109     */
    110     HRESULT searchForLabels([in, size_is(cLabels)] BSTR* labels, [in] unsigned cLabels, [in] IDOMElement* beforeElement, [out] unsigned* resultDistance, [out] BOOL* resultIsInCellAbove, [out, retval] BSTR* result);
    111 }
    112