summaryrefslogtreecommitdiffstats
path: root/chrome/browser/views/infobars/after_translate_infobar.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/views/infobars/after_translate_infobar.cc')
-rw-r--r--chrome/browser/views/infobars/after_translate_infobar.cc169
1 files changed, 0 insertions, 169 deletions
diff --git a/chrome/browser/views/infobars/after_translate_infobar.cc b/chrome/browser/views/infobars/after_translate_infobar.cc
deleted file mode 100644
index 63b6c8a..0000000
--- a/chrome/browser/views/infobars/after_translate_infobar.cc
+++ /dev/null
@@ -1,169 +0,0 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "chrome/browser/views/infobars/after_translate_infobar.h"
-
-#include "app/l10n_util.h"
-#include "base/utf_string_conversions.h"
-#include "chrome/browser/translate/options_menu_model.h"
-#include "chrome/browser/translate/translate_infobar_delegate.h"
-#include "chrome/browser/views/infobars/infobar_button_border.h"
-#include "chrome/browser/views/infobars/infobar_text_button.h"
-#include "grit/app_resources.h"
-#include "grit/generated_resources.h"
-#include "views/controls/button/menu_button.h"
-#include "views/controls/button/text_button.h"
-#include "views/controls/image_view.h"
-#include "views/controls/label.h"
-#include "views/controls/menu/menu_2.h"
-
-AfterTranslateInfoBar::AfterTranslateInfoBar(
- TranslateInfoBarDelegate* delegate)
- : TranslateInfoBarBase(delegate),
- original_language_menu_model_(delegate, LanguagesMenuModel::ORIGINAL),
- target_language_menu_model_(delegate, LanguagesMenuModel::TARGET),
- options_menu_model_(delegate),
- swapped_language_buttons_(false) {
- std::vector<string16> strings;
- TranslateInfoBarDelegate::GetAfterTranslateStrings(
- &strings, &swapped_language_buttons_);
- DCHECK(strings.size() == 3U);
-
- label_1_ = CreateLabel(strings[0]);
- AddChildView(label_1_);
-
- label_2_ = CreateLabel(strings[1]);
- AddChildView(label_2_);
-
- label_3_ = CreateLabel(strings[2]);
- AddChildView(label_3_);
-
- original_language_menu_button_ = CreateMenuButton(string16(), true, this);
- AddChildView(original_language_menu_button_);
-
- target_language_menu_button_ = CreateMenuButton(string16(), true, this);
- AddChildView(target_language_menu_button_);
-
- options_menu_button_ =
- CreateMenuButton(l10n_util::GetStringUTF16(IDS_TRANSLATE_INFOBAR_OPTIONS),
- false, this);
- AddChildView(options_menu_button_);
-
- revert_button_ = InfoBarTextButton::Create(this,
- l10n_util::GetStringUTF16(IDS_TRANSLATE_INFOBAR_REVERT));
- AddChildView(revert_button_);
-
- UpdateLanguageButtonText(LanguagesMenuModel::ORIGINAL);
- UpdateLanguageButtonText(LanguagesMenuModel::TARGET);
-}
-
-AfterTranslateInfoBar::~AfterTranslateInfoBar() {
-}
-
-// Overridden from views::View:
-void AfterTranslateInfoBar::Layout() {
- // Layout the icon and close button.
- TranslateInfoBarBase::Layout();
-
- // Layout the options menu button on right of bar.
- int available_width = InfoBar::GetAvailableWidth();
- gfx::Size pref_size = options_menu_button_->GetPreferredSize();
- options_menu_button_->SetBounds(available_width - pref_size.width(),
- OffsetY(this, pref_size), pref_size.width(), pref_size.height());
-
- views::MenuButton* left_button = swapped_language_buttons_ ?
- target_language_menu_button_ : original_language_menu_button_;
- views::MenuButton* right_button = swapped_language_buttons_ ?
- original_language_menu_button_ : target_language_menu_button_;
-
- pref_size = label_1_->GetPreferredSize();
- label_1_->SetBounds(icon_->bounds().right() + InfoBar::kIconLabelSpacing,
- InfoBar::OffsetY(this, pref_size), pref_size.width(), pref_size.height());
-
- pref_size = left_button->GetPreferredSize();
- left_button->SetBounds(label_1_->bounds().right() +
- InfoBar::kButtonInLabelSpacing, OffsetY(this, pref_size),
- pref_size.width(), pref_size.height());
-
- pref_size = label_2_->GetPreferredSize();
- label_2_->SetBounds(left_button->bounds().right() +
- InfoBar::kButtonInLabelSpacing, InfoBar::OffsetY(this, pref_size),
- pref_size.width(), pref_size.height());
-
- pref_size = right_button->GetPreferredSize();
- right_button->SetBounds(label_2_->bounds().right() +
- InfoBar::kButtonInLabelSpacing, OffsetY(this, pref_size),
- pref_size.width(), pref_size.height());
-
- pref_size = label_3_->GetPreferredSize();
- label_3_->SetBounds(right_button->bounds().right() +
- InfoBar::kButtonInLabelSpacing, InfoBar::OffsetY(this, pref_size),
- pref_size.width(), pref_size.height());
-
- pref_size = revert_button_->GetPreferredSize();
- revert_button_->SetBounds(label_3_->bounds().right() +
- InfoBar::kButtonInLabelSpacing, InfoBar::OffsetY(this, pref_size),
- pref_size.width(), pref_size.height());
-}
-
-void AfterTranslateInfoBar::OriginalLanguageChanged() {
- UpdateLanguageButtonText(LanguagesMenuModel::ORIGINAL);
-}
-
-void AfterTranslateInfoBar::TargetLanguageChanged() {
- UpdateLanguageButtonText(LanguagesMenuModel::TARGET);
-}
-
-void AfterTranslateInfoBar::ButtonPressed(views::Button* sender,
- const views::Event& event) {
- if (sender == revert_button_) {
- GetDelegate()->RevertTranslation();
- return;
- }
- TranslateInfoBarBase::ButtonPressed(sender, event);
-}
-
-void AfterTranslateInfoBar::RunMenu(views::View* source,
- const gfx::Point& pt) {
- if (source == original_language_menu_button_) {
- if (!original_language_menu_.get()) {
- original_language_menu_.reset(
- new views::Menu2(&original_language_menu_model_));
- }
- original_language_menu_->RunMenuAt(pt, views::Menu2::ALIGN_TOPRIGHT);
- } else if (source == target_language_menu_button_) {
- if (!target_language_menu_.get()) {
- target_language_menu_.reset(
- new views::Menu2(&target_language_menu_model_));
- }
- target_language_menu_->RunMenuAt(pt, views::Menu2::ALIGN_TOPRIGHT);
- } else if (source == options_menu_button_) {
- if (!options_menu_.get())
- options_menu_.reset(new views::Menu2(&options_menu_model_));
- options_menu_->RunMenuAt(pt, views::Menu2::ALIGN_TOPRIGHT);
- } else {
- NOTREACHED();
- }
-}
-
-void AfterTranslateInfoBar::UpdateLanguageButtonText(
- LanguagesMenuModel::LanguageType language_type) {
- int language_index;
- views::MenuButton* language_button;
- if (language_type == LanguagesMenuModel::ORIGINAL) {
- language_index = GetDelegate()->original_language_index();
- language_button = original_language_menu_button_;
- } else {
- language_index = GetDelegate()->target_language_index();
- language_button = target_language_menu_button_;
- }
- string16 language =
- GetDelegate()->GetLanguageDisplayableNameAt(language_index);
- language_button->SetText(UTF16ToWideHack(language));
- // The following line is necessary for the preferred size to be recomputed.
- language_button->ClearMaxTextSize();
- // The button may have to grow to show the new text.
- Layout();
- SchedulePaint();
-}