1// Copyright (c) 2011 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.
4
5#include "chrome/browser/ui/webui/options/chromeos/language_hangul_handler.h"
6
7#include "base/utf_string_conversions.h"
8#include "base/values.h"
9#include "chrome/browser/chromeos/language_preferences.h"
10#include "grit/generated_resources.h"
11#include "ui/base/l10n/l10n_util.h"
12
13namespace chromeos {
14
15LanguageHangulHandler::LanguageHangulHandler() {
16}
17
18LanguageHangulHandler::~LanguageHangulHandler() {
19}
20
21void LanguageHangulHandler::GetLocalizedValues(
22    DictionaryValue* localized_strings) {
23  DCHECK(localized_strings);
24
25  RegisterTitle(localized_strings, "languageHangulPage",
26                IDS_OPTIONS_SETTINGS_LANGUAGES_HANGUL_SETTINGS_TITLE);
27
28  localized_strings->SetString("hangul_keyboard_layout",
29      l10n_util::GetStringUTF16(IDS_OPTIONS_SETTINGS_KEYBOARD_LAYOUT_TEXT));
30
31  localized_strings->Set("HangulkeyboardLayoutList", GetKeyboardLayoutList());
32}
33
34ListValue* LanguageHangulHandler::GetKeyboardLayoutList() {
35  ListValue* keyboard_layout_list = new ListValue();
36  for (size_t i = 0; i < language_prefs::kNumHangulKeyboardNameIDPairs; ++i) {
37    ListValue* option = new ListValue();
38    option->Append(Value::CreateStringValue(
39        language_prefs::kHangulKeyboardNameIDPairs[i].keyboard_id));
40    option->Append(Value::CreateStringValue(l10n_util::GetStringUTF16(
41        language_prefs::kHangulKeyboardNameIDPairs[i].message_id)));
42    keyboard_layout_list->Append(option);
43  }
44  return keyboard_layout_list;
45}
46
47}  // namespace chromeos
48