Esempio n. 1
0
/** Removes from arr all values in minusArr. For each Value in minusArr, the first matching instance in arr will be removed.
 @since v0.99.4
 */
void ccCArrayRemoveArray(ccCArray *arr, ccCArray *minusArr)
{
	for(unsigned int i = 0; i < minusArr->num; i++)
    {
		ccCArrayRemoveValue(arr, minusArr->arr[i]);
    }
}
Esempio n. 2
0
void CCTouchDispatcher::addTargetedDelegate(CCTouchDelegate *pDelegate, int nPriority, bool bSwallowsTouches)
{	
	CCTouchHandler *pHandler = CCTargetedTouchHandler::handlerWithDelegate(pDelegate, nPriority, bSwallowsTouches);
	if (! m_bLocked)
	{
		forceAddHandler(pHandler, m_pTargetedHandlers);
	}
	else
	{
		/* If pHandler is contained in m_pHandlersToRemove, if so remove it from m_pHandlersToRemove and retrun.
		 * Refer issue #752(cocos2d-x)
		 */
		if (ccCArrayContainsValue(m_pHandlersToRemove, pDelegate))
		{
			ccCArrayRemoveValue(m_pHandlersToRemove, pDelegate);
			return;
		}
		
		m_pHandlersToAdd->addObject(pHandler);
		m_bToAdd = true;
	}
}