code: def on_context_menu(self, event):
      menu = wx.Menu()
      index = self.__cursor_pos
      if index < len(self.__tokens) and isinstance(
          self.__tokens[index], self.MetadataToken
      ):
          heading = "Change tag"
      else:
          heading = "Insert tag"
      item = menu.Append(-1, heading)
      item.Enable(False)
      for choice in sorted(self.__metadata_choice_dict.keys()):
          menu.Append(self.__metadata_choice_dict[choice], choice)
      self.PopupMenu(menu)
      menu.Destroy()
  
imports: import wx
  import wx.lib.masked
  from cellprofiler_core.constants.measurement import C_FRAME
  from cellprofiler_core.constants.measurement import C_METADATA
  from cellprofiler_core.constants.measurement import C_SERIES
  from cellprofiler_core.constants.measurement import IMAGE
  from cellprofiler_core.preferences import get_primary_outline_color
label_desc: Use image node_id 23 for calling the MetadataControl obj's underlying member method code with example usage: obj.on_context_menu(event) without return types