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_VIEWS_AUTOFILL_AUTOFILL_DIALOG_VIEWS_H_ | 5 #ifndef CHROME_BROWSER_UI_VIEWS_AUTOFILL_AUTOFILL_DIALOG_VIEWS_H_ |
6 #define CHROME_BROWSER_UI_VIEWS_AUTOFILL_AUTOFILL_DIALOG_VIEWS_H_ | 6 #define CHROME_BROWSER_UI_VIEWS_AUTOFILL_AUTOFILL_DIALOG_VIEWS_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 | 9 |
10 #include "base/memory/weak_ptr.h" | 10 #include "base/memory/weak_ptr.h" |
(...skipping 270 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
281 }; | 281 }; |
282 | 282 |
283 // A view that contains a suggestion (such as a known address) and a link to | 283 // A view that contains a suggestion (such as a known address) and a link to |
284 // edit the suggestion. | 284 // edit the suggestion. |
285 class SuggestionView : public views::View { | 285 class SuggestionView : public views::View { |
286 public: | 286 public: |
287 SuggestionView(const string16& edit_label, | 287 SuggestionView(const string16& edit_label, |
288 AutofillDialogViews* autofill_dialog); | 288 AutofillDialogViews* autofill_dialog); |
289 virtual ~SuggestionView(); | 289 virtual ~SuggestionView(); |
290 | 290 |
| 291 // Whether this section is editable or not. |
| 292 void SetEditable(bool editable); |
| 293 |
291 // Sets the display text of the suggestion. | 294 // Sets the display text of the suggestion. |
292 void SetSuggestionText(const string16& text); | 295 void SetSuggestionText(const string16& text); |
293 | 296 |
294 // Sets the icon which should be displayed ahead of the text. | 297 // Sets the icon which should be displayed ahead of the text. |
295 void SetSuggestionIcon(const gfx::Image& image); | 298 void SetSuggestionIcon(const gfx::Image& image); |
296 | 299 |
297 // Shows an auxiliary textfield to the right of the suggestion icon and | 300 // Shows an auxiliary textfield to the right of the suggestion icon and |
298 // text. This is currently only used to show a CVC field for the CC section. | 301 // text. This is currently only used to show a CVC field for the CC section. |
299 void ShowTextfield(const string16& placeholder_text, | 302 void ShowTextfield(const string16& placeholder_text, |
300 const gfx::ImageSkia& icon); | 303 const gfx::ImageSkia& icon); |
301 | 304 |
302 DecoratedTextfield* decorated_textfield() { return decorated_; } | 305 DecoratedTextfield* decorated_textfield() { return decorated_; } |
303 | 306 |
304 private: | 307 private: |
305 // The label that holds the suggestion description text. | 308 // The label that holds the suggestion description text. |
306 views::Label* label_; | 309 views::Label* label_; |
307 // The second (and greater) line of text that describes the suggestion. | 310 // The second (and greater) line of text that describes the suggestion. |
308 views::Label* label_line_2_; | 311 views::Label* label_line_2_; |
309 // The icon that comes just before |label_|. | 312 // The icon that comes just before |label_|. |
310 views::ImageView* icon_; | 313 views::ImageView* icon_; |
311 // A view to contain |label_| and |icon_|. | 314 // A view to contain |label_| and |icon_|. |
312 views::View* label_container_; | 315 views::View* label_container_; |
313 // The input set by ShowTextfield. | 316 // The input set by ShowTextfield. |
314 DecoratedTextfield* decorated_; | 317 DecoratedTextfield* decorated_; |
| 318 // An "Edit" link that flips to editable inputs rather than suggestion text. |
| 319 views::Link* edit_link_; |
315 | 320 |
316 DISALLOW_COPY_AND_ASSIGN(SuggestionView); | 321 DISALLOW_COPY_AND_ASSIGN(SuggestionView); |
317 }; | 322 }; |
318 | 323 |
319 // A convenience struct for holding pointers to views within each detail | 324 // A convenience struct for holding pointers to views within each detail |
320 // section. None of the member pointers are owned. | 325 // section. None of the member pointers are owned. |
321 struct DetailsGroup { | 326 struct DetailsGroup { |
322 explicit DetailsGroup(DialogSection section); | 327 explicit DetailsGroup(DialogSection section); |
323 ~DetailsGroup(); | 328 ~DetailsGroup(); |
324 | 329 |
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
478 | 483 |
479 // The focus manager for |window_|. | 484 // The focus manager for |window_|. |
480 views::FocusManager* focus_manager_; | 485 views::FocusManager* focus_manager_; |
481 | 486 |
482 DISALLOW_COPY_AND_ASSIGN(AutofillDialogViews); | 487 DISALLOW_COPY_AND_ASSIGN(AutofillDialogViews); |
483 }; | 488 }; |
484 | 489 |
485 } // namespace autofill | 490 } // namespace autofill |
486 | 491 |
487 #endif // CHROME_BROWSER_UI_VIEWS_AUTOFILL_AUTOFILL_DIALOG_VIEWS_H_ | 492 #endif // CHROME_BROWSER_UI_VIEWS_AUTOFILL_AUTOFILL_DIALOG_VIEWS_H_ |
OLD | NEW |