Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(200)

Side by Side Diff: chrome/browser/dom_ui/core_options_handler.cc

Issue 3117017: Remove deprecated wstring Get(As)String() methods from Value, etc. (Closed)
Patch Set: fix win Created 10 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/dom_ui/core_options_handler.h" 5 #include "chrome/browser/dom_ui/core_options_handler.h"
6 6
7 #include "app/l10n_util.h" 7 #include "app/l10n_util.h"
8 #include "base/string16.h"
8 #include "base/string_number_conversions.h" 9 #include "base/string_number_conversions.h"
9 #include "base/utf_string_conversions.h" 10 #include "base/utf_string_conversions.h"
10 #include "base/values.h" 11 #include "base/values.h"
11 #include "chrome/common/notification_service.h" 12 #include "chrome/common/notification_service.h"
12 #include "chrome/common/notification_type.h" 13 #include "chrome/common/notification_type.h"
13 #include "chrome/browser/pref_service.h" 14 #include "chrome/browser/pref_service.h"
14 #include "chrome/browser/profile.h" 15 #include "chrome/browser/profile.h"
15 #include "grit/browser_resources.h" 16 #include "grit/browser_resources.h"
16 #include "grit/chromium_strings.h" 17 #include "grit/chromium_strings.h"
17 #include "grit/generated_resources.h" 18 #include "grit/generated_resources.h"
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after
163 // one more element for the actual preference identifier. 164 // one more element for the actual preference identifier.
164 const size_t kMinFetchPrefsParamCount = 2; 165 const size_t kMinFetchPrefsParamCount = 2;
165 if (param_values->GetSize() < kMinFetchPrefsParamCount) 166 if (param_values->GetSize() < kMinFetchPrefsParamCount)
166 return; 167 return;
167 168
168 // Get callback JS function name. 169 // Get callback JS function name.
169 Value* callback; 170 Value* callback;
170 if (!param_values->Get(0, &callback) || !callback->IsType(Value::TYPE_STRING)) 171 if (!param_values->Get(0, &callback) || !callback->IsType(Value::TYPE_STRING))
171 return; 172 return;
172 173
173 std::wstring callback_function; 174 string16 callback_function;
174 if (!callback->GetAsString(&callback_function)) 175 if (!callback->GetAsString(&callback_function))
175 return; 176 return;
176 177
177 // Get the list of name for prefs to build the response dictionary. 178 // Get the list of name for prefs to build the response dictionary.
178 DictionaryValue result_value; 179 DictionaryValue result_value;
179 Value* list_member; 180 Value* list_member;
180 181
181 for (size_t i = 1; i < param_values->GetSize(); i++) { 182 for (size_t i = 1; i < param_values->GetSize(); i++) {
182 if (!param_values->Get(i, &list_member)) 183 if (!param_values->Get(i, &list_member))
183 break; 184 break;
184 185
185 if (!list_member->IsType(Value::TYPE_STRING)) 186 if (!list_member->IsType(Value::TYPE_STRING))
186 continue; 187 continue;
187 188
188 std::string pref_name; 189 std::string pref_name;
189 if (!list_member->GetAsString(&pref_name)) 190 if (!list_member->GetAsString(&pref_name))
190 continue; 191 continue;
191 192
192 result_value.Set(pref_name.c_str(), FetchPref(pref_name)); 193 result_value.Set(pref_name.c_str(), FetchPref(pref_name));
193 } 194 }
194 dom_ui_->CallJavascriptFunction(callback_function.c_str(), result_value); 195 dom_ui_->CallJavascriptFunction(UTF16ToWideHack(callback_function).c_str(),
196 result_value);
195 } 197 }
196 198
197 void CoreOptionsHandler::HandleObservePrefs(const Value* value) { 199 void CoreOptionsHandler::HandleObservePrefs(const Value* value) {
198 if (!value || !value->IsType(Value::TYPE_LIST)) 200 if (!value || !value->IsType(Value::TYPE_LIST))
199 return; 201 return;
200 202
201 DictionaryValue result_value; 203 DictionaryValue result_value;
202 const ListValue* list_value = static_cast<const ListValue*>(value); 204 const ListValue* list_value = static_cast<const ListValue*>(value);
203 205
204 // First param is name is JS callback function name, the rest are pref 206 // First param is name is JS callback function name, the rest are pref
205 // identifiers that we are observing. 207 // identifiers that we are observing.
206 const size_t kMinObservePrefsParamCount = 2; 208 const size_t kMinObservePrefsParamCount = 2;
207 if (list_value->GetSize() < kMinObservePrefsParamCount) 209 if (list_value->GetSize() < kMinObservePrefsParamCount)
208 return; 210 return;
209 211
210 // Get preference change callback function name. 212 // Get preference change callback function name.
211 std::wstring callback_func_name; 213 string16 callback_func_name;
212 if (!list_value->GetString(0, &callback_func_name)) 214 if (!list_value->GetString(0, &callback_func_name))
213 return; 215 return;
214 216
215 // Get all other parameters - pref identifiers. 217 // Get all other parameters - pref identifiers.
216 for (size_t i = 1; i < list_value->GetSize(); i++) { 218 for (size_t i = 1; i < list_value->GetSize(); i++) {
217 Value* list_member; 219 Value* list_member;
218 if (!list_value->Get(i, &list_member)) 220 if (!list_value->Get(i, &list_member))
219 break; 221 break;
220 222
221 // Just ignore bad pref identifiers for now. 223 // Just ignore bad pref identifiers for now.
222 std::string pref_name; 224 std::string pref_name;
223 if (!list_member->IsType(Value::TYPE_STRING) || 225 if (!list_member->IsType(Value::TYPE_STRING) ||
224 !list_member->GetAsString(&pref_name)) 226 !list_member->GetAsString(&pref_name))
225 continue; 227 continue;
226 228
227 if (pref_callback_map_.find(pref_name) == pref_callback_map_.end()) 229 if (pref_callback_map_.find(pref_name) == pref_callback_map_.end())
228 ObservePref(pref_name); 230 ObservePref(pref_name);
229 231
230 pref_callback_map_.insert( 232 pref_callback_map_.insert(
231 PreferenceCallbackMap::value_type(pref_name, callback_func_name)); 233 PreferenceCallbackMap::value_type(pref_name,
234 UTF16ToWideHack(callback_func_name)));
232 } 235 }
233 } 236 }
234 237
235 void CoreOptionsHandler::HandleSetBooleanPref(const Value* value) { 238 void CoreOptionsHandler::HandleSetBooleanPref(const Value* value) {
236 HandleSetPref(value, Value::TYPE_BOOLEAN); 239 HandleSetPref(value, Value::TYPE_BOOLEAN);
237 } 240 }
238 241
239 void CoreOptionsHandler::HandleSetIntegerPref(const Value* value) { 242 void CoreOptionsHandler::HandleSetIntegerPref(const Value* value) {
240 HandleSetPref(value, Value::TYPE_INTEGER); 243 HandleSetPref(value, Value::TYPE_INTEGER);
241 } 244 }
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
278 pref_callback_map_.find(*pref_name); 281 pref_callback_map_.find(*pref_name);
279 iter != pref_callback_map_.end(); ++iter) { 282 iter != pref_callback_map_.end(); ++iter) {
280 const std::wstring& callback_function = iter->second; 283 const std::wstring& callback_function = iter->second;
281 ListValue result_value; 284 ListValue result_value;
282 result_value.Append(Value::CreateStringValue(pref_name->c_str())); 285 result_value.Append(Value::CreateStringValue(pref_name->c_str()));
283 result_value.Append(pref->GetValue()->DeepCopy()); 286 result_value.Append(pref->GetValue()->DeepCopy());
284 dom_ui_->CallJavascriptFunction(callback_function, result_value); 287 dom_ui_->CallJavascriptFunction(callback_function, result_value);
285 } 288 }
286 } 289 }
287 } 290 }
OLDNEW
« no previous file with comments | « chrome/browser/debugger/extension_ports_remote_service.cc ('k') | chrome/browser/dom_ui/dom_ui.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698