--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/WebKit/win/Interfaces/DOMRange.idl Fri Sep 17 09:02:29 2010 +0300
@@ -0,0 +1,188 @@
+/*
+ * Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef DO_NO_IMPORTS
+import "oaidl.idl";
+import "ocidl.idl";
+import "DOMCore.idl";
+#endif
+
+interface IDOMNode;
+interface IDOMDocumentFragment;
+
+typedef enum _WebSelectionAffinity {
+ WebSelectionAffinityUpstream = 0,
+ WebSelectionAffinityDownstream = 1
+} WebSelectionAffinity;
+
+enum {
+ //
+ // DOM range exception codes
+ //
+ DOM_BAD_BOUNDARYPOINTS_ERR = 1,
+ DOM_INVALID_NODE_TYPE_ERR = 2,
+};
+
+enum {
+ //
+ // DOM Range comparison codes
+ //
+ DOM_START_TO_START = 0,
+ DOM_START_TO_END = 1,
+ DOM_END_TO_END = 2,
+ DOM_END_TO_START = 3,
+};
+
+/*
+ @interface DOMRange : DOMObject
+*/
+[
+ object,
+ oleautomation,
+ uuid(2F33E42C-0B39-48b3-B7B6-E910CDB325AD),
+ pointer_default(unique)
+]
+interface IDOMRange : IDOMObject
+{
+ /*
+ - (DOMNode *)startContainer;
+ */
+ HRESULT startContainer([out, retval] IDOMNode** node);
+
+ /*
+ - (int)startOffset;
+ */
+ HRESULT startOffset([out, retval] int* offset);
+
+ /*
+ - (DOMNode *)endContainer;
+ */
+ HRESULT endContainer([out, retval] IDOMNode** node);
+
+ /*
+ - (int)endOffset;
+ */
+ HRESULT endOffset([out, retval] int* offset);
+
+ /*
+ - (BOOL)collapsed;
+ */
+ HRESULT collapsed([out, retval] BOOL* result);
+
+ /*
+ - (DOMNode *)commonAncestorContainer;
+ */
+ HRESULT commonAncestorContainer([out, retval] IDOMNode** container);
+
+ /*
+ - (void)setStart:(DOMNode *)refNode :(int)offset;
+ */
+ HRESULT setStart([in] IDOMNode* refNode, [in] int offset);
+
+ /*
+ - (void)setEnd:(DOMNode *)refNode :(int)offset;
+ */
+ HRESULT setEnd([in] IDOMNode* refNode, [in] int offset);
+
+ /*
+ - (void)setStartBefore:(DOMNode *)refNode;
+ */
+ HRESULT setStartBefore([in] IDOMNode* refNode);
+
+ /*
+ - (void)setStartAfter:(DOMNode *)refNode;
+ */
+ HRESULT setStartAfter([in] IDOMNode* refNode);
+
+ /*
+ - (void)setEndBefore:(DOMNode *)refNode;
+ */
+ HRESULT setEndBefore([in] IDOMNode* refNode);
+
+ /*
+ - (void)setEndAfter:(DOMNode *)refNode;
+ */
+ HRESULT setEndAfter([in] IDOMNode* refNode);
+
+ /*
+ - (void)collapse:(BOOL)toStart;
+ */
+ HRESULT collapse([in] BOOL toStart);
+
+ /*
+ - (void)selectNode:(DOMNode *)refNode;
+ */
+ HRESULT selectNode([in] IDOMNode* refNode);
+
+ /*
+ - (void)selectNodeContents:(DOMNode *)refNode;
+ */
+ HRESULT selectNodeContents([in] IDOMNode* refNode);
+
+ /*
+ - (short)compareBoundaryPoints:(unsigned short)how :(DOMRange *)sourceRange;
+ */
+ HRESULT compareBoundaryPoints([in] unsigned short how, [in] IDOMRange* sourceRange);
+
+ /*
+ - (void)deleteContents;
+ */
+ HRESULT deleteContents();
+
+ /*
+ - (DOMDocumentFragment *)extractContents;
+ */
+ HRESULT extractContents([out, retval] IDOMDocumentFragment** fragment);
+
+ /*
+ - (DOMDocumentFragment *)cloneContents;
+ */
+ HRESULT cloneContents([out, retval] IDOMDocumentFragment** fragment);
+
+ /*
+ - (void)insertNode:(DOMNode *)newNode;
+ */
+ HRESULT insertNode([in] IDOMNode* newNode);
+
+ /*
+ - (void)surroundContents:(DOMNode *)newParent;
+ */
+ HRESULT surroundContents([in] IDOMNode* newParent);
+
+ /*
+ - (DOMRange *)cloneRange;
+ */
+ HRESULT cloneRange([out, retval] IDOMRange** range);
+
+ /*
+ - (NSString *)toString;
+ */
+ HRESULT toString([out, retval] BSTR* str);
+
+ /*
+ - (void)detach;
+ */
+ HRESULT detach();
+}