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/strings/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
, new base::FundamentalValue(default_value
));
22 void PrefRegistrySimple::RegisterIntegerPref(const char* path
,
24 RegisterPreference(path
, new base::FundamentalValue(default_value
));
27 void PrefRegistrySimple::RegisterDoublePref(const char* path
,
28 double default_value
) {
29 RegisterPreference(path
, new base::FundamentalValue(default_value
));
32 void PrefRegistrySimple::RegisterStringPref(const char* path
,
33 const std::string
& default_value
) {
34 RegisterPreference(path
, new base::StringValue(default_value
));
37 void PrefRegistrySimple::RegisterFilePathPref(
39 const base::FilePath
& default_value
) {
40 RegisterPreference(path
, new base::StringValue(default_value
.value()));
43 void PrefRegistrySimple::RegisterListPref(const char* path
) {
44 RegisterPreference(path
, new base::ListValue());
47 void PrefRegistrySimple::RegisterListPref(const char* path
,
48 base::ListValue
* default_value
) {
49 RegisterPreference(path
, default_value
);
52 void PrefRegistrySimple::RegisterDictionaryPref(const char* path
) {
53 RegisterPreference(path
, new base::DictionaryValue());
56 void PrefRegistrySimple::RegisterDictionaryPref(
58 base::DictionaryValue
* default_value
) {
59 RegisterPreference(path
, default_value
);
62 void PrefRegistrySimple::RegisterInt64Pref(const char* path
,
63 int64 default_value
) {
65 path
, new base::StringValue(base::Int64ToString(default_value
)));