from PyQt5 import QtWidgets class ArtnetMainWindow(QtWidgets.QMainWindow): def __init__(self, main): super(ArtnetMainWindow, self).__init__() self.main = main self.curr_image_title: str = "" self.setting_up_data: bool = True self.__data_changed: bool = False @property def data_changed(self): return self.__data_changed @data_changed.setter def data_changed(self, v: bool): self.__data_changed = v if self.curr_image_title is None: return if " (Not in Database)" in self.curr_image_title and v and not self.setting_up_data: self.curr_image_title = self.curr_image_title.replace(" (Not in Database)", "") self.setting_up_data = True self.ui.image_title_line.setText(self.curr_image_title) self.setting_up_data = False def display_image(self, image_title: str, image_authors: list, full_path: str, relative_path: str, art_ID: int, link: str, file_name: str, description: str, collections: list): """ Display an image in the central widget :param image_authors: :param image_title: :param full_path: :param relative_path: :param art_ID: :param link: :param file_name: :param description: :return: """ raise NotImplementedError def set_tag_list(self, tags: list, set_checked: bool = True, no_implication: bool = False): """ Set the tags in the tag list to this. Also updates the tag implication list if no_implication is False :param tags: :param set_checked: :param no_implication: bool indicating if the implication list should also be updated :return: """ raise NotImplementedError