Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1104)

Side by Side Diff: chrome/browser/views/autofill_profiles_view_win.h

Issue 3265005: fix for [AutoFill credit cards] Editing last 4 digit card number is not save... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 10 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | chrome/browser/views/autofill_profiles_view_win.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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_VIEWS_AUTOFILL_PROFILES_VIEW_WIN_H_ 5 #ifndef CHROME_BROWSER_VIEWS_AUTOFILL_PROFILES_VIEW_WIN_H_
6 #define CHROME_BROWSER_VIEWS_AUTOFILL_PROFILES_VIEW_WIN_H_ 6 #define CHROME_BROWSER_VIEWS_AUTOFILL_PROFILES_VIEW_WIN_H_
7 #pragma once 7 #pragma once
8 8
9 #include <list> 9 #include <list>
10 #include <vector> 10 #include <vector>
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after
148 virtual void Observe(NotificationType type, 148 virtual void Observe(NotificationType type,
149 const NotificationSource& source, 149 const NotificationSource& source,
150 const NotificationDetails& details); 150 const NotificationDetails& details);
151 151
152 // Helper structure to keep info on one address or credit card. 152 // Helper structure to keep info on one address or credit card.
153 // Keeps info on one item in EditableSetViewContents. 153 // Keeps info on one item in EditableSetViewContents.
154 // Also keeps info on opened status. Allows to quickly add and delete items, 154 // Also keeps info on opened status. Allows to quickly add and delete items,
155 // and then rebuild EditableSetViewContents. 155 // and then rebuild EditableSetViewContents.
156 struct EditableSetInfo { 156 struct EditableSetInfo {
157 bool is_address; 157 bool is_address;
158 bool has_credit_card_number_been_edited;
159 // If |is_address| is true |address| has some data and |credit_card| 158 // If |is_address| is true |address| has some data and |credit_card|
160 // is empty, and vice versa 159 // is empty, and vice versa
161 AutoFillProfile address; 160 AutoFillProfile address;
162 CreditCard credit_card; 161 CreditCard credit_card;
163 162
164 explicit EditableSetInfo(const AutoFillProfile* input_address) 163 explicit EditableSetInfo(const AutoFillProfile* input_address)
165 : address(*input_address), 164 : address(*input_address),
166 is_address(true), 165 is_address(true) {
167 has_credit_card_number_been_edited(false) {
168 } 166 }
169 explicit EditableSetInfo(const CreditCard* input_credit_card) 167 explicit EditableSetInfo(const CreditCard* input_credit_card)
170 : credit_card(*input_credit_card), 168 : credit_card(*input_credit_card),
171 is_address(false), 169 is_address(false) {
172 has_credit_card_number_been_edited(false) {
173 } 170 }
174 }; 171 };
175 172
176 private: 173 private:
177 // Indicates that there was no item focused. After re-building of the lists 174 // Indicates that there was no item focused. After re-building of the lists
178 // first item will be focused. 175 // first item will be focused.
179 static const int kNoItemFocused = -1; 176 static const int kNoItemFocused = -1;
180 177
181 struct FocusedItem { 178 struct FocusedItem {
182 int group; 179 int group;
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after
322 // If |field| is a phone or fax ContentsChanged is passed to the 319 // If |field| is a phone or fax ContentsChanged is passed to the
323 // PhoneSubView, the appropriate fields in |temporary_info_| are updated and 320 // PhoneSubView, the appropriate fields in |temporary_info_| are updated and
324 // true is returned. Otherwise false is returned. 321 // true is returned. Otherwise false is returned.
325 bool UpdateContentsPhoneViews(TextFields field, 322 bool UpdateContentsPhoneViews(TextFields field,
326 views::Textfield* sender, 323 views::Textfield* sender,
327 const string16& new_contents); 324 const string16& new_contents);
328 325
329 views::Textfield* text_fields_[MAX_TEXT_FIELD]; 326 views::Textfield* text_fields_[MAX_TEXT_FIELD];
330 std::vector<EditableSetInfo>::iterator editable_fields_set_; 327 std::vector<EditableSetInfo>::iterator editable_fields_set_;
331 EditableSetInfo temporary_info_; 328 EditableSetInfo temporary_info_;
329 bool has_credit_card_number_been_edited_;
332 AutoFillProfilesView* observer_; 330 AutoFillProfilesView* observer_;
333 AddressComboBoxModel* billing_model_; 331 AddressComboBoxModel* billing_model_;
334 views::Combobox* combo_box_billing_; 332 views::Combobox* combo_box_billing_;
335 scoped_ptr<StringVectorComboboxModel> combo_box_model_month_; 333 scoped_ptr<StringVectorComboboxModel> combo_box_model_month_;
336 views::Combobox* combo_box_month_; 334 views::Combobox* combo_box_month_;
337 scoped_ptr<StringVectorComboboxModel> combo_box_model_year_; 335 scoped_ptr<StringVectorComboboxModel> combo_box_model_year_;
338 views::Combobox* combo_box_year_; 336 views::Combobox* combo_box_year_;
339 bool new_item_; 337 bool new_item_;
340 std::vector<PhoneSubView*> phone_sub_views_; 338 std::vector<PhoneSubView*> phone_sub_views_;
341 339
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after
472 scoped_ptr<ContentListTableModel> table_model_; 470 scoped_ptr<ContentListTableModel> table_model_;
473 views::FocusManager* focus_manager_; 471 views::FocusManager* focus_manager_;
474 bool child_dialog_opened_; 472 bool child_dialog_opened_;
475 473
476 static AutoFillProfilesView* instance_; 474 static AutoFillProfilesView* instance_;
477 475
478 DISALLOW_COPY_AND_ASSIGN(AutoFillProfilesView); 476 DISALLOW_COPY_AND_ASSIGN(AutoFillProfilesView);
479 }; 477 };
480 478
481 #endif // CHROME_BROWSER_VIEWS_AUTOFILL_PROFILES_VIEW_WIN_H_ 479 #endif // CHROME_BROWSER_VIEWS_AUTOFILL_PROFILES_VIEW_WIN_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/views/autofill_profiles_view_win.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698