code: def show(self, item=None):
      if item is not None:
          ## Select next exportable parent of the item originally clicked on
          while (
              not isinstance(item, ViewBox)
              and not isinstance(item, PlotItem)
              and item is not None
          ):
              item = item.parentItem()
          ## if this is a ViewBox inside a PlotItem, select the parent instead.
          if isinstance(item, ViewBox) and isinstance(
              item.parentItem(), PlotItem
          ):
              item = item.parentItem()
          self.updateItemList(select=item)
      self.setVisible(True)
      self.activateWindow()
      self.raise_()
      self.selectBox.setVisible(True)
      if not self.shown:
          self.shown = True
          vcenter = self.scene.getViewWidget().geometry().center()
          x = max(0, int(vcenter.x() - self.width() / 2))
          y = max(0, int(vcenter.y() - self.height() / 2))
          self.move(x, y)
  
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 2 for calling the ExportDialog obj's underlying member method code with example usage: obj.show(item) without return types