def METHOD_NAME(self) -> str:
    """
    Call the provided callback(s) to update combo box items.
    :return: Current item string
    """
    # Get current state
    current_item = None
    if not self.count():
        if self._get_default_item is not None:
            current_item = self._get_default_item()
    else:
        current_item = self.currentText()
    # Reload all items
    with SignalsBlocked(self):
        self.clear()
        items = self._get_items()
        if isinstance(items, dict):
            for item, icon in items.items():
                if icon is None:
                    icon = self._item_icon
                self.addItem(icon, item)
        else:
            if self._item_icon is not None:
                for item in self._get_items():
                    self.addItem(self._item_icon, item)
            else:
                self.addItems(self._get_items())
    # Restore original state
    index = self.findText(current_item)
    if index != -1:
        self.setCurrentIndex(index)
    elif self._get_default_item is not None:
        self.setCurrentText(self._get_default_item())
    return self.currentText()