From 0d82929ca0552325389b6abfc776413baa430f85 Mon Sep 17 00:00:00 2001 From: "bnesse%netscape.com" Date: Fri, 8 Jun 2001 20:31:34 +0000 Subject: [PATCH] Added PrefHasUserPref functionality. r=bnesse, sr=alecf, a=asa. Checking in for Chip C. git-svn-id: svn://10.0.0.236/trunk@96733 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/modules/libpref/public/nsIPrefBranch.idl | 1 + mozilla/modules/libpref/src/nsPref.cpp | 10 ++++++++++ mozilla/modules/libpref/src/nsPrefBranch.cpp | 14 ++++++++++++++ 3 files changed, 25 insertions(+) diff --git a/mozilla/modules/libpref/public/nsIPrefBranch.idl b/mozilla/modules/libpref/public/nsIPrefBranch.idl index 418fc6935d1..23f86794a3d 100644 --- a/mozilla/modules/libpref/public/nsIPrefBranch.idl +++ b/mozilla/modules/libpref/public/nsIPrefBranch.idl @@ -85,6 +85,7 @@ interface nsIPrefBranch : nsISupports */ void lockPref(in string aPrefName); + boolean prefHasUserValue(in string aPrefName); boolean prefIsLocked(in string aPrefName); void unlockPref(in string aPrefName); diff --git a/mozilla/modules/libpref/src/nsPref.cpp b/mozilla/modules/libpref/src/nsPref.cpp index 55d66aec599..88c01cedc66 100644 --- a/mozilla/modules/libpref/src/nsPref.cpp +++ b/mozilla/modules/libpref/src/nsPref.cpp @@ -296,6 +296,16 @@ NS_IMETHODIMP nsPref::PrefIsLocked(const char *aPrefName, PRBool *_retval) return rv; } +NS_IMETHODIMP nsPref::PrefHasUserValue(const char *aPrefName, PRBool *_retval) +{ + nsresult rv; + + nsCOMPtr prefBranch = do_QueryInterface(mPrefService, &rv); + if (NS_SUCCEEDED(rv)) + rv = prefBranch->PrefHasUserValue(aPrefName, _retval); + return rv; +} + NS_IMETHODIMP nsPref::UnlockPref(const char *aPrefName) { nsresult rv; diff --git a/mozilla/modules/libpref/src/nsPrefBranch.cpp b/mozilla/modules/libpref/src/nsPrefBranch.cpp index 35113926dee..2f758b51267 100644 --- a/mozilla/modules/libpref/src/nsPrefBranch.cpp +++ b/mozilla/modules/libpref/src/nsPrefBranch.cpp @@ -429,6 +429,20 @@ NS_IMETHODIMP nsPrefBranch::ClearUserPref(const char *aPrefName) return rv; } +NS_IMETHODIMP nsPrefBranch::PrefHasUserValue(const char *aPrefName, PRBool *_retval) +{ + const char *pref = getPrefName(aPrefName); + nsresult rv; + + NS_ENSURE_ARG_POINTER(_retval); + + rv = QueryObserver(pref); + if (NS_SUCCEEDED(rv)) { + *_retval = PREF_HasUserPref(pref); + } + return rv; +} + NS_IMETHODIMP nsPrefBranch::LockPref(const char *aPrefName) { const char *pref = getPrefName(aPrefName);