def METHOD_NAME(self, items):
    if isinstance(items, list) or isinstance(items, tuple):
        texts = items
        items = dict([(x, x) for x in items])
    elif isinstance(items, dict):
        texts = list(items.keys())
    else:
        raise TypeError("items argument must be list or dict or tuple (got %s)." % type(items))
    for t in texts:
        if t in self._items:
            raise Exception('ComboBox already has item named "%s".' % t)
    for k,v in items.items():
        self._items[k] = v
    QtWidgets.QComboBox.METHOD_NAME(self, list(texts))
    self.itemsChanged()