OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * Copyright (C) 2000 Frederik Holljen (frederik.holljen@hig.no) | 3 * Copyright (C) 2000 Frederik Holljen (frederik.holljen@hig.no) |
4 * Copyright (C) 2001 Peter Kelly (pmk@post.com) | 4 * Copyright (C) 2001 Peter Kelly (pmk@post.com) |
5 * Copyright (C) 2006 Samuel Weinig (sam.weinig@gmail.com) | 5 * Copyright (C) 2006 Samuel Weinig (sam.weinig@gmail.com) |
6 * Copyright (C) 2004, 2008 Apple Inc. All rights reserved. | 6 * Copyright (C) 2004, 2008 Apple Inc. All rights reserved. |
7 * | 7 * |
8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
52 PassRefPtrWillBeRawPtr<Node> nextNode(ExceptionState&); | 52 PassRefPtrWillBeRawPtr<Node> nextNode(ExceptionState&); |
53 PassRefPtrWillBeRawPtr<Node> previousNode(ExceptionState&); | 53 PassRefPtrWillBeRawPtr<Node> previousNode(ExceptionState&); |
54 void detach(); | 54 void detach(); |
55 | 55 |
56 Node* referenceNode() const { return m_referenceNode.node.get(); } | 56 Node* referenceNode() const { return m_referenceNode.node.get(); } |
57 bool pointerBeforeReferenceNode() const { return m_referenceNode.isPointerBe
foreNode; } | 57 bool pointerBeforeReferenceNode() const { return m_referenceNode.isPointerBe
foreNode; } |
58 | 58 |
59 // This function is called before any node is removed from the document tree
. | 59 // This function is called before any node is removed from the document tree
. |
60 void nodeWillBeRemoved(Node&); | 60 void nodeWillBeRemoved(Node&); |
61 | 61 |
62 virtual void trace(Visitor*) override; | 62 DECLARE_VIRTUAL_TRACE(); |
63 | 63 |
64 private: | 64 private: |
65 NodeIterator(PassRefPtrWillBeRawPtr<Node>, unsigned whatToShow, PassRefPtrWi
llBeRawPtr<NodeFilter>); | 65 NodeIterator(PassRefPtrWillBeRawPtr<Node>, unsigned whatToShow, PassRefPtrWi
llBeRawPtr<NodeFilter>); |
66 | 66 |
67 class NodePointer { | 67 class NodePointer { |
68 DISALLOW_ALLOCATION(); | 68 DISALLOW_ALLOCATION(); |
69 public: | 69 public: |
70 NodePointer(); | 70 NodePointer(); |
71 NodePointer(PassRefPtrWillBeRawPtr<Node>, bool); | 71 NodePointer(PassRefPtrWillBeRawPtr<Node>, bool); |
72 | 72 |
73 void clear(); | 73 void clear(); |
74 bool moveToNext(Node* root); | 74 bool moveToNext(Node* root); |
75 bool moveToPrevious(Node* root); | 75 bool moveToPrevious(Node* root); |
76 | 76 |
77 RefPtrWillBeMember<Node> node; | 77 RefPtrWillBeMember<Node> node; |
78 bool isPointerBeforeNode; | 78 bool isPointerBeforeNode; |
79 | 79 |
80 void trace(Visitor* visitor) | 80 DEFINE_INLINE_TRACE() |
81 { | 81 { |
82 visitor->trace(node); | 82 visitor->trace(node); |
83 } | 83 } |
84 }; | 84 }; |
85 | 85 |
86 void updateForNodeRemoval(Node& nodeToBeRemoved, NodePointer&) const; | 86 void updateForNodeRemoval(Node& nodeToBeRemoved, NodePointer&) const; |
87 | 87 |
88 NodePointer m_referenceNode; | 88 NodePointer m_referenceNode; |
89 NodePointer m_candidateNode; | 89 NodePointer m_candidateNode; |
90 }; | 90 }; |
91 | 91 |
92 } // namespace blink | 92 } // namespace blink |
93 | 93 |
94 #endif // NodeIterator_h | 94 #endif // NodeIterator_h |
OLD | NEW |