replaceChildElement method

  1. @override
bool replaceChildElement(
  1. UINode parent,
  2. UINode? child1,
  3. List<UINode>? child2
)

Implementation

@override
bool replaceChildElement(
    UINode parent, UINode? child1, List<UINode>? child2) {
  var ok = super.replaceChildElement(parent, child1, child2);

  if (ok && child2 != null && child2.isNotEmpty) {
    var uiRoot = UIRoot.getInstance();

    for (var element in child2.whereType<UIElement>()) {
      var uiComponent = uiRoot!
          .getUIComponentByContent(element, includePurgedEntries: true);
      if (uiComponent != null) {
        uiComponent.setParent(parent as UIElement);
        _resolveParentUIComponent(parent, element,
            childUIComponent: uiComponent);
        uiComponent.ensureRendered();
      }
    }
  }

  return ok;
}