| Index: chrome/browser/chromeos/options/language_hangul_config_view.cc
|
| diff --git a/chrome/browser/chromeos/options/language_hangul_config_view.cc b/chrome/browser/chromeos/options/language_hangul_config_view.cc
|
| deleted file mode 100644
|
| index 3a190aa30f68736284cbd6d868aa54fd468e60ba..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/chromeos/options/language_hangul_config_view.cc
|
| +++ /dev/null
|
| @@ -1,185 +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/chromeos/options/language_hangul_config_view.h"
|
| -
|
| -#include "app/l10n_util.h"
|
| -#include "base/string16.h"
|
| -#include "base/utf_string_conversions.h"
|
| -#include "chrome/browser/chromeos/cros/cros_library.h"
|
| -#include "chrome/browser/chromeos/cros/input_method_library.h"
|
| -#include "chrome/browser/chromeos/language_preferences.h"
|
| -#include "chrome/browser/chromeos/preferences.h"
|
| -#include "chrome/browser/profiles/profile.h"
|
| -#include "chrome/common/notification_type.h"
|
| -#include "chrome/common/pref_names.h"
|
| -#include "grit/generated_resources.h"
|
| -#include "grit/locale_settings.h"
|
| -#include "ui/base/models/combobox_model.h"
|
| -#include "views/controls/button/checkbox.h"
|
| -#include "views/controls/label.h"
|
| -#include "views/grid_layout.h"
|
| -#include "views/standard_layout.h"
|
| -#include "views/window/window.h"
|
| -
|
| -namespace chromeos {
|
| -
|
| -// The combobox model for the list of hangul keyboards.
|
| -class HangulKeyboardComboboxModel : public ui::ComboboxModel {
|
| - public:
|
| - HangulKeyboardComboboxModel() {
|
| - for (size_t i = 0; i < language_prefs::kNumHangulKeyboardNameIDPairs;
|
| - ++i) {
|
| - layouts_.push_back(std::make_pair(
|
| - l10n_util::GetStringUTF8(
|
| - language_prefs::kHangulKeyboardNameIDPairs[i].message_id),
|
| - language_prefs::kHangulKeyboardNameIDPairs[i].keyboard_id));
|
| - }
|
| - }
|
| -
|
| - // Implements ui::ComboboxModel interface.
|
| - virtual int GetItemCount() {
|
| - return static_cast<int>(layouts_.size());
|
| - }
|
| -
|
| - // Implements ui::ComboboxModel interface.
|
| - virtual string16 GetItemAt(int index) {
|
| - if (index < 0 || index > GetItemCount()) {
|
| - LOG(ERROR) << "Index is out of bounds: " << index;
|
| - return string16();
|
| - }
|
| - return UTF8ToUTF16(layouts_.at(index).first);
|
| - }
|
| -
|
| - // Gets a keyboard layout ID (e.g. "2", "3f", ..) for an item at zero-origin
|
| - // |index|. This function is NOT part of the ComboboxModel interface.
|
| - std::string GetItemIDAt(int index) {
|
| - if (index < 0 || index > GetItemCount()) {
|
| - LOG(ERROR) << "Index is out of bounds: " << index;
|
| - return "";
|
| - }
|
| - return layouts_.at(index).second;
|
| - }
|
| -
|
| - // Gets an index (>= 0) of an item whose keyboard layout ID is |layout_ld|.
|
| - // Returns -1 if such item is not found. This function is NOT part of the
|
| - // ComboboxModel interface.
|
| - int GetIndexFromID(const std::string& layout_id) {
|
| - for (size_t i = 0; i < layouts_.size(); ++i) {
|
| - if (GetItemIDAt(i) == layout_id) {
|
| - return static_cast<int>(i);
|
| - }
|
| - }
|
| - return -1;
|
| - }
|
| -
|
| - private:
|
| - std::vector<std::pair<std::string, std::string> > layouts_;
|
| - DISALLOW_COPY_AND_ASSIGN(HangulKeyboardComboboxModel);
|
| -};
|
| -
|
| -LanguageHangulConfigView::LanguageHangulConfigView(Profile* profile)
|
| - : OptionsPageView(profile),
|
| - contents_(NULL),
|
| - hangul_keyboard_combobox_(NULL),
|
| - hangul_keyboard_combobox_model_(new HangulKeyboardComboboxModel) {
|
| - keyboard_pref_.Init(
|
| - prefs::kLanguageHangulKeyboard, profile->GetPrefs(), this);
|
| -}
|
| -
|
| -LanguageHangulConfigView::~LanguageHangulConfigView() {
|
| -}
|
| -
|
| -void LanguageHangulConfigView::ItemChanged(
|
| - views::Combobox* sender, int prev_index, int new_index) {
|
| - const std::string id =
|
| - hangul_keyboard_combobox_model_->GetItemIDAt(new_index);
|
| - VLOG(1) << "Changing Hangul keyboard pref to " << id;
|
| - keyboard_pref_.SetValue(id);
|
| -}
|
| -
|
| -void LanguageHangulConfigView::Layout() {
|
| - // Not sure why but this is needed to show contents in the dialog.
|
| - contents_->SetBounds(0, 0, width(), height());
|
| -}
|
| -
|
| -int LanguageHangulConfigView::GetDialogButtons() const {
|
| - return MessageBoxFlags::DIALOGBUTTON_OK;
|
| -}
|
| -
|
| -std::wstring LanguageHangulConfigView::GetDialogButtonLabel(
|
| - MessageBoxFlags::DialogButton button) const {
|
| - if (button == MessageBoxFlags::DIALOGBUTTON_OK) {
|
| - return UTF16ToWide(l10n_util::GetStringUTF16(IDS_OK));
|
| - }
|
| - return L"";
|
| -}
|
| -
|
| -std::wstring LanguageHangulConfigView::GetWindowTitle() const {
|
| - return UTF16ToWide(l10n_util::GetStringUTF16(
|
| - IDS_OPTIONS_SETTINGS_LANGUAGES_HANGUL_SETTINGS_TITLE));
|
| -}
|
| -
|
| -gfx::Size LanguageHangulConfigView::GetPreferredSize() {
|
| - // TODO(satorux): Create our own localized content size once the UI is done.
|
| - return gfx::Size(views::Window::GetLocalizedContentsSize(
|
| - IDS_LANGUAGES_INPUT_DIALOG_WIDTH_CHARS,
|
| - IDS_LANGUAGES_INPUT_DIALOG_HEIGHT_LINES));
|
| -}
|
| -
|
| -void LanguageHangulConfigView::InitControlLayout() {
|
| - using views::ColumnSet;
|
| - using views::GridLayout;
|
| -
|
| - contents_ = new views::View;
|
| - AddChildView(contents_);
|
| -
|
| - GridLayout* layout = new GridLayout(contents_);
|
| - layout->SetInsets(kPanelVertMargin, kPanelHorizMargin,
|
| - kPanelVertMargin, kPanelHorizMargin);
|
| - contents_->SetLayoutManager(layout);
|
| -
|
| - const int kColumnSetId = 0;
|
| - ColumnSet* column_set = layout->AddColumnSet(kColumnSetId);
|
| - column_set->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0,
|
| - GridLayout::USE_PREF, 0, 0);
|
| - column_set->AddPaddingColumn(0, kRelatedControlHorizontalSpacing);
|
| - column_set->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0,
|
| - GridLayout::USE_PREF, 0, 0);
|
| - layout->StartRow(0, kColumnSetId);
|
| -
|
| - // Settings for the Hangul IME.
|
| - layout->AddView(new views::Label(UTF16ToWide(
|
| - l10n_util::GetStringUTF16(IDS_OPTIONS_SETTINGS_KEYBOARD_LAYOUT_TEXT))));
|
| -
|
| - hangul_keyboard_combobox_
|
| - = new views::Combobox(hangul_keyboard_combobox_model_.get());
|
| - hangul_keyboard_combobox_->set_listener(this);
|
| -
|
| - // Initialize the combobox to what's saved in user preferences. Otherwise,
|
| - // ItemChanged() will be called with |new_index| == 0.
|
| - NotifyPrefChanged();
|
| - layout->AddView(hangul_keyboard_combobox_);
|
| -}
|
| -
|
| -void LanguageHangulConfigView::Observe(NotificationType type,
|
| - const NotificationSource& source,
|
| - const NotificationDetails& details) {
|
| - if (type == NotificationType::PREF_CHANGED) {
|
| - // Observe(PREF_CHANGED) is called when the chromeos::Preferences object
|
| - // changed the prefs::kLanguageHangulKeyboard preference. Note that this
|
| - // function is NOT called when this dialog calls keyboard_pref_.SetValue().
|
| - NotifyPrefChanged();
|
| - }
|
| -}
|
| -
|
| -void LanguageHangulConfigView::NotifyPrefChanged() {
|
| - const std::string id = keyboard_pref_.GetValue();
|
| - const int index =
|
| - hangul_keyboard_combobox_model_->GetIndexFromID(id);
|
| - if (index >= 0)
|
| - hangul_keyboard_combobox_->SetSelectedItem(index);
|
| -}
|
| -
|
| -} // namespace chromeos
|
|
|