1 // Copyright (c) 2012 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 "base/prefs/pref_registry_simple.h"
7 #include "base/files/file_path.h"
8 #include "base/string_number_conversions.h"
9 #include "base/values.h"
11 PrefRegistrySimple::PrefRegistrySimple() {
14 PrefRegistrySimple::~PrefRegistrySimple() {
17 void PrefRegistrySimple::RegisterBooleanPref(const char* path
,
19 RegisterPreference(path
, base::Value::CreateBooleanValue(default_value
));
22 void PrefRegistrySimple::RegisterIntegerPref(const char* path
,
24 RegisterPreference(path
, base::Value::CreateIntegerValue(default_value
));
27 void PrefRegistrySimple::RegisterDoublePref(const char* path
,
28 double default_value
) {
29 RegisterPreference(path
, base::Value::CreateDoubleValue(default_value
));
32 void PrefRegistrySimple::RegisterStringPref(const char* path
,
33 const std::string
& default_value
) {
34 RegisterPreference(path
, base::Value::CreateStringValue(default_value
));
37 void PrefRegistrySimple::RegisterFilePathPref(
39 const base::FilePath
& default_value
) {
40 RegisterPreference(path
,
41 base::Value::CreateStringValue(default_value
.value()));
44 void PrefRegistrySimple::RegisterListPref(const char* path
) {
45 RegisterPreference(path
, new base::ListValue());
48 void PrefRegistrySimple::RegisterListPref(const char* path
,
49 base::ListValue
* default_value
) {
50 RegisterPreference(path
, default_value
);
53 void PrefRegistrySimple::RegisterDictionaryPref(const char* path
) {
54 RegisterPreference(path
, new base::DictionaryValue());
57 void PrefRegistrySimple::RegisterDictionaryPref(
59 base::DictionaryValue
* default_value
) {
60 RegisterPreference(path
, default_value
);
63 void PrefRegistrySimple::RegisterInt64Pref(const char* path
,
64 int64 default_value
) {
66 path
, base::Value::CreateStringValue(base::Int64ToString(default_value
)));