def addSetZoneCompleteCallback(self, callback, priority=None):
     if self._setZoneCompleteCallbacks:
         return self._setZoneCompleteCallbacks.add(callback, priority)
     else:
         token = PriorityCallbacks.GetToken()
         fdc = SubframeCall(callback,
                            taskMgr.getCurrentTask().getPriority() - 1)
         self._setZoneCompleteLocalCallbacks[token] = fdc
         return token