getAllRenderedElements method

List? getAllRenderedElements(
  1. FilterRendered filter, [
  2. bool deep = false
])
inherited

Implementation

List? getAllRenderedElements(FilterRendered filter, [bool deep = false]) {
  if (_renderedElements == null) return null;

  var elements = <dynamic>{};

  for (var elem in _renderedElements!) {
    if (filter(elem)) {
      elements.add(elem);
    }
  }

  if (deep) {
    for (var elem in _renderedElements!) {
      if (elem is UIComponent) {
        var found = elem.getRenderedElement(filter, true);
        if (found != null) {
          elements.add(found);
        }
      }
    }

    var subUIComponents = this.subUIComponents;

    for (var elem in subUIComponents) {
      if (filter(elem)) {
        elements.add(elem);
      }

      var found = elem.getRenderedElement(filter, true);
      if (found != null) {
        elements.add(found);
      }
    }
  }

  return elements.toList();
}