/** * @public * @param $name string - Registration name * @brief Disconnects a function from the delegate that have the specified name. * @see XCube_Delegate::delete() */ function delete($name, $delcallback) { if (isset($this->_mDelegates[$name])) { foreach (array_keys($this->_mDelegates[$name]) as $key) { $this->_mDelegates[$name][$key]->delete($delcallback); } } if (isset($this->_mCallbacks[$name])) { foreach (array_keys($this->_mCallbacks[$name]) as $key) { $callback = $this->_mCallbacks[$name][$key]; if (XCube_DelegateUtils::_compareCallback($callback, $delcallback)) { unset($this->_mCallbacks[$name][$key]); unset($this->_mCallbackParameters[$name][$key]); } } } }