code: def refresh_menu(self):
          
          data = self.model.get_data()
          index = self.currentIndex()
          condition = (not isinstance(data, (tuple, set))) and index.isValid() \
                      and not self.readonly
          self.edit_action.setEnabled( condition )
          self.remove_action.setEnabled( condition )
          self.insert_action.setEnabled( not self.readonly )
          self.duplicate_action.setEnabled(condition)
          condition_rename = not isinstance(data, (tuple, list, set))
          self.rename_action.setEnabled(condition_rename)
          self.refresh_plot_entries(index)
docs: Refresh context menu