| Index: base/prefs/pref_registry.h
|
| diff --git a/base/prefs/pref_registry.h b/base/prefs/pref_registry.h
|
| index a500b6e691a08e73a0be65651da892edaf86aec7..6fad6035dbe20650db75c484b91df25d709afd6e 100644
|
| --- a/base/prefs/pref_registry.h
|
| +++ b/base/prefs/pref_registry.h
|
| @@ -27,10 +27,26 @@ class PrefStore;
|
| // also work, but this is being deprecated.
|
| class BASE_PREFS_EXPORT PrefRegistry : public base::RefCounted<PrefRegistry> {
|
| public:
|
| + // Registration flags that can be specified which impact how the pref will
|
| + // behave or be stored. This will be passed in a bitmask when the pref is
|
| + // registered. Subclasses of PrefRegistry can specify their own flags. Care
|
| + // must be taken to ensure none of these overlap with the flags below.
|
| + enum PrefRegistrationFlags {
|
| + // No flags are specified.
|
| + NO_REGISTRATION_FLAGS = 0,
|
| +
|
| + // The first 8 bits are reserved for subclasses of PrefRegistry to use.
|
| + };
|
| +
|
| typedef PrefValueMap::const_iterator const_iterator;
|
| + typedef std::map<std::string, uint32> PrefRegistrationFlagsMap;
|
|
|
| PrefRegistry();
|
|
|
| + // Retrieve the set of registration flags for the given preference. The return
|
| + // value is a bitmask of PrefRegistrationFlags.
|
| + uint32 GetRegistrationFlags(const std::string& pref_name) const;
|
| +
|
| // Gets the registered defaults.
|
| scoped_refptr<PrefStore> defaults();
|
|
|
| @@ -47,11 +63,17 @@ class BASE_PREFS_EXPORT PrefRegistry : public base::RefCounted<PrefRegistry> {
|
| friend class base::RefCounted<PrefRegistry>;
|
| virtual ~PrefRegistry();
|
|
|
| - // Used by subclasses to register a default value for a preference.
|
| - void RegisterPreference(const std::string& path, base::Value* default_value);
|
| + // Used by subclasses to register a default value and registration flags for
|
| + // a preference. |flags| is a bitmask of |PrefRegistrationFlags|.
|
| + void RegisterPreference(const std::string& path,
|
| + base::Value* default_value,
|
| + uint32 flags);
|
|
|
| scoped_refptr<DefaultPrefStore> defaults_;
|
|
|
| + // A map of pref name to a bitmask of PrefRegistrationFlags.
|
| + PrefRegistrationFlagsMap registration_flags_;
|
| +
|
| private:
|
| DISALLOW_COPY_AND_ASSIGN(PrefRegistry);
|
| };
|
|
|