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