OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006, 2009 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2009 Apple Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * | 7 * |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 11 matching lines...) Expand all Loading... |
22 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | 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 | 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 | 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 | 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. | 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
27 */ | 27 */ |
28 | 28 |
29 #ifndef FormState_h | 29 #ifndef FormState_h |
30 #define FormState_h | 30 #define FormState_h |
31 | 31 |
| 32 #include "platform/heap/Handle.h" |
32 #include "wtf/RefCounted.h" | 33 #include "wtf/RefCounted.h" |
33 #include "wtf/RefPtr.h" | 34 #include "wtf/RefPtr.h" |
34 | 35 |
35 namespace WebCore { | 36 namespace WebCore { |
36 | 37 |
37 class Document; | 38 class Document; |
38 class HTMLFormElement; | 39 class HTMLFormElement; |
39 | 40 |
40 enum FormSubmissionTrigger { | 41 enum FormSubmissionTrigger { |
41 SubmittedByJavaScript, | 42 SubmittedByJavaScript, |
42 NotSubmittedByJavaScript | 43 NotSubmittedByJavaScript |
43 }; | 44 }; |
44 | 45 |
45 class FormState : public RefCounted<FormState> { | 46 class FormState FINAL : public RefCountedWillBeGarbageCollected<FormState> { |
46 public: | 47 public: |
47 static PassRefPtr<FormState> create(HTMLFormElement&, FormSubmissionTrig
ger); | 48 static PassRefPtrWillBeRawPtr<FormState> create(HTMLFormElement&, FormSu
bmissionTrigger); |
| 49 void trace(Visitor*); |
48 | 50 |
49 HTMLFormElement* form() const { return m_form.get(); } | 51 HTMLFormElement* form() const { return m_form.get(); } |
50 Document* sourceDocument() const { return m_sourceDocument.get(); } | 52 Document* sourceDocument() const { return m_sourceDocument.get(); } |
51 FormSubmissionTrigger formSubmissionTrigger() const { return m_formSubmi
ssionTrigger; } | 53 FormSubmissionTrigger formSubmissionTrigger() const { return m_formSubmi
ssionTrigger; } |
52 | 54 |
53 private: | 55 private: |
54 FormState(HTMLFormElement&, FormSubmissionTrigger); | 56 FormState(HTMLFormElement&, FormSubmissionTrigger); |
55 | 57 |
56 RefPtr<HTMLFormElement> m_form; | 58 RefPtrWillBeMember<HTMLFormElement> m_form; |
57 RefPtr<Document> m_sourceDocument; | 59 RefPtrWillBeMember<Document> m_sourceDocument; |
58 FormSubmissionTrigger m_formSubmissionTrigger; | 60 FormSubmissionTrigger m_formSubmissionTrigger; |
59 }; | 61 }; |
60 | 62 |
61 } | 63 } |
62 | 64 |
63 #endif // FormState_h | 65 #endif // FormState_h |
OLD | NEW |