void QDeclarativeContextData::clearContext() { if (engine) { while (componentAttached) { QDeclarativeComponentAttached *a = componentAttached; componentAttached = a->next; if (componentAttached) componentAttached->prev = &componentAttached; a->next = 0; a->prev = 0; emit a->destruction(); } } QDeclarativeAbstractExpression *expression = expressions; while (expression) { QDeclarativeAbstractExpression *nextExpression = expression->m_nextExpression; expression->m_context = 0; expression->m_prevExpression = 0; expression->m_nextExpression = 0; expression = nextExpression; } expressions = 0; }
void QDeclarativeContextData::invalidate() { while (childContexts) childContexts->invalidate(); while (componentAttached) { QDeclarativeComponentAttached *a = componentAttached; componentAttached = a->next; if (componentAttached) componentAttached->prev = &componentAttached; a->next = 0; a->prev = 0; emit a->destruction(); } if (prevChild) { *prevChild = nextChild; if (nextChild) nextChild->prevChild = prevChild; nextChild = 0; prevChild = 0; } engine = 0; parent = 0; }