code: def updateItemTree(self, item, treeItem, select=None):
      si = None
      if isinstance(item, ViewBox):
          si = QtWidgets.QTreeWidgetItem(["ViewBox"])
      elif isinstance(item, PlotItem):
          si = QtWidgets.QTreeWidgetItem(["Plot"])
  
      if si is not None:
          si.gitem = item
          treeItem.addChild(si)
          treeItem = si
          if si.gitem is select:
              self.ui.itemTree.setCurrentItem(si)
  
      for ch in item.childItems():
          self.updateItemTree(ch, treeItem, select=select)
  
imports: from ..None import exporters
  from ..None import functions
  from ..graphicsItems.PlotItem import PlotItem
  from ..graphicsItems.ViewBox import ViewBox
  from ..Qt import QtCore, QtWidgets
  from .None import exportDialogTemplate_generic
label_desc: Use image node_id 4 for calling the ExportDialog obj's underlying member method code with example usage: obj.updateItemTree(item, treeItem, select) without return types