| 575 | } |
| 576 | |
| 577 | void ViewNodeTree::addViewNode(const Ref<ViewNode>& viewNode) { |
| 578 | SC_ASSERT(viewNode->getRawId() != 0); |
| 579 | auto insertion = _rawViewNodes.try_emplace(viewNode->getRawId(), viewNode); |
| 580 | if (insertion.second) { |
| 581 | viewNode->setViewNodeTree(this); |
| 582 | } else { |
| 583 | // Remove the existing none |
| 584 | removeViewNode(viewNode->getRawId()); |
| 585 | // Insert the new one |
| 586 | addViewNode(viewNode); |
| 587 | } |
| 588 | } |
| 589 | |
| 590 | void ViewNodeTree::setKeepViewAliveOnDestroy(bool keepViewAliveOnDestroy) { |
| 591 | if (_keepViewAliveOnDestroy != keepViewAliveOnDestroy) { |
no test coverage detected