|
1 /* This Source Code Form is subject to the terms of the Mozilla Public |
|
2 * License, v. 2.0. If a copy of the MPL was not distributed with this |
|
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
|
4 |
|
5 |
|
6 /** |
|
7 * nsPreferences - a wrapper around nsIPrefService. Provides built in |
|
8 * exception handling to make preferences access simpler. |
|
9 **/ |
|
10 var nsPreferences = { |
|
11 get mPrefService() |
|
12 { |
|
13 return Components.classes["@mozilla.org/preferences-service;1"] |
|
14 .getService(Components.interfaces.nsIPrefBranch); |
|
15 }, |
|
16 |
|
17 setBoolPref: function (aPrefName, aPrefValue) |
|
18 { |
|
19 try |
|
20 { |
|
21 this.mPrefService.setBoolPref(aPrefName, aPrefValue); |
|
22 } |
|
23 catch(e) |
|
24 { |
|
25 } |
|
26 }, |
|
27 |
|
28 getBoolPref: function (aPrefName, aDefVal) |
|
29 { |
|
30 try |
|
31 { |
|
32 return this.mPrefService.getBoolPref(aPrefName); |
|
33 } |
|
34 catch(e) |
|
35 { |
|
36 return aDefVal != undefined ? aDefVal : null; |
|
37 } |
|
38 return null; // quiet warnings |
|
39 }, |
|
40 |
|
41 setUnicharPref: function (aPrefName, aPrefValue) |
|
42 { |
|
43 try |
|
44 { |
|
45 var str = Components.classes["@mozilla.org/supports-string;1"] |
|
46 .createInstance(Components.interfaces.nsISupportsString); |
|
47 str.data = aPrefValue; |
|
48 this.mPrefService.setComplexValue(aPrefName, |
|
49 Components.interfaces.nsISupportsString, str); |
|
50 } |
|
51 catch(e) |
|
52 { |
|
53 } |
|
54 }, |
|
55 |
|
56 copyUnicharPref: function (aPrefName, aDefVal) |
|
57 { |
|
58 try |
|
59 { |
|
60 return this.mPrefService.getComplexValue(aPrefName, |
|
61 Components.interfaces.nsISupportsString).data; |
|
62 } |
|
63 catch(e) |
|
64 { |
|
65 return aDefVal != undefined ? aDefVal : null; |
|
66 } |
|
67 return null; // quiet warnings |
|
68 }, |
|
69 |
|
70 setIntPref: function (aPrefName, aPrefValue) |
|
71 { |
|
72 try |
|
73 { |
|
74 this.mPrefService.setIntPref(aPrefName, aPrefValue); |
|
75 } |
|
76 catch(e) |
|
77 { |
|
78 } |
|
79 }, |
|
80 |
|
81 getIntPref: function (aPrefName, aDefVal) |
|
82 { |
|
83 try |
|
84 { |
|
85 return this.mPrefService.getIntPref(aPrefName); |
|
86 } |
|
87 catch(e) |
|
88 { |
|
89 return aDefVal != undefined ? aDefVal : null; |
|
90 } |
|
91 return null; // quiet warnings |
|
92 }, |
|
93 |
|
94 getLocalizedUnicharPref: function (aPrefName, aDefVal) |
|
95 { |
|
96 try |
|
97 { |
|
98 return this.mPrefService.getComplexValue(aPrefName, |
|
99 Components.interfaces.nsIPrefLocalizedString).data; |
|
100 } |
|
101 catch(e) |
|
102 { |
|
103 return aDefVal != undefined ? aDefVal : null; |
|
104 } |
|
105 return null; // quiet warnings |
|
106 } |
|
107 }; |
|
108 |