OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). | 2 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). |
3 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 3 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
4 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 4 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
5 * (C) 2000 Dirk Mueller (mueller@kde.org) | 5 * (C) 2000 Dirk Mueller (mueller@kde.org) |
6 * Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010, 2011 Apple Inc. All rights
reserved. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010, 2011 Apple Inc. All rights
reserved. |
7 * Copyright (C) 2010 Google Inc. All rights reserved. | 7 * Copyright (C) 2010 Google Inc. All rights reserved. |
8 * | 8 * |
9 * This library is free software; you can redistribute it and/or | 9 * This library is free software; you can redistribute it and/or |
10 * modify it under the terms of the GNU Library General Public | 10 * modify it under the terms of the GNU Library General Public |
(...skipping 22 matching lines...) Expand all Loading... |
33 #include "wtf/Vector.h" | 33 #include "wtf/Vector.h" |
34 | 34 |
35 namespace WebCore { | 35 namespace WebCore { |
36 | 36 |
37 class ExceptionState; | 37 class ExceptionState; |
38 class HTMLOptionElement; | 38 class HTMLOptionElement; |
39 | 39 |
40 class HTMLSelectElement FINAL : public HTMLFormControlElementWithState, public T
ypeAheadDataSource { | 40 class HTMLSelectElement FINAL : public HTMLFormControlElementWithState, public T
ypeAheadDataSource { |
41 public: | 41 public: |
42 static PassRefPtr<HTMLSelectElement> create(Document&); | 42 static PassRefPtr<HTMLSelectElement> create(Document&); |
43 static PassRefPtr<HTMLSelectElement> create(Document&, HTMLFormElement*, boo
l createdByParser); | 43 static PassRefPtr<HTMLSelectElement> create(Document&, HTMLFormElement*); |
44 | 44 |
45 int selectedIndex() const; | 45 int selectedIndex() const; |
46 void setSelectedIndex(int); | 46 void setSelectedIndex(int); |
47 | 47 |
48 void optionSelectedByUser(int index, bool dispatchChangeEvent, bool allowMul
tipleSelection = false); | 48 void optionSelectedByUser(int index, bool dispatchChangeEvent, bool allowMul
tipleSelection = false); |
49 | 49 |
50 // For ValidityState | 50 // For ValidityState |
51 virtual String validationMessage() const OVERRIDE; | 51 virtual String validationMessage() const OVERRIDE; |
52 virtual bool valueMissing() const OVERRIDE; | 52 virtual bool valueMissing() const OVERRIDE; |
53 | 53 |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
103 void listBoxOnChange(); | 103 void listBoxOnChange(); |
104 int optionToListIndex(int optionIndex) const; | 104 int optionToListIndex(int optionIndex) const; |
105 int activeSelectionStartListIndex() const; | 105 int activeSelectionStartListIndex() const; |
106 int activeSelectionEndListIndex() const; | 106 int activeSelectionEndListIndex() const; |
107 void setActiveSelectionAnchorIndex(int); | 107 void setActiveSelectionAnchorIndex(int); |
108 void setActiveSelectionEndIndex(int); | 108 void setActiveSelectionEndIndex(int); |
109 void updateListBoxSelection(bool deselectOtherOptions); | 109 void updateListBoxSelection(bool deselectOtherOptions); |
110 | 110 |
111 // For use in the implementation of HTMLOptionElement. | 111 // For use in the implementation of HTMLOptionElement. |
112 void optionSelectionStateChanged(HTMLOptionElement*, bool optionIsSelected); | 112 void optionSelectionStateChanged(HTMLOptionElement*, bool optionIsSelected); |
113 bool isParsingInProgress() const { return m_isParsingInProgress; } | |
114 bool anonymousIndexedSetter(unsigned, PassRefPtr<HTMLOptionElement>, Excepti
onState&); | 113 bool anonymousIndexedSetter(unsigned, PassRefPtr<HTMLOptionElement>, Excepti
onState&); |
115 | 114 |
116 protected: | 115 protected: |
117 HTMLSelectElement(Document&, HTMLFormElement*, bool createdByParser); | 116 HTMLSelectElement(Document&, HTMLFormElement*); |
118 | 117 |
119 private: | 118 private: |
120 virtual const AtomicString& formControlType() const OVERRIDE; | 119 virtual const AtomicString& formControlType() const OVERRIDE; |
121 | 120 |
122 virtual bool shouldShowFocusRingOnMouseFocus() const OVERRIDE; | 121 virtual bool shouldShowFocusRingOnMouseFocus() const OVERRIDE; |
123 | 122 |
124 virtual void dispatchFocusEvent(Element* oldFocusedElement, FocusDirection)
OVERRIDE; | 123 virtual void dispatchFocusEvent(Element* oldFocusedElement, FocusDirection)
OVERRIDE; |
125 virtual void dispatchBlurEvent(Element* newFocusedElemnet) OVERRIDE; | 124 virtual void dispatchBlurEvent(Element* newFocusedElemnet) OVERRIDE; |
126 | 125 |
127 virtual bool canStartSelection() const OVERRIDE { return false; } | 126 virtual bool canStartSelection() const OVERRIDE { return false; } |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
199 Vector<bool> m_cachedStateForActiveSelection; | 198 Vector<bool> m_cachedStateForActiveSelection; |
200 TypeAhead m_typeAhead; | 199 TypeAhead m_typeAhead; |
201 int m_size; | 200 int m_size; |
202 int m_lastOnChangeIndex; | 201 int m_lastOnChangeIndex; |
203 int m_activeSelectionAnchorIndex; | 202 int m_activeSelectionAnchorIndex; |
204 int m_activeSelectionEndIndex; | 203 int m_activeSelectionEndIndex; |
205 bool m_isProcessingUserDrivenChange; | 204 bool m_isProcessingUserDrivenChange; |
206 bool m_multiple; | 205 bool m_multiple; |
207 bool m_activeSelectionState; | 206 bool m_activeSelectionState; |
208 mutable bool m_shouldRecalcListItems; | 207 mutable bool m_shouldRecalcListItems; |
209 bool m_isParsingInProgress; | |
210 }; | 208 }; |
211 | 209 |
212 DEFINE_NODE_TYPE_CASTS(HTMLSelectElement, hasTagName(HTMLNames::selectTag)); | 210 DEFINE_NODE_TYPE_CASTS(HTMLSelectElement, hasTagName(HTMLNames::selectTag)); |
213 | 211 |
214 } // namespace | 212 } // namespace |
215 | 213 |
216 #endif | 214 #endif |
OLD | NEW |