1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "chrome/browser/ui/translate/translate_bubble_model_impl.h"
7 #include "chrome/browser/translate/translate_ui_delegate.h"
9 TranslateBubbleModelImpl::TranslateBubbleModelImpl(
10 TranslateBubbleModel::ViewState view_type,
11 scoped_ptr<TranslateUIDelegate> ui_delegate)
12 : ui_delegate_(ui_delegate.Pass()),
13 view_state_transition_(view_type) {
16 TranslateBubbleModelImpl::~TranslateBubbleModelImpl() {
19 TranslateBubbleModel::ViewState TranslateBubbleModelImpl::GetViewState() const {
20 return view_state_transition_.view_state();
23 void TranslateBubbleModelImpl::SetViewState(
24 TranslateBubbleModel::ViewState view_state) {
25 view_state_transition_.SetViewState(view_state);
28 void TranslateBubbleModelImpl::GoBackFromAdvanced() {
29 view_state_transition_.GoBackFromAdvanced();
32 int TranslateBubbleModelImpl::GetNumberOfLanguages() const {
33 return ui_delegate_->GetNumberOfLanguages();
36 string16 TranslateBubbleModelImpl::GetLanguageNameAt(int index) const {
37 return ui_delegate_->GetLanguageNameAt(index);
40 int TranslateBubbleModelImpl::GetOriginalLanguageIndex() const {
41 return ui_delegate_->GetOriginalLanguageIndex();
44 void TranslateBubbleModelImpl::UpdateOriginalLanguageIndex(int index) {
45 ui_delegate_->UpdateOriginalLanguageIndex(index);
48 int TranslateBubbleModelImpl::GetTargetLanguageIndex() const {
49 return ui_delegate_->GetTargetLanguageIndex();
52 void TranslateBubbleModelImpl::UpdateTargetLanguageIndex(int index) {
53 ui_delegate_->UpdateTargetLanguageIndex(index);
56 void TranslateBubbleModelImpl::SetNeverTranslateLanguage(bool value) {
57 ui_delegate_->SetLanguageBlocked(value);
60 void TranslateBubbleModelImpl::SetNeverTranslateSite(bool value) {
61 ui_delegate_->SetSiteBlacklist(value);
64 bool TranslateBubbleModelImpl::ShouldAlwaysTranslate() const {
65 return ui_delegate_->ShouldAlwaysTranslate();
68 void TranslateBubbleModelImpl::SetAlwaysTranslate(bool value) {
69 ui_delegate_->SetAlwaysTranslate(value);
72 void TranslateBubbleModelImpl::Translate() {
73 ui_delegate_->Translate();
76 void TranslateBubbleModelImpl::RevertTranslation() {
77 ui_delegate_->RevertTranslation();
80 void TranslateBubbleModelImpl::TranslationDeclined() {
81 ui_delegate_->TranslationDeclined();