| OLD | NEW |
| 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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/select_profile_dialog.h" | 5 #include "chrome/browser/views/select_profile_dialog.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include "app/l10n_util.h" | 9 #include "app/l10n_util.h" |
| 10 #include "base/logging.h" | 10 #include "base/logging.h" |
| 11 #include "base/string_util.h" | 11 #include "base/string_util.h" |
| 12 #include "chrome/browser/user_data_manager.h" | 12 #include "chrome/browser/user_data_manager.h" |
| 13 #include "chrome/browser/views/new_profile_dialog.h" | 13 #include "chrome/browser/views/new_profile_dialog.h" |
| 14 #include "grit/chromium_strings.h" | 14 #include "grit/chromium_strings.h" |
| 15 #include "grit/generated_resources.h" | 15 #include "grit/generated_resources.h" |
| 16 #include "grit/locale_settings.h" | 16 #include "grit/locale_settings.h" |
| 17 #include "views/controls/combo_box.h" | |
| 18 #include "views/controls/label.h" | 17 #include "views/controls/label.h" |
| 19 #include "views/controls/message_box_view.h" | 18 #include "views/controls/message_box_view.h" |
| 20 #include "views/grid_layout.h" | 19 #include "views/grid_layout.h" |
| 21 #include "views/standard_layout.h" | 20 #include "views/standard_layout.h" |
| 22 #include "views/view.h" | 21 #include "views/view.h" |
| 23 #include "views/window/window.h" | 22 #include "views/window/window.h" |
| 24 | 23 |
| 25 using views::ColumnSet; | 24 using views::ColumnSet; |
| 26 using views::GridLayout; | 25 using views::GridLayout; |
| 27 | 26 |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 77 | 76 |
| 78 views::View* SelectProfileDialog::GetInitiallyFocusedView() { | 77 views::View* SelectProfileDialog::GetInitiallyFocusedView() { |
| 79 return profile_combobox_; | 78 return profile_combobox_; |
| 80 } | 79 } |
| 81 | 80 |
| 82 std::wstring SelectProfileDialog::GetWindowTitle() const { | 81 std::wstring SelectProfileDialog::GetWindowTitle() const { |
| 83 return l10n_util::GetString(IDS_SELECT_PROFILE_DIALOG_TITLE); | 82 return l10n_util::GetString(IDS_SELECT_PROFILE_DIALOG_TITLE); |
| 84 } | 83 } |
| 85 | 84 |
| 86 bool SelectProfileDialog::Accept() { | 85 bool SelectProfileDialog::Accept() { |
| 87 int index = profile_combobox_->GetSelectedItem(); | 86 int index = profile_combobox_->selected_item(); |
| 88 if (index < 0) { | 87 if (index < 0) { |
| 89 NOTREACHED(); | 88 NOTREACHED(); |
| 90 return true; | 89 return true; |
| 91 } | 90 } |
| 92 | 91 |
| 93 // If the user has selected <New Profile> from the drop down, then show the | 92 // If the user has selected <New Profile> from the drop down, then show the |
| 94 // new profile dialog to the user. | 93 // new profile dialog to the user. |
| 95 if (index == profiles_.size()) { | 94 if (index == profiles_.size()) { |
| 96 NewProfileDialog::RunDialog(); | 95 NewProfileDialog::RunDialog(); |
| 97 return true; | 96 return true; |
| 98 } | 97 } |
| 99 | 98 |
| 100 std::wstring profile_name = profiles_[index]; | 99 std::wstring profile_name = profiles_[index]; |
| 101 UserDataManager::Get()->LaunchChromeForProfile(profile_name); | 100 UserDataManager::Get()->LaunchChromeForProfile(profile_name); |
| 102 return true; | 101 return true; |
| 103 } | 102 } |
| 104 | 103 |
| 105 bool SelectProfileDialog::Cancel() { | 104 bool SelectProfileDialog::Cancel() { |
| 106 return true; | 105 return true; |
| 107 } | 106 } |
| 108 | 107 |
| 109 views::View* SelectProfileDialog::GetContentsView() { | 108 views::View* SelectProfileDialog::GetContentsView() { |
| 110 return this; | 109 return this; |
| 111 } | 110 } |
| 112 | 111 |
| 113 int SelectProfileDialog::GetItemCount(views::ComboBox* source) { | 112 int SelectProfileDialog::GetItemCount(views::Combobox* source) { |
| 114 // Always show one more item in the combo box that allows the user to select | 113 // Always show one more item in the combo box that allows the user to select |
| 115 // <New Profile>. | 114 // <New Profile>. |
| 116 return profiles_.size() + 1; | 115 return profiles_.size() + 1; |
| 117 } | 116 } |
| 118 | 117 |
| 119 std::wstring SelectProfileDialog::GetItemAt(views::ComboBox* source, | 118 std::wstring SelectProfileDialog::GetItemAt(views::Combobox* source, |
| 120 int index) { | 119 int index) { |
| 121 DCHECK(source == profile_combobox_); | 120 DCHECK(source == profile_combobox_); |
| 122 DCHECK(index >= 0 && index <= static_cast<int>(profiles_.size())); | 121 DCHECK(index >= 0 && index <= static_cast<int>(profiles_.size())); |
| 123 // For the last item in the drop down, return the <New Profile> text, | 122 // For the last item in the drop down, return the <New Profile> text, |
| 124 // otherwise return the corresponding profile name from the vector. | 123 // otherwise return the corresponding profile name from the vector. |
| 125 return index == profiles_.size() ? | 124 return index == profiles_.size() ? |
| 126 l10n_util::GetString(IDS_SELECT_PROFILE_DIALOG_NEW_PROFILE_ENTRY) : | 125 l10n_util::GetString(IDS_SELECT_PROFILE_DIALOG_NEW_PROFILE_ENTRY) : |
| 127 profiles_[index]; | 126 profiles_[index]; |
| 128 } | 127 } |
| 129 | 128 |
| 130 void SelectProfileDialog::OnGetProfilesDone( | 129 void SelectProfileDialog::OnGetProfilesDone( |
| 131 const std::vector<std::wstring>& profiles) { | 130 const std::vector<std::wstring>& profiles) { |
| 132 PopulateProfilesComboBox(profiles); | 131 PopulateProfilesComboBox(profiles); |
| 133 } | 132 } |
| 134 | 133 |
| 135 void SelectProfileDialog::SetupControls() { | 134 void SelectProfileDialog::SetupControls() { |
| 136 // Adds all controls. | 135 // Adds all controls. |
| 137 select_profile_label_ = new views::Label( | 136 select_profile_label_ = new views::Label( |
| 138 l10n_util::GetString(IDS_SELECT_PROFILE_DIALOG_LABEL_TEXT)); | 137 l10n_util::GetString(IDS_SELECT_PROFILE_DIALOG_LABEL_TEXT)); |
| 139 profile_combobox_ = new views::ComboBox(this); | 138 profile_combobox_ = new views::Combobox(this); |
| 140 | 139 |
| 141 // Arranges controls by using GridLayout. | 140 // Arranges controls by using GridLayout. |
| 142 const int column_set_id = 0; | 141 const int column_set_id = 0; |
| 143 GridLayout* layout = CreatePanelGridLayout(this); | 142 GridLayout* layout = CreatePanelGridLayout(this); |
| 144 SetLayoutManager(layout); | 143 SetLayoutManager(layout); |
| 145 ColumnSet* column_set = layout->AddColumnSet(column_set_id); | 144 ColumnSet* column_set = layout->AddColumnSet(column_set_id); |
| 146 column_set->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0, | 145 column_set->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0, |
| 147 GridLayout::USE_PREF, 0, 0); | 146 GridLayout::USE_PREF, 0, 0); |
| 148 column_set->AddPaddingColumn(0, kRelatedControlHorizontalSpacing); | 147 column_set->AddPaddingColumn(0, kRelatedControlHorizontalSpacing); |
| 149 column_set->AddColumn(GridLayout::FILL, GridLayout::CENTER, 0, | 148 column_set->AddColumn(GridLayout::FILL, GridLayout::CENTER, 0, |
| 150 GridLayout::FIXED, 200, 0); | 149 GridLayout::FIXED, 200, 0); |
| 151 | 150 |
| 152 layout->StartRow(0, column_set_id); | 151 layout->StartRow(0, column_set_id); |
| 153 layout->AddView(select_profile_label_); | 152 layout->AddView(select_profile_label_); |
| 154 layout->AddPaddingRow(0, kRelatedControlVerticalSpacing); | 153 layout->AddPaddingRow(0, kRelatedControlVerticalSpacing); |
| 155 layout->StartRow(0, column_set_id); | 154 layout->StartRow(0, column_set_id); |
| 156 layout->AddView(profile_combobox_); | 155 layout->AddView(profile_combobox_); |
| 157 } | 156 } |
| OLD | NEW |