Chromium Code Reviews| Index: chrome/browser/ui/views/translate/translate_bubble_view.cc |
| diff --git a/chrome/browser/ui/views/translate/translate_bubble_view.cc b/chrome/browser/ui/views/translate/translate_bubble_view.cc |
| index b72959369e3761ce6b56130fe1514920109f715d..c943a769c675b2fb43399a7ed78e973d6fbda911 100644 |
| --- a/chrome/browser/ui/views/translate/translate_bubble_view.cc |
| +++ b/chrome/browser/ui/views/translate/translate_bubble_view.cc |
| @@ -27,6 +27,7 @@ |
| #include "grit/generated_resources.h" |
| #include "ui/base/l10n/l10n_util.h" |
| #include "ui/base/models/combobox_model.h" |
| +#include "ui/base/models/simple_combobox_model.h" |
| #include "ui/base/resource/resource_bundle.h" |
| #include "ui/views/controls/button/checkbox.h" |
| #include "ui/views/controls/button/label_button.h" |
| @@ -40,6 +41,12 @@ |
| namespace { |
| +enum DenialComboboxIndexes { |
|
sky
2014/06/18 16:57:19
Chrome style for enums is ALL_CAPS.
hajimehoshi
2014/06/19 03:51:23
Done.
|
| + kIndexNope = 0, |
| + kIndexNeverTranslateLanguage = 2, |
| + kIndexNeverTranslateSite = 4, |
| +}; |
| + |
| views::LabelButton* CreateLabelButton(views::ButtonListener* listener, |
| const base::string16& label, |
| int id) { |
| @@ -59,47 +66,6 @@ views::Link* CreateLink(views::LinkListener* listener, |
| return link; |
| } |
| -class TranslateDenialComboboxModel : public ui::ComboboxModel { |
| - public: |
| - enum { |
| - INDEX_NOPE = 0, |
| - INDEX_NEVER_TRANSLATE_LANGUAGE = 2, |
| - INDEX_NEVER_TRANSLATE_SITE = 4, |
| - }; |
| - |
| - explicit TranslateDenialComboboxModel( |
| - const base::string16& original_language_name) { |
| - items_.push_back(l10n_util::GetStringUTF16(IDS_TRANSLATE_BUBBLE_DENY)); |
| - items_.push_back(base::string16()); |
| - items_.push_back(l10n_util::GetStringFUTF16( |
| - IDS_TRANSLATE_BUBBLE_NEVER_TRANSLATE_LANG, |
| - original_language_name)); |
| - items_.push_back(base::string16()); |
| - items_.push_back(l10n_util::GetStringUTF16( |
| - IDS_TRANSLATE_BUBBLE_NEVER_TRANSLATE_SITE)); |
| - } |
| - virtual ~TranslateDenialComboboxModel() {} |
| - |
| - private: |
| - // Overridden from ui::ComboboxModel: |
| - virtual int GetItemCount() const OVERRIDE { |
| - return items_.size(); |
| - } |
| - virtual base::string16 GetItemAt(int index) OVERRIDE { |
| - return items_[index]; |
| - } |
| - virtual bool IsItemSeparatorAt(int index) OVERRIDE { |
| - return items_[index].empty(); |
| - } |
| - virtual int GetDefaultIndex() const OVERRIDE { |
| - return 0; |
| - } |
| - |
| - std::vector<base::string16> items_; |
| - |
| - DISALLOW_COPY_AND_ASSIGN(TranslateDenialComboboxModel); |
| -}; |
| - |
| } // namespace |
| // static |
| @@ -395,12 +361,12 @@ void TranslateBubbleView::HandleComboboxPerformAction( |
| denial_button_clicked_ = true; |
| int index = denial_combobox_->selected_index(); |
| switch (index) { |
| - case TranslateDenialComboboxModel::INDEX_NOPE: |
| + case kIndexNope: |
| break; |
| - case TranslateDenialComboboxModel::INDEX_NEVER_TRANSLATE_LANGUAGE: |
| + case kIndexNeverTranslateLanguage: |
| model_->SetNeverTranslateLanguage(true); |
| break; |
| - case TranslateDenialComboboxModel::INDEX_NEVER_TRANSLATE_SITE: |
| + case kIndexNeverTranslateSite: |
| model_->SetNeverTranslateSite(true); |
| break; |
| default: |
| @@ -446,8 +412,19 @@ views::View* TranslateBubbleView::CreateViewBeforeTranslate() { |
| base::string16 original_language_name = |
| model_->GetLanguageNameAt(model_->GetOriginalLanguageIndex()); |
| - denial_combobox_ = new views::Combobox( |
| - new TranslateDenialComboboxModel(original_language_name)); |
| + |
| + std::vector<base::string16> items; |
| + items.push_back(l10n_util::GetStringUTF16(IDS_TRANSLATE_BUBBLE_DENY)); |
| + items.push_back(base::string16()); |
| + items.push_back(l10n_util::GetStringFUTF16( |
| + IDS_TRANSLATE_BUBBLE_NEVER_TRANSLATE_LANG, |
| + original_language_name)); |
| + items.push_back(base::string16()); |
| + items.push_back(l10n_util::GetStringUTF16( |
| + IDS_TRANSLATE_BUBBLE_NEVER_TRANSLATE_SITE)); |
| + |
| + denial_combobox_model_.reset(new ui::SimpleComboboxModel(items)); |
| + denial_combobox_ = new views::Combobox(denial_combobox_model_.get()); |
| denial_combobox_->set_id(COMBOBOX_ID_DENIAL); |
| denial_combobox_->set_listener(this); |
| denial_combobox_->SetStyle(views::Combobox::STYLE_ACTION); |