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

Side by Side Diff: chrome/browser/chromeos/options/language_config_view.cc

Issue 1142005: Mocks for all libcros elements (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 10 years, 9 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
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 #include "chrome/browser/chromeos/options/language_config_view.h" 5 #include "chrome/browser/chromeos/options/language_config_view.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <utility> 8 #include <utility>
9 #include <vector> 9 #include <vector>
10 10
11 #include "app/l10n_util.h" 11 #include "app/l10n_util.h"
12 #include "base/utf_string_conversions.h" 12 #include "base/utf_string_conversions.h"
13 #include "chrome/browser/browser_process.h" 13 #include "chrome/browser/browser_process.h"
14 #include "chrome/browser/chromeos/cros/cros_library.h"
14 #include "chrome/browser/chromeos/cros/language_library.h" 15 #include "chrome/browser/chromeos/cros/language_library.h"
15 #include "chrome/browser/chromeos/options/language_hangul_config_view.h" 16 #include "chrome/browser/chromeos/options/language_hangul_config_view.h"
16 #include "chrome/browser/language_combobox_model.h" 17 #include "chrome/browser/language_combobox_model.h"
17 #include "gfx/font.h" 18 #include "gfx/font.h"
18 #include "grit/generated_resources.h" 19 #include "grit/generated_resources.h"
19 #include "grit/locale_settings.h" 20 #include "grit/locale_settings.h"
20 #include "views/controls/combobox/combobox.h" 21 #include "views/controls/combobox/combobox.h"
21 #include "views/controls/label.h" 22 #include "views/controls/label.h"
22 #include "views/fill_layout.h" 23 #include "views/fill_layout.h"
23 #include "views/grid_layout.h" 24 #include "views/grid_layout.h"
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
81 language_combobox_->SetSelectedItem(selected_index_); 82 language_combobox_->SetSelectedItem(selected_index_);
82 language_combobox_->set_listener(this); 83 language_combobox_->set_listener(this);
83 SetLayoutManager(new views::FillLayout); 84 SetLayoutManager(new views::FillLayout);
84 AddChildView(language_combobox_); 85 AddChildView(language_combobox_);
85 } 86 }
86 87
87 // Creates the language combobox model from the supported languages. 88 // Creates the language combobox model from the supported languages.
88 LanguageComboboxModel* CreateLanguageComboboxModel() { 89 LanguageComboboxModel* CreateLanguageComboboxModel() {
89 // GetSupportedLanguages() never return NULL. 90 // GetSupportedLanguages() never return NULL.
90 scoped_ptr<InputLanguageList> supported_language_list( 91 scoped_ptr<InputLanguageList> supported_language_list(
91 LanguageLibrary::Get()->GetSupportedLanguages()); 92 CrosLibrary::Get()->GetLanguageLibrary()->GetSupportedLanguages());
92 93
93 std::set<std::string> language_set; 94 std::set<std::string> language_set;
94 for (size_t i = 0; i < supported_language_list->size(); ++i) { 95 for (size_t i = 0; i < supported_language_list->size(); ++i) {
95 const InputLanguage& language = supported_language_list->at(i); 96 const InputLanguage& language = supported_language_list->at(i);
96 language_set.insert(language.language_code); 97 language_set.insert(language.language_code);
97 } 98 }
98 const std::vector<std::string> language_codes(language_set.begin(), 99 const std::vector<std::string> language_codes(language_set.begin(),
99 language_set.end()); 100 language_set.end());
100 // LanguageComboboxModel sorts languages by their display names. 101 // LanguageComboboxModel sorts languages by their display names.
101 return new LanguageComboboxModel(NULL, language_codes); 102 return new LanguageComboboxModel(NULL, language_codes);
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
202 203
203 // Add the title label. 204 // Add the title label.
204 layout->StartRow(0, kTitleColumnSetId); 205 layout->StartRow(0, kTitleColumnSetId);
205 layout->AddView(title_label); 206 layout->AddView(title_label);
206 layout->AddPaddingRow(0, kRelatedControlVerticalSpacing); 207 layout->AddPaddingRow(0, kRelatedControlVerticalSpacing);
207 208
208 // Add input method names and configuration buttons. 209 // Add input method names and configuration buttons.
209 // TODO(satorux): Implement ways to activate/deactivate individual input 210 // TODO(satorux): Implement ways to activate/deactivate individual input
210 // methods. For instance a language can have multiple input methods. 211 // methods. For instance a language can have multiple input methods.
211 scoped_ptr<InputLanguageList> supported_language_list( 212 scoped_ptr<InputLanguageList> supported_language_list(
212 LanguageLibrary::Get()->GetSupportedLanguages()); 213 CrosLibrary::Get()->GetLanguageLibrary()->GetSupportedLanguages());
213 214
214 for (size_t i = 0; i < supported_language_list->size(); ++i) { 215 for (size_t i = 0; i < supported_language_list->size(); ++i) {
215 const InputLanguage& language = supported_language_list->at(i); 216 const InputLanguage& language = supported_language_list->at(i);
216 if (language.language_code == language_code) { 217 if (language.language_code == language_code) {
217 layout->StartRow(0, kDoubleColumnSetId); 218 layout->StartRow(0, kDoubleColumnSetId);
218 layout->AddView(new views::Label(UTF8ToWide(language.display_name))); 219 layout->AddView(new views::Label(UTF8ToWide(language.display_name)));
219 // TODO(satorux): For now, we special case the hangul input 220 // TODO(satorux): For now, we special case the hangul input
220 // method. We'll generalize this. 221 // method. We'll generalize this.
221 if (language_code == "ko") { 222 if (language_code == "ko") {
222 hangul_configure_button_ = new views::NativeButton( 223 hangul_configure_button_ = new views::NativeButton(
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
308 root_layout->AddView(right_container_); 309 root_layout->AddView(right_container_);
309 310
310 // Select the first row in the language table. 311 // Select the first row in the language table.
311 // There should be at least one language in the table. 312 // There should be at least one language in the table.
312 CHECK(!preferred_language_codes_.empty()); 313 CHECK(!preferred_language_codes_.empty());
313 preferred_language_table_->SelectRow(0); 314 preferred_language_table_->SelectRow(0);
314 } 315 }
315 316
316 void LanguageConfigView::InitPreferredLanguageCodes() { 317 void LanguageConfigView::InitPreferredLanguageCodes() {
317 scoped_ptr<InputLanguageList> active_language_list( 318 scoped_ptr<InputLanguageList> active_language_list(
318 LanguageLibrary::Get()->GetActiveLanguages()); 319 CrosLibrary::Get()->GetLanguageLibrary()->GetActiveLanguages());
319 320
320 for (size_t i = 0; i < active_language_list->size(); ++i) { 321 for (size_t i = 0; i < active_language_list->size(); ++i) {
321 const InputLanguage& language = active_language_list->at(i); 322 const InputLanguage& language = active_language_list->at(i);
322 // Add the language if any input language is activated. 323 // Add the language if any input language is activated.
323 if (std::find(preferred_language_codes_.begin(), 324 if (std::find(preferred_language_codes_.begin(),
324 preferred_language_codes_.end(), 325 preferred_language_codes_.end(),
325 language.language_code) == 326 language.language_code) ==
326 preferred_language_codes_.end()) { 327 preferred_language_codes_.end()) {
327 preferred_language_codes_.push_back(language.language_code); 328 preferred_language_codes_.push_back(language.language_code);
328 } 329 }
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
388 preferred_language_codes_.end(), 389 preferred_language_codes_.end(),
389 language_code) == preferred_language_codes_.end()) { 390 language_code) == preferred_language_codes_.end()) {
390 // Append the language to the list of language codes. 391 // Append the language to the list of language codes.
391 preferred_language_codes_.push_back(language_code); 392 preferred_language_codes_.push_back(language_code);
392 // Update the language table accordingly. 393 // Update the language table accordingly.
393 preferred_language_table_->OnItemsAdded(RowCount() - 1, 1); 394 preferred_language_table_->OnItemsAdded(RowCount() - 1, 1);
394 preferred_language_table_->SelectRow(RowCount() - 1); 395 preferred_language_table_->SelectRow(RowCount() - 1);
395 396
396 // Activate the first input language associated with the language. 397 // Activate the first input language associated with the language.
397 scoped_ptr<InputLanguageList> supported_language_list( 398 scoped_ptr<InputLanguageList> supported_language_list(
398 LanguageLibrary::Get()->GetSupportedLanguages()); 399 CrosLibrary::Get()->GetLanguageLibrary()->GetSupportedLanguages());
399 for (size_t i = 0; i < supported_language_list->size(); ++i) { 400 for (size_t i = 0; i < supported_language_list->size(); ++i) {
400 const InputLanguage& language = supported_language_list->at(i); 401 const InputLanguage& language = supported_language_list->at(i);
401 if (language.language_code == language_code) { 402 if (language.language_code == language_code) {
402 LanguageLibrary::Get()->ActivateLanguage(language.category, 403 CrosLibrary::Get()->GetLanguageLibrary()->ActivateLanguage(
403 language.id); 404 language.category, language.id);
404 break; 405 break;
405 } 406 }
406 } 407 }
407 } 408 }
408 } 409 }
409 410
410 void LanguageConfigView::DeactivateInputLanguagesFor( 411 void LanguageConfigView::DeactivateInputLanguagesFor(
411 const std::string& language_code) { 412 const std::string& language_code) {
412 scoped_ptr<InputLanguageList> active_language_list( 413 scoped_ptr<InputLanguageList> active_language_list(
413 LanguageLibrary::Get()->GetActiveLanguages()); 414 CrosLibrary::Get()->GetLanguageLibrary()->GetActiveLanguages());
414 415
415 for (size_t i = 0; i < active_language_list->size(); ++i) { 416 for (size_t i = 0; i < active_language_list->size(); ++i) {
416 const InputLanguage& language = active_language_list->at(i); 417 const InputLanguage& language = active_language_list->at(i);
417 if (language.language_code == language_code) { 418 if (language.language_code == language_code) {
418 LanguageLibrary::Get()->DeactivateLanguage(language.category, 419 CrosLibrary::Get()->GetLanguageLibrary()->DeactivateLanguage(
419 language.id); 420 language.category, language.id);
420 } 421 }
421 } 422 }
422 // Switch back to the US English. 423 // Switch back to the US English.
423 LanguageLibrary::Get()->ChangeLanguage( 424 CrosLibrary::Get()->GetLanguageLibrary()->ChangeLanguage(
424 chromeos::LANGUAGE_CATEGORY_XKB, "USA"); 425 chromeos::LANGUAGE_CATEGORY_XKB, "USA");
425 } 426 }
426 427
427 } // namespace chromeos 428 } // namespace chromeos
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/options/ip_config_view.cc ('k') | chrome/browser/chromeos/options/language_hangul_config_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698