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

Side by Side Diff: chrome/browser/views/bug_report_view.cc

Issue 113991: Make Combobox portable (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 11 years, 6 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 | « chrome/browser/views/bug_report_view.h ('k') | chrome/browser/views/clear_browsing_data.h » ('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) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2009 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 #include "chrome/browser/views/bug_report_view.h" 5 #include "chrome/browser/views/bug_report_view.h"
6 6
7 #include <iostream> 7 #include <iostream>
8 #include <fstream> 8 #include <fstream>
9 9
10 #include "app/l10n_util.h" 10 #include "app/l10n_util.h"
(...skipping 27 matching lines...) Expand all
38 // Report a bug data version 38 // Report a bug data version
39 static const int kBugReportVersion = 1; 39 static const int kBugReportVersion = 1;
40 40
41 // Number of lines description field can display at one time. 41 // Number of lines description field can display at one time.
42 static const int kDescriptionLines = 5; 42 static const int kDescriptionLines = 5;
43 43
44 // Google's phishing reporting URL. 44 // Google's phishing reporting URL.
45 static const char kReportPhishingUrl[] = 45 static const char kReportPhishingUrl[] =
46 "http://www.google.com/safebrowsing/report_phish/"; 46 "http://www.google.com/safebrowsing/report_phish/";
47 47
48 class BugReportComboBoxModel : public views::ComboBox::Model { 48 class BugReportComboBoxModel : public views::Combobox::Model {
49 public: 49 public:
50 BugReportComboBoxModel() {} 50 BugReportComboBoxModel() {}
51 51
52 enum BugType { 52 enum BugType {
53 PAGE_WONT_LOAD = 0, 53 PAGE_WONT_LOAD = 0,
54 PAGE_LOOKS_ODD, 54 PAGE_LOOKS_ODD,
55 PHISHING_PAGE, 55 PHISHING_PAGE,
56 CANT_SIGN_IN, 56 CANT_SIGN_IN,
57 CHROME_MISBEHAVES, 57 CHROME_MISBEHAVES,
58 SOMETHING_MISSING, 58 SOMETHING_MISSING,
59 BROWSER_CRASH, 59 BROWSER_CRASH,
60 OTHER_PROBLEM 60 OTHER_PROBLEM
61 }; 61 };
62 62
63 // views::ComboBox::Model interface. 63 // views::Combobox::Model interface.
64 virtual int GetItemCount(views::ComboBox* source) { 64 virtual int GetItemCount(views::Combobox* source) {
65 return OTHER_PROBLEM + 1; 65 return OTHER_PROBLEM + 1;
66 } 66 }
67 67
68 virtual std::wstring GetItemAt(views::ComboBox* source, int index) { 68 virtual std::wstring GetItemAt(views::Combobox* source, int index) {
69 return GetItemAtIndex(index); 69 return GetItemAtIndex(index);
70 } 70 }
71 71
72 static std::wstring GetItemAtIndex(int index) { 72 static std::wstring GetItemAtIndex(int index) {
73 switch (index) { 73 switch (index) {
74 case PAGE_WONT_LOAD: 74 case PAGE_WONT_LOAD:
75 return l10n_util::GetString(IDS_BUGREPORT_PAGE_WONT_LOAD); 75 return l10n_util::GetString(IDS_BUGREPORT_PAGE_WONT_LOAD);
76 case PAGE_LOOKS_ODD: 76 case PAGE_LOOKS_ODD:
77 return l10n_util::GetString(IDS_BUGREPORT_PAGE_LOOKS_ODD); 77 return l10n_util::GetString(IDS_BUGREPORT_PAGE_LOOKS_ODD);
78 case PHISHING_PAGE: 78 case PHISHING_PAGE:
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
184 184
185 BugReportView::~BugReportView() { 185 BugReportView::~BugReportView() {
186 } 186 }
187 187
188 void BugReportView::SetupControl() { 188 void BugReportView::SetupControl() {
189 bug_type_model_.reset(new BugReportComboBoxModel); 189 bug_type_model_.reset(new BugReportComboBoxModel);
190 190
191 // Adds all controls. 191 // Adds all controls.
192 bug_type_label_ = new views::Label( 192 bug_type_label_ = new views::Label(
193 l10n_util::GetString(IDS_BUGREPORT_BUG_TYPE)); 193 l10n_util::GetString(IDS_BUGREPORT_BUG_TYPE));
194 bug_type_combo_ = new views::ComboBox(bug_type_model_.get()); 194 bug_type_combo_ = new views::Combobox(bug_type_model_.get());
195 bug_type_combo_->SetListener(this); 195 bug_type_combo_->set_listener(this);
196 196
197 page_title_label_ = new views::Label( 197 page_title_label_ = new views::Label(
198 l10n_util::GetString(IDS_BUGREPORT_REPORT_PAGE_TITLE)); 198 l10n_util::GetString(IDS_BUGREPORT_REPORT_PAGE_TITLE));
199 page_title_text_ = new views::Label(UTF16ToWideHack(tab_->GetTitle())); 199 page_title_text_ = new views::Label(UTF16ToWideHack(tab_->GetTitle()));
200 page_url_label_ = new views::Label( 200 page_url_label_ = new views::Label(
201 l10n_util::GetString(IDS_BUGREPORT_REPORT_URL_LABEL)); 201 l10n_util::GetString(IDS_BUGREPORT_REPORT_URL_LABEL));
202 // page_url_text_'s text (if any) is filled in after dialog creation 202 // page_url_text_'s text (if any) is filled in after dialog creation
203 page_url_text_ = new views::Textfield; 203 page_url_text_ = new views::Textfield;
204 page_url_text_->SetController(this); 204 page_url_text_->SetController(this);
205 205
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
265 layout->AddView(include_page_image_checkbox_); 265 layout->AddView(include_page_image_checkbox_);
266 layout->AddPaddingRow(0, kUnrelatedControlVerticalSpacing); 266 layout->AddPaddingRow(0, kUnrelatedControlVerticalSpacing);
267 } 267 }
268 268
269 gfx::Size BugReportView::GetPreferredSize() { 269 gfx::Size BugReportView::GetPreferredSize() {
270 return gfx::Size(views::Window::GetLocalizedContentsSize( 270 return gfx::Size(views::Window::GetLocalizedContentsSize(
271 IDS_BUGREPORT_DIALOG_WIDTH_CHARS, 271 IDS_BUGREPORT_DIALOG_WIDTH_CHARS,
272 IDS_BUGREPORT_DIALOG_HEIGHT_LINES)); 272 IDS_BUGREPORT_DIALOG_HEIGHT_LINES));
273 } 273 }
274 274
275 void BugReportView::ItemChanged(views::ComboBox* combo_box, 275 void BugReportView::ItemChanged(views::Combobox* combobox,
276 int prev_index, 276 int prev_index,
277 int new_index) { 277 int new_index) {
278 if (new_index == prev_index) 278 if (new_index == prev_index)
279 return; 279 return;
280 280
281 problem_type_ = new_index; 281 problem_type_ = new_index;
282 bool is_phishing_report = new_index == BugReportComboBoxModel::PHISHING_PAGE; 282 bool is_phishing_report = new_index == BugReportComboBoxModel::PHISHING_PAGE;
283 283
284 description_text_->SetEnabled(!is_phishing_report); 284 description_text_->SetEnabled(!is_phishing_report);
285 description_text_->SetReadOnly(is_phishing_report); 285 description_text_->SetReadOnly(is_phishing_report);
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after
519 fetcher->Start(); 519 fetcher->Start();
520 } 520 }
521 521
522 void BugReportView::ReportPhishing() { 522 void BugReportView::ReportPhishing() {
523 tab_->controller().LoadURL( 523 tab_->controller().LoadURL(
524 safe_browsing_util::GeneratePhishingReportUrl( 524 safe_browsing_util::GeneratePhishingReportUrl(
525 kReportPhishingUrl, WideToUTF8(page_url_text_->text())), 525 kReportPhishingUrl, WideToUTF8(page_url_text_->text())),
526 GURL(), 526 GURL(),
527 PageTransition::LINK); 527 PageTransition::LINK);
528 } 528 }
OLDNEW
« no previous file with comments | « chrome/browser/views/bug_report_view.h ('k') | chrome/browser/views/clear_browsing_data.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698