Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(245)

Side by Side Diff: Source/core/dom/Range.idl

Issue 965943003: Sync the Range interface with the specs (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006 Apple Computer, Inc. 2 * Copyright (C) 2006 Apple Computer, Inc.
3 * Copyright (C) 2006 Samuel Weinig <sam.weinig@gmail.com> 3 * Copyright (C) 2006 Samuel Weinig <sam.weinig@gmail.com>
4 * 4 *
5 * This library is free software; you can redistribute it and/or 5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public 6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either 7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version. 8 * version 2 of the License, or (at your option) any later version.
9 * 9 *
10 * This library is distributed in the hope that it will be useful, 10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Library General Public License for more details. 13 * Library General Public License for more details.
14 * 14 *
15 * You should have received a copy of the GNU Library General Public License 15 * You should have received a copy of the GNU Library General Public License
16 * along with this library; see the file COPYING.LIB. If not, write to 16 * along with this library; see the file COPYING.LIB. If not, write to
17 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 17 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18 * Boston, MA 02110-1301, USA. 18 * Boston, MA 02110-1301, USA.
19 */ 19 */
20 20
21 // Introduced in DOM Level 2: 21 // https://dom.spec.whatwg.org/#interface-range
22
23 // FIXME: All long types in this interface should be unsigned long.
22 [ 24 [
23 Constructor, 25 Constructor,
24 ConstructorCallWith=Document, 26 ConstructorCallWith=Document,
25 WillBeGarbageCollected, 27 WillBeGarbageCollected,
26 ] interface Range { 28 ] interface Range {
27
28 readonly attribute Node startContainer; 29 readonly attribute Node startContainer;
29 readonly attribute long startOffset; 30 readonly attribute long startOffset;
30 readonly attribute Node endContainer; 31 readonly attribute Node endContainer;
31 readonly attribute long endOffset; 32 readonly attribute long endOffset;
32 readonly attribute boolean collapsed; 33 readonly attribute boolean collapsed;
33 readonly attribute Node commonAncestorContainer; 34 readonly attribute Node commonAncestorContainer;
34 35
35 [RaisesException] void setStart(Node refNode, long offset); 36 [RaisesException] void setStart(Node node, long offset);
36 [RaisesException] void setEnd(Node refNode, long offset); 37 [RaisesException] void setEnd(Node node, long offset);
37 [RaisesException] void setStartBefore(Node refNode); 38 [RaisesException] void setStartBefore(Node node);
38 [RaisesException] void setStartAfter(Node refNode); 39 [RaisesException] void setStartAfter(Node node);
39 [RaisesException] void setEndBefore(Node refNode); 40 [RaisesException] void setEndBefore(Node node);
40 [RaisesException] void setEndAfter(Node refNode); 41 [RaisesException] void setEndAfter(Node node);
41 void collapse(optional boolean toStart = false); 42 void collapse(optional boolean toStart = false);
42 [RaisesException] void selectNode(Node refNode); 43 [RaisesException] void selectNode(Node node);
43 [RaisesException] void selectNodeContents(Node refNode); 44 [RaisesException] void selectNodeContents(Node node);
44 45
45 // CompareHow
46 const unsigned short START_TO_START = 0; 46 const unsigned short START_TO_START = 0;
47 const unsigned short START_TO_END = 1; 47 const unsigned short START_TO_END = 1;
48 const unsigned short END_TO_END = 2; 48 const unsigned short END_TO_END = 2;
49 const unsigned short END_TO_START = 3; 49 const unsigned short END_TO_START = 3;
50
51 [RaisesException, TypeChecking=Interface] short compareBoundaryPoints(unsign ed short how, Range sourceRange); 50 [RaisesException, TypeChecking=Interface] short compareBoundaryPoints(unsign ed short how, Range sourceRange);
52 51
53 [RaisesException, CustomElementCallbacks] void deleteContents(); 52 [RaisesException, CustomElementCallbacks] void deleteContents();
54 [RaisesException, CustomElementCallbacks] DocumentFragment extractContents() ; 53 [RaisesException, CustomElementCallbacks] DocumentFragment extractContents() ;
55 [RaisesException, CustomElementCallbacks] DocumentFragment cloneContents(); 54 [RaisesException, CustomElementCallbacks] DocumentFragment cloneContents();
56 [RaisesException, CustomElementCallbacks] void insertNode(Node newNode); 55 [RaisesException, CustomElementCallbacks] void insertNode(Node node);
57 [RaisesException, CustomElementCallbacks] void surroundContents(Node newPare nt); 56 [RaisesException, CustomElementCallbacks] void surroundContents(Node newPare nt);
57
58 Range cloneRange(); 58 Range cloneRange();
59 [DeprecateAs=RangeDetach] void detach();
60
61 [RaisesException] boolean isPointInRange(Node node, long offset);
62 [RaisesException, TypeChecking=Interface] short comparePoint(Node node, long offset);
63
64 [RaisesException] boolean intersectsNode(Node node);
59 65
60 stringifier; 66 stringifier;
61 67
62 [DeprecateAs=RangeDetach] void detach(); 68 // CSSOM View Module
63 69 // http://dev.w3.org/csswg/cssom-view/#extensions-to-the-range-interface
64 [RaisesException] boolean isPointInRange(Node refNode, long offset); 70 // FIXME: getClientRect() and getBoundingClientRect() should
65 [RaisesException, TypeChecking=Interface] short comparePoint(Node refNode, l ong offset); 71 // return DOMRectList and DOMRect respectively.
66
67 [RaisesException] boolean intersectsNode(Node refNode);
68
69 // CSSOM View Module API extensions
70
71 ClientRectList getClientRects(); 72 ClientRectList getClientRects();
72 ClientRect getBoundingClientRect(); 73 ClientRect getBoundingClientRect();
73 74
74 // DOM Parsing and Serialization 75 // DOM Parsing and Serialization
76 // https://dvcs.w3.org/hg/innerhtml/raw-file/tip/index.html#extensions-to-th e-range-interface
77 [RaisesException, CustomElementCallbacks] DocumentFragment createContextualF ragment(DOMString fragment);
75 78
76 [RaisesException, CustomElementCallbacks] DocumentFragment createContextualF ragment(DOMString html); 79 // Non-standard APIs
77
78 // WebKit extensions
79
80 // CompareResults
81 const unsigned short NODE_BEFORE = 0; 80 const unsigned short NODE_BEFORE = 0;
82 const unsigned short NODE_AFTER = 1; 81 const unsigned short NODE_AFTER = 1;
83 const unsigned short NODE_BEFORE_AND_AFTER = 2; 82 const unsigned short NODE_BEFORE_AND_AFTER = 2;
84 const unsigned short NODE_INSIDE = 3; 83 const unsigned short NODE_INSIDE = 3;
85
86 [RaisesException, DeprecateAs=RangeCompareNode] short compareNode([Default=U ndefined] optional Node refNode); 84 [RaisesException, DeprecateAs=RangeCompareNode] short compareNode([Default=U ndefined] optional Node refNode);
87
88 [RaisesException, DeprecateAs=RangeExpand] void expand([Default=Undefined] o ptional DOMString unit); 85 [RaisesException, DeprecateAs=RangeExpand] void expand([Default=Undefined] o ptional DOMString unit);
89 }; 86 };
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698