OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_UI_AUTOFILL_AUTOFILL_DIALOG_CONTROLLER_H_ | 5 #ifndef CHROME_BROWSER_UI_AUTOFILL_AUTOFILL_DIALOG_CONTROLLER_H_ |
6 #define CHROME_BROWSER_UI_AUTOFILL_AUTOFILL_DIALOG_CONTROLLER_H_ | 6 #define CHROME_BROWSER_UI_AUTOFILL_AUTOFILL_DIALOG_CONTROLLER_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/string16.h" | 10 #include "base/string16.h" |
11 #include "chrome/browser/ui/autofill/autofill_dialog_types.h" | 11 #include "chrome/browser/ui/autofill/autofill_dialog_types.h" |
12 #include "components/autofill/browser/field_types.h" | 12 #include "components/autofill/browser/field_types.h" |
| 13 #include "components/autofill/browser/wallet/required_action.h" |
13 #include "ui/base/range/range.h" | 14 #include "ui/base/range/range.h" |
14 #include "ui/base/ui_base_types.h" | 15 #include "ui/base/ui_base_types.h" |
15 #include "ui/gfx/image/image.h" | 16 #include "ui/gfx/image/image.h" |
16 #include "ui/gfx/native_widget_types.h" | 17 #include "ui/gfx/native_widget_types.h" |
17 | 18 |
18 class Profile; | 19 class Profile; |
19 | 20 |
20 namespace content { | 21 namespace content { |
21 class WebContents; | 22 class WebContents; |
22 struct NativeWebKeyboardEvent; | 23 struct NativeWebKeyboardEvent; |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
98 const = 0; | 99 const = 0; |
99 | 100 |
100 // Returns the combobox model for inputs of type |type|, or NULL if the input | 101 // Returns the combobox model for inputs of type |type|, or NULL if the input |
101 // should be a text field. | 102 // should be a text field. |
102 virtual ui::ComboboxModel* ComboboxModelForAutofillType( | 103 virtual ui::ComboboxModel* ComboboxModelForAutofillType( |
103 AutofillFieldType type) = 0; | 104 AutofillFieldType type) = 0; |
104 | 105 |
105 // Returns the model for suggestions for fields that fall under |section|. | 106 // Returns the model for suggestions for fields that fall under |section|. |
106 virtual ui::MenuModel* MenuModelForSection(DialogSection section) = 0; | 107 virtual ui::MenuModel* MenuModelForSection(DialogSection section) = 0; |
107 | 108 |
| 109 // Returns the label text used to describe the section (i.e. Billing). |
108 virtual string16 LabelForSection(DialogSection section) const = 0; | 110 virtual string16 LabelForSection(DialogSection section) const = 0; |
109 virtual string16 SuggestionTextForSection(DialogSection section) = 0; | 111 |
110 virtual gfx::Image SuggestionIconForSection(DialogSection section) = 0; | 112 // Returns the current state of suggestions for |section|. |
| 113 virtual SuggestionState SuggestionStateForSection(DialogSection section) = 0; |
111 | 114 |
112 // Should be called when the user starts editing of the section. | 115 // Should be called when the user starts editing of the section. |
113 virtual void EditClickedForSection(DialogSection section) = 0; | 116 virtual void EditClickedForSection(DialogSection section) = 0; |
114 | 117 |
115 // Should be called when the user cancels editing of the section. | 118 // Should be called when the user cancels editing of the section. |
116 virtual void EditCancelledForSection(DialogSection section) = 0; | 119 virtual void EditCancelledForSection(DialogSection section) = 0; |
117 | 120 |
118 // Returns an icon to be displayed along with the input for the given type. | 121 // Returns an icon to be displayed along with the input for the given type. |
119 // |user_input| is the current text in the textfield. | 122 // |user_input| is the current text in the textfield. |
120 virtual gfx::Image IconForField(AutofillFieldType type, | 123 virtual gfx::Image IconForField(AutofillFieldType type, |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
161 | 164 |
162 // Marks the signin flow into Wallet complete. | 165 // Marks the signin flow into Wallet complete. |
163 virtual void EndSignInFlow() = 0; | 166 virtual void EndSignInFlow() = 0; |
164 | 167 |
165 // A legal document link has been clicked. | 168 // A legal document link has been clicked. |
166 virtual void LegalDocumentLinkClicked(const ui::Range& range) = 0; | 169 virtual void LegalDocumentLinkClicked(const ui::Range& range) = 0; |
167 | 170 |
168 // Called when the view has been cancelled. | 171 // Called when the view has been cancelled. |
169 virtual void OnCancel() = 0; | 172 virtual void OnCancel() = 0; |
170 | 173 |
171 // Called when the view has been accepted. | 174 // Called when the view has been accepted. This could be to submit the payment |
172 virtual void OnSubmit() = 0; | 175 // info or to handle a required action. |
| 176 virtual void OnAccept() = 0; |
173 | 177 |
174 // Returns the profile for this dialog. | 178 // Returns the profile for this dialog. |
175 virtual Profile* profile() = 0; | 179 virtual Profile* profile() = 0; |
176 | 180 |
177 // The web contents that prompted the dialog. | 181 // The web contents that prompted the dialog. |
178 virtual content::WebContents* web_contents() = 0; | 182 virtual content::WebContents* web_contents() = 0; |
179 | 183 |
180 protected: | 184 protected: |
181 virtual ~AutofillDialogController(); | 185 virtual ~AutofillDialogController(); |
182 }; | 186 }; |
183 | 187 |
184 } // namespace autofill | 188 } // namespace autofill |
185 | 189 |
186 #endif // CHROME_BROWSER_UI_AUTOFILL_AUTOFILL_DIALOG_CONTROLLER_H_ | 190 #endif // CHROME_BROWSER_UI_AUTOFILL_AUTOFILL_DIALOG_CONTROLLER_H_ |
OLD | NEW |