diff options
author | yusukes@chromium.org <yusukes@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-03-16 14:50:21 +0000 |
---|---|---|
committer | yusukes@chromium.org <yusukes@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-03-16 14:50:21 +0000 |
commit | e0279dd40ae1deec7646199ccbc6428b90eaeb32 (patch) | |
tree | 9c1b82ac2ee7eb7906c52afe8e54ab01db6747a1 /chrome/browser/chromeos | |
parent | 92c4a81f28a463cd71d782f7ae9b768c91e59d10 (diff) | |
download | chromium_src-e0279dd40ae1deec7646199ccbc6428b90eaeb32.zip chromium_src-e0279dd40ae1deec7646199ccbc6428b90eaeb32.tar.gz chromium_src-e0279dd40ae1deec7646199ccbc6428b90eaeb32.tar.bz2 |
Handle all checkboxes. Currently, the ButtonPressed() handler ignores checkboxes other than the last one.
BUG=none
TEST=open the configuration dialog, click all checkboxes, verify that all IMEs are activated.
Review URL: http://codereview.chromium.org/1024002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41720 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/chromeos')
-rw-r--r-- | chrome/browser/chromeos/options/language_config_view.cc | 22 | ||||
-rw-r--r-- | chrome/browser/chromeos/options/language_config_view.h | 3 |
2 files changed, 14 insertions, 11 deletions
diff --git a/chrome/browser/chromeos/options/language_config_view.cc b/chrome/browser/chromeos/options/language_config_view.cc index 88419da..2aea165 100644 --- a/chrome/browser/chromeos/options/language_config_view.cc +++ b/chrome/browser/chromeos/options/language_config_view.cc @@ -38,11 +38,10 @@ class LanguageCheckbox : public views::Checkbox { DISALLOW_COPY_AND_ASSIGN(LanguageCheckbox); }; -LanguageConfigView::LanguageConfigView() : - contents_(NULL), - hangul_configure_button_(NULL), - language_checkbox_(NULL), - preferred_language_table_(NULL) { +LanguageConfigView::LanguageConfigView() + : contents_(NULL), + hangul_configure_button_(NULL), + preferred_language_table_(NULL) { } LanguageConfigView::~LanguageConfigView() { @@ -55,7 +54,9 @@ void LanguageConfigView::ButtonPressed( NULL, gfx::Rect(), new LanguageHangulConfigView()); window->SetIsAlwaysOnTop(true); window->Show(); - } else if (sender == static_cast<views::Button*>(language_checkbox_)) { + } else if (std::find(language_checkboxes_.begin(), + language_checkboxes_.end(), + sender) != language_checkboxes_.end()) { LanguageCheckbox* checkbox = static_cast<LanguageCheckbox*>(sender); const InputLanguage& language = checkbox->language(); // Check if the checkbox is now being checked. @@ -207,16 +208,17 @@ void LanguageConfigView::Init() { active_language_list->end(), language) != active_language_list->end()); // Create a checkbox. - language_checkbox_ = new LanguageCheckbox(language); - language_checkbox_->SetChecked(language_is_active); - language_checkbox_->set_listener(this); + LanguageCheckbox* language_checkbox = new LanguageCheckbox(language); + language_checkbox->SetChecked(language_is_active); + language_checkbox->set_listener(this); + language_checkboxes_.push_back(language_checkbox); // We use two columns. Start a column if the counter is an even number. if (i % 2 == 0) { layout->StartRow(0, kDoubleColumnSetId); } // Add the checkbox to the layout manager. - layout->AddView(language_checkbox_); + layout->AddView(language_checkbox); } // Add the configure button for the Hangul IME. diff --git a/chrome/browser/chromeos/options/language_config_view.h b/chrome/browser/chromeos/options/language_config_view.h index 957b71a6..84388d2 100644 --- a/chrome/browser/chromeos/options/language_config_view.h +++ b/chrome/browser/chromeos/options/language_config_view.h @@ -6,6 +6,7 @@ #define CHROME_BROWSER_CHROMEOS_OPTIONS_LANGUAGE_CONFIG_VIEW_H_ #include <string> +#include <vector> #include "app/table_model.h" #include "chrome/browser/chromeos/cros/language_library.h" @@ -64,7 +65,7 @@ class LanguageConfigView : public TableModel, views::View* contents_; views::NativeButton* hangul_configure_button_; - LanguageCheckbox* language_checkbox_; + std::vector<views::Button*> language_checkboxes_; // A table for preferred languages and its model. views::TableView2* preferred_language_table_; |