code: def _qteFindAppletInSplitter(self, appletObj: QtmacsApplet,
                                   split: QtmacsSplitter):
          
          def splitterIter(split):
              """
              Iterator over all QtmacsSplitters.
              """
              for idx in range(split.count()):
                  subSplitter = split.widget(idx)
                  subID = subSplitter._qteAdmin.widgetSignature
                  if subID == '__QtmacsLayoutSplitter__':
                      yield from splitterIter(subSplitter)
              yield split
  
          # Traverse all QtmacsSplitter until ``appletObj`` was found.
          for curSplit in splitterIter(split):
              if appletObj in curSplit.children():
                  return curSplit
  
          # No splitter holds ``appletObj``.
          return None
docs: Return the splitter that holds ``appletObj``.
  
          This method recursively searches for ``appletObj`` in the
          nested splitter hierarchy of the window layout, starting at
          ``split``. If successful, the method returns a reference to
          the splitter, otherwise it returns **None**.
  
          |Args|
  
          * ``appletObj`` (**QtmacsApplet**): the applet to look for.
          * ``split`` (**QtmacsSplitter**): the splitter where to begin.
  
          |Returns|
  
          * **QtmacsSplitter**: the splitter that holds ``appletObj``
            or **None**.
  
          |Raises|
  
          * **QtmacsArgumentError** if at least one argument has an invalid type.