OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserv
ed. | 4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserv
ed. |
5 * Copyright (C) 2014 Samsung Electronics. All rights reserved. | 5 * Copyright (C) 2014 Samsung Electronics. All rights reserved. |
6 * | 6 * |
7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
(...skipping 20 matching lines...) Expand all Loading... |
31 | 31 |
32 namespace blink { | 32 namespace blink { |
33 | 33 |
34 class HTMLImageElement; | 34 class HTMLImageElement; |
35 class QualifiedName; | 35 class QualifiedName; |
36 | 36 |
37 // This class is just a big hack to find form elements even in malformed HTML el
ements. | 37 // This class is just a big hack to find form elements even in malformed HTML el
ements. |
38 // The famous <table><tr><form><td> problem. | 38 // The famous <table><tr><form><td> problem. |
39 | 39 |
40 class HTMLFormControlsCollection FINAL : public HTMLCollection { | 40 class HTMLFormControlsCollection FINAL : public HTMLCollection { |
| 41 DEFINE_WRAPPERTYPEINFO(); |
41 public: | 42 public: |
42 static PassRefPtrWillBeRawPtr<HTMLFormControlsCollection> create(ContainerNo
de&, CollectionType); | 43 static PassRefPtrWillBeRawPtr<HTMLFormControlsCollection> create(ContainerNo
de&, CollectionType); |
43 | 44 |
44 virtual ~HTMLFormControlsCollection(); | 45 virtual ~HTMLFormControlsCollection(); |
45 | 46 |
46 HTMLElement* item(unsigned offset) const { return toHTMLElement(HTMLCollecti
on::item(offset)); } | 47 HTMLElement* item(unsigned offset) const { return toHTMLElement(HTMLCollecti
on::item(offset)); } |
47 | 48 |
48 virtual HTMLElement* namedItem(const AtomicString& name) const OVERRIDE; | 49 virtual HTMLElement* namedItem(const AtomicString& name) const OVERRIDE; |
49 void namedGetter(const AtomicString& name, RefPtrWillBeRawPtr<RadioNodeList>
&, RefPtrWillBeRawPtr<Element>&); | 50 void namedGetter(const AtomicString& name, RefPtrWillBeRawPtr<RadioNodeList>
&, RefPtrWillBeRawPtr<Element>&); |
50 | 51 |
51 virtual void trace(Visitor*) OVERRIDE; | 52 virtual void trace(Visitor*) OVERRIDE; |
52 | 53 |
53 private: | 54 private: |
54 explicit HTMLFormControlsCollection(ContainerNode&); | 55 explicit HTMLFormControlsCollection(ContainerNode&); |
55 | 56 |
56 virtual void updateIdNameCache() const OVERRIDE; | 57 virtual void updateIdNameCache() const OVERRIDE; |
57 virtual void supportedPropertyNames(Vector<String>& names) OVERRIDE; | 58 virtual void supportedPropertyNames(Vector<String>& names) OVERRIDE; |
58 | 59 |
59 const FormAssociatedElement::List& formControlElements() const; | 60 const FormAssociatedElement::List& formControlElements() const; |
60 const WillBeHeapVector<RawPtrWillBeMember<HTMLImageElement> >& formImageElem
ents() const; | 61 const WillBeHeapVector<RawPtrWillBeMember<HTMLImageElement> >& formImageElem
ents() const; |
61 virtual HTMLElement* virtualItemAfter(Element*) const OVERRIDE; | 62 virtual HTMLElement* virtualItemAfter(Element*) const OVERRIDE; |
62 virtual void invalidateCache(Document* oldDocument = 0) const OVERRIDE; | 63 virtual void invalidateCache(Document* oldDocument = 0) const OVERRIDE; |
63 | 64 |
64 mutable RawPtrWillBeMember<HTMLElement> m_cachedElement; | 65 mutable RawPtrWillBeMember<HTMLElement> m_cachedElement; |
65 mutable unsigned m_cachedElementOffsetInArray; | 66 mutable unsigned m_cachedElementOffsetInArray; |
66 }; | 67 }; |
67 DEFINE_TYPE_CASTS(HTMLFormControlsCollection, LiveNodeListBase, collection, coll
ection->type() == FormControls, collection.type() == FormControls); | 68 DEFINE_TYPE_CASTS(HTMLFormControlsCollection, LiveNodeListBase, collection, coll
ection->type() == FormControls, collection.type() == FormControls); |
68 | 69 |
69 } // namespace | 70 } // namespace blink |
70 | 71 |
71 #endif | 72 #endif // HTMLFormControlsCollection_h |
OLD | NEW |