code: def findAll(self, obj=None, c=None, d=None):
      if obj is None:
          obj = self.topContainer
  
      ## check all temp areas first
      if c is None:
          c = []
          d = {}
          for a in self.tempAreas:
              c1, d1 = a.findAll()
              c.extend(c1)
              d.update(d1)
  
      if isinstance(obj, Dock):
          d[obj.name()] = obj
      elif obj is not None:
          c.append(obj)
          for i in range(obj.count()):
              o2 = obj.widget(i)
              c2, d2 = self.findAll(o2)
              c.extend(c2)
              d.update(d2)
      return (c, d)
  
imports: import weakref
  from ..Qt import QtWidgets
  from .Container import Container, HContainer, TContainer, VContainer
  from .Dock import Dock
  from .DockDrop import DockDrop
label_desc: Use image node_id 18 for calling the DockArea obj's underlying member method code with example usage: obj.findAll(obj, c, d) and returns: c,  d