code: def add_callback(self, func):
          
          if func is None: return
          func_list = to_list(func)
  
          if not hasattr(self, 'callback_list'):
              self.callback_list = func_list
          else:
              self.callback_list.extend(func_list)
docs: Registers a call back function