code: def refresh_items(self):
          
          items = []
          if self.condition:
              for nodes, key, f_locals in self.pattern_nodes:
                  with new_scope(key, f_locals):
                      for node in nodes:
                          child = node(None)
                          if isinstance(child, list):
                              items.extend(child)
                          else:
                              items.append(child)
  
          for old in self.items:
              if not old.is_destroyed:
                  old.destroy()
  
          #: Insert items into THIS node, NOT the PARENT
          #if len(items) > 0:
          #    self.parent.insert_children(self, items)
          self.items = items
docs: Refresh the items of the pattern.
          This method destroys the old items and creates and initializes
          the new items.
  
          It is overridden to NOT insert the children to the parent. The Fragment
          adapter handles this.