1/* 2 * Copyright (C) 2007 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 * 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of 14 * its contributors may be used to endorse or promote products derived 15 * from this software without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY 18 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 19 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 20 * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY 21 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 22 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 23 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 24 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 */ 28 29module window { 30 31 interface DOMSelection { 32 readonly attribute Node anchorNode; 33 readonly attribute long anchorOffset; 34 readonly attribute Node focusNode; 35 readonly attribute long focusOffset; 36 readonly attribute Node baseNode; 37 readonly attribute long baseOffset; 38 readonly attribute Node extentNode; 39 readonly attribute long extentOffset; 40 readonly attribute boolean isCollapsed; 41 readonly attribute DOMString type; 42 readonly attribute long rangeCount; 43 44 void collapse(in Node node, in long index) 45 raises(DOMException); 46 void collapseToEnd(); 47 void collapseToStart(); 48 void deleteFromDocument(); 49 boolean containsNode(in Node node, in boolean allowPartial); 50 void selectAllChildren(in Node node) 51 raises(DOMException); 52 void empty(); 53 void setBaseAndExtent(in Node baseNode, in long baseOffset, in Node extentNode, in long extentOffset) 54 raises(DOMException); 55 void setPosition(in Node node, in long offset) 56 raises(DOMException); 57 void modify(in DOMString alter, in DOMString direction, in DOMString granularity); 58 void extend(in Node node, in long offset) 59 raises(DOMException); 60 Range getRangeAt(in long index) 61 raises(DOMException); 62 void removeAllRanges(); 63 void addRange(in Range range); 64 65#if defined(LANGUAGE_JAVASCRIPT) 66 [DontEnum] DOMString toString(); 67#endif 68 }; 69 70} 71