Changeset 7ddb5d
- Timestamp:
- 06/10/2009 06:15:52 PM (16 years ago)
- Branches:
- 2.0.x, develop, extjs4-port, master
- Children:
- c274da9
- Parents:
- 853138
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
deluge/config.py
r853138 r7ddb5d 103 103 self.__config = {} 104 104 self.__set_functions = {} 105 self.__change_callback = None105 self.__change_callbacks = [] 106 106 107 107 # These hold the version numbers and they will be set when loaded … … 178 178 pass 179 179 try: 180 reactor.callLater(0, self.__change_callback, key, value) 180 def do_change_callbacks(key, value): 181 for func in self.__change_callbacks: 182 func(key, value) 183 reactor.callLater(0, do_change_callbacks, key, value) 181 184 except: 182 185 pass … … 226 229 227 230 """ 228 self.__change_callback = callback231 self.__change_callbacks.append(callback) 229 232 230 233 def register_set_function(self, key, function, apply_now=True): … … 247 250 """ 248 251 log.debug("Registering function for %s key..", key) 249 self.__set_functions[key] = function 252 if key not in self.__set_functions: 253 self.__set_functions[key] = [] 254 255 self.__set_functions[key].append(function) 256 250 257 # Run the function now if apply_now is set 251 258 if apply_now: 252 self.__set_functions[key](key, self.__config[key])259 function(key, self.__config[key]) 253 260 return 254 261 … … 270 277 log.debug("Calling all set functions..") 271 278 for key, value in self.__set_functions.iteritems(): 272 value(key, self.__config[key]) 279 for func in value: 280 func(key, self.__config[key]) 273 281 274 282 def apply_set_functions(self, key): … … 281 289 log.debug("Calling set functions for key %s..", key) 282 290 if key in self.__set_functions: 283 self.__set_functions[key](key, self.__config[key]) 291 for func in self.__set_functions[key]: 292 func(key, self.__config[key]) 284 293 285 294 def load(self, filename=None):
Note:
See TracChangeset
for help on using the changeset viewer.