| 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 |