diff --git a/ArtNet/gui/dialogs/collection_modify_dialog/collection_dialog.py b/ArtNet/gui/dialogs/collection_modify_dialog/collection_dialog.py new file mode 100644 index 0000000..56b19cf --- /dev/null +++ b/ArtNet/gui/dialogs/collection_modify_dialog/collection_dialog.py @@ -0,0 +1,194 @@ +import logging +import os.path +from typing import List, Tuple + +from PyQt5 import QtWidgets +from PyQt5.QtCore import Qt +from PyQt5.QtGui import QStandardItem, QStandardItemModel + +from ArtNet.gui.dialogs.collection_modify_dialog.collection_modify_dialog import Ui_Dialog + +from ArtNet.gui.dialogs.image_select_dialog.image_sel_dialog import ImageSelectDialog +from ArtNet.db.db_adapter import DBAdapter + + +class CollectionModDialog(QtWidgets.QDialog): + """ + Dialog to edit and modify a collection and its entries' ranking + """ + + # TODO add way to increase and lower ranking for an entry (up and down buttons?) + # TODO add way to delete entry (button) + # TODO can I catch which item in a list is selected? + + def __init__(self, parent, db_connection: DBAdapter, edit_collection: bool = False): + super().__init__(parent) + self.parent = parent + self.__db = db_connection + + self.__curr_entries: List[Tuple[str, dict]] = list() # [(entry_str, Dict[title, path, ranking])] + self.data = dict() + + self.setWindowTitle("Creating Collection") + + self.ui = Ui_Dialog() + self.ui.setupUi(self) + + if not edit_collection: + self.ui.collection_name_line.setReadOnly(True) + self.ui.description_browser.setReadOnly(True) + + self.ui.add_image_button.clicked.connect(self.on_add_art_clicked) + self.ui.optimize_ranking_button.clicked.connect(self.on_optimize_ranking_clicked) + + @staticmethod + def create_entry_string(art_data: dict) -> str: + """ + Creates a string representation of the given art in the collection including its ranking string + """ + title: str = art_data["title"] if art_data["title"] is not None else os.path.basename(art_data["path"]) + if len(title) > 20: + title = title[-20:] + elif len(title) < 20: + while len(title) < 20: + title += " " + entry_string = title + " | " + art_data["ranking"] + return entry_string + + def append_collection_entry(self, art_data: dict): + """ + Append a new art entry into the collection + """ + if len(self.__curr_entries) > 0: # need to create even lower entry + lowest_r = None + for s, data in self.__curr_entries: + r = data["ranking"] + if lowest_r is None or lowest_r < r: + lowest_r = r + + if lowest_r[-1] < "z": # lower and not 'z' + ranking = lowest_r + ranking = ranking[:-1] + ranking += chr(ord(lowest_r[-1]) + (ord('z')-ord(lowest_r[-1]))//2 + 1) # last character + 1 + else: + ranking = lowest_r if lowest_r is not None else "" + ranking += "m" + + else: # first to add + ranking = "m" # the middle + + art_data["ranking"] = ranking + title: str = art_data["title"] if art_data["title"] is not None else os.path.basename(art_data["path"]) + if len(title) > 20: + title = title[-20:] + elif len(title) < 20: + while len(title) < 20: + title += " " + + entry_string = title + " | " + art_data["ranking"] + self.__curr_entries.append((entry_string, art_data)) + self.__curr_entries.sort(key=lambda x: x[1]["ranking"]) + logging.debug(f"New collection list is: {self.__curr_entries}") + self.set_collection_entry_list(self.__curr_entries) + + def insert_collection_entry(self, art_data: dict, index: int): + """ + Insert the art entry into the collection at position index. + This might shift other entries in their index but tries to minimize ranking string changes. + """ + assert(index >= 0) + if len(self.__curr_entries)-1 > index: # inserts between entries or in front of entries + conflicting_art = self.__curr_entries[index][1] + following_art = self.__curr_entries[index+1][1] + + if len(conflicting_art["ranking"]) == len(following_art["ranking"]): # can I squeeze it in? + if following_art["ranking"][-1] < conflicting_art["ranking"][-1] < "z": + # both are not same and not "z" -> there might be space + char_diff = ord(conflicting_art["ranking"][-1]) - ord(following_art["ranking"][-1]) + if char_diff > 1: # can squeeze a letter between them + ranking = conflicting_art["ranking"][:-1] + ranking += chr(ord(conflicting_art["ranking"][-1]) + char_diff//2) + else: + ranking = conflicting_art["ranking"] + "m" + else: + ranking = conflicting_art["ranking"] + "m" + + elif conflicting_art["ranking"][-1] < "z": # just insert it the plain way + ranking = conflicting_art["ranking"] + ranking = chr(ord(ranking[-1])+1) + else: + ranking = conflicting_art["ranking"] + "m" + + art_data["ranking"] = ranking + entry_string = CollectionModDialog.create_entry_string(art_data) + self.__curr_entries.append((entry_string, art_data)) + self.__curr_entries.sort(key=lambda x: x[1]["ranking"]) + logging.debug(f"New collection list is: {self.__curr_entries}") + self.set_collection_entry_list(self.__curr_entries) + + else: # inserts at the end + self.append_collection_entry(art_data) + + def collect_collection_details(self): + """ + Collect the entered details about the collection and save them as self.data + """ + self.data["name"] = self.ui.collection_name_line.text() + self.data["description"] = self.ui.description_browser.toPlainText().strip() + self.data["entries"] = self.__curr_entries + + def set_collection_entry_list(self, entries: list): + """ + Set the entries in the list + :param entries: + :return: + """ + item_model = QStandardItemModel(self.ui.entry_list) + + entries.sort(key=lambda x: x[1]["ranking"]) + + for entry, _ in entries: + item = QStandardItem(entry) + flags = Qt.ItemIsEnabled + item.setFlags(flags) + + item.setData(Qt.Unchecked, Qt.CheckStateRole) + item.setCheckState(Qt.Checked) # can just be checked, otherwise not in the entry list + + item_model.appendRow(item) + + item_model.itemChanged.connect(self.on_collection_entry_changed) + self.ui.entry_list.setModel(item_model) + + def exec_(self, collection_details: dict = None) -> dict: + if collection_details is not None: + self.ui.collection_name_line.setText(collection_details["name"]) + self.ui.description_browser.setText(collection_details["description"]) + self.__curr_entries = collection_details["entries"] + self.set_collection_entry_list([CollectionModDialog.create_entry_string(entry) for entry in + collection_details["entries"]]) + + if super(CollectionModDialog, self).exec_() == QtWidgets.QDialog.Rejected: + return None + self.collect_collection_details() + + return self.data + + # callback method + def on_add_art_clicked(self): + logging.info("Clicked add art for collection") + dialog = ImageSelectDialog(db_connection=self.__db, parent=self) + art_data = dialog.exec_() + logging.info(f"Received selected art: {art_data}") + if art_data is None: # nothing was selected + return + self.append_collection_entry(art_data) + + def on_optimize_ranking_clicked(self): + logging.info("Clicked optimize ranking for collection") + # TODO use some optimization algo to change the ranking strings to be minimal in length, with max distance + + def on_collection_entry_changed(self, item: QStandardItem): + logging.info(f"Removing entry {item.text()}") + entry_id = item.text().split(":")[0] + self.__curr_entries.remove(entry_id) diff --git a/ArtNet/gui/dialogs/collection_modify_dialog/collection_modify_dialog.py b/ArtNet/gui/dialogs/collection_modify_dialog/collection_modify_dialog.py new file mode 100644 index 0000000..c27c94b --- /dev/null +++ b/ArtNet/gui/dialogs/collection_modify_dialog/collection_modify_dialog.py @@ -0,0 +1,165 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'dialogs/collection_modify_dialog/collection_modify_dialog.ui' +# +# Created by: PyQt5 UI code generator 5.15.6 +# +# WARNING: Any manual changes made to this file will be lost when pyuic5 is +# run again. Do not edit this file unless you know what you are doing. + + +from PyQt5 import QtCore, QtGui, QtWidgets + + +class Ui_Dialog(object): + def setupUi(self, Dialog): + Dialog.setObjectName("Dialog") + Dialog.resize(735, 492) + self.verticalLayout = QtWidgets.QVBoxLayout(Dialog) + self.verticalLayout.setObjectName("verticalLayout") + self.top_frame = QtWidgets.QFrame(Dialog) + self.top_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.top_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.top_frame.setObjectName("top_frame") + self.horizontalLayout_4 = QtWidgets.QHBoxLayout(self.top_frame) + self.horizontalLayout_4.setObjectName("horizontalLayout_4") + self.collection_name_label = QtWidgets.QLabel(self.top_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.collection_name_label.sizePolicy().hasHeightForWidth()) + self.collection_name_label.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setPointSize(12) + font.setBold(True) + font.setWeight(75) + self.collection_name_label.setFont(font) + self.collection_name_label.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) + self.collection_name_label.setObjectName("collection_name_label") + self.horizontalLayout_4.addWidget(self.collection_name_label) + self.collection_name_line = QtWidgets.QLineEdit(self.top_frame) + self.collection_name_line.setObjectName("collection_name_line") + self.horizontalLayout_4.addWidget(self.collection_name_line) + self.verticalLayout.addWidget(self.top_frame) + self.frame = QtWidgets.QFrame(Dialog) + self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.frame.setObjectName("frame") + self.horizontalLayout = QtWidgets.QHBoxLayout(self.frame) + self.horizontalLayout.setObjectName("horizontalLayout") + self.image_list_frame = QtWidgets.QFrame(self.frame) + self.image_list_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.image_list_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.image_list_frame.setObjectName("image_list_frame") + self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.image_list_frame) + self.verticalLayout_2.setObjectName("verticalLayout_2") + self.entry_label = QtWidgets.QLabel(self.image_list_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.entry_label.setFont(font) + self.entry_label.setObjectName("entry_label") + self.verticalLayout_2.addWidget(self.entry_label) + self.entry_list = QtWidgets.QListView(self.image_list_frame) + self.entry_list.setObjectName("entry_list") + self.verticalLayout_2.addWidget(self.entry_list) + self.button_frame = QtWidgets.QFrame(self.image_list_frame) + self.button_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.button_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.button_frame.setObjectName("button_frame") + self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.button_frame) + self.horizontalLayout_2.setObjectName("horizontalLayout_2") + self.add_image_button = QtWidgets.QPushButton(self.button_frame) + self.add_image_button.setObjectName("add_image_button") + self.horizontalLayout_2.addWidget(self.add_image_button) + spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout_2.addItem(spacerItem) + self.verticalLayout_2.addWidget(self.button_frame) + self.horizontalLayout.addWidget(self.image_list_frame) + self.ranking_list_frame = QtWidgets.QFrame(self.frame) + self.ranking_list_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.ranking_list_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.ranking_list_frame.setObjectName("ranking_list_frame") + self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.ranking_list_frame) + self.verticalLayout_3.setObjectName("verticalLayout_3") + self.label = QtWidgets.QLabel(self.ranking_list_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label.setFont(font) + self.label.setObjectName("label") + self.verticalLayout_3.addWidget(self.label) + self.ranking_list_view = QtWidgets.QListView(self.ranking_list_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.ranking_list_view.sizePolicy().hasHeightForWidth()) + self.ranking_list_view.setSizePolicy(sizePolicy) + self.ranking_list_view.setObjectName("ranking_list_view") + self.verticalLayout_3.addWidget(self.ranking_list_view) + self.button2_frame = QtWidgets.QFrame(self.ranking_list_frame) + self.button2_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.button2_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.button2_frame.setObjectName("button2_frame") + self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.button2_frame) + self.horizontalLayout_3.setObjectName("horizontalLayout_3") + self.optimize_ranking_button = QtWidgets.QPushButton(self.button2_frame) + self.optimize_ranking_button.setObjectName("optimize_ranking_button") + self.horizontalLayout_3.addWidget(self.optimize_ranking_button) + spacerItem1 = QtWidgets.QSpacerItem(30, 20, QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout_3.addItem(spacerItem1) + self.verticalLayout_3.addWidget(self.button2_frame) + self.horizontalLayout.addWidget(self.ranking_list_frame) + self.description_frame = QtWidgets.QFrame(self.frame) + self.description_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.description_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.description_frame.setObjectName("description_frame") + self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.description_frame) + self.verticalLayout_4.setObjectName("verticalLayout_4") + self.description_label = QtWidgets.QLabel(self.description_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.description_label.sizePolicy().hasHeightForWidth()) + self.description_label.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.description_label.setFont(font) + self.description_label.setObjectName("description_label") + self.verticalLayout_4.addWidget(self.description_label) + self.description_browser = QtWidgets.QTextBrowser(self.description_frame) + self.description_browser.setObjectName("description_browser") + self.verticalLayout_4.addWidget(self.description_browser) + self.horizontalLayout.addWidget(self.description_frame) + self.verticalLayout.addWidget(self.frame) + self.buttonBox = QtWidgets.QDialogButtonBox(Dialog) + self.buttonBox.setOrientation(QtCore.Qt.Horizontal) + self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel|QtWidgets.QDialogButtonBox.Ok) + self.buttonBox.setObjectName("buttonBox") + self.verticalLayout.addWidget(self.buttonBox) + + self.retranslateUi(Dialog) + self.buttonBox.accepted.connect(Dialog.accept) # type: ignore + self.buttonBox.rejected.connect(Dialog.reject) # type: ignore + QtCore.QMetaObject.connectSlotsByName(Dialog) + + def retranslateUi(self, Dialog): + _translate = QtCore.QCoreApplication.translate + Dialog.setWindowTitle(_translate("Dialog", "Dialog")) + self.collection_name_label.setText(_translate("Dialog", "Collection Name")) + self.entry_label.setText(_translate("Dialog", "Entries")) + self.add_image_button.setText(_translate("Dialog", "Add Art")) + self.label.setText(_translate("Dialog", "Ranking")) + self.optimize_ranking_button.setText(_translate("Dialog", "Optimize Ranking")) + self.description_label.setText(_translate("Dialog", "Description")) + + +if __name__ == "__main__": + import sys + app = QtWidgets.QApplication(sys.argv) + Dialog = QtWidgets.QDialog() + ui = Ui_Dialog() + ui.setupUi(Dialog) + Dialog.show() + sys.exit(app.exec_()) diff --git a/ArtNet/gui/dialogs/collection_modify_dialog/collection_modify_dialog.ui b/ArtNet/gui/dialogs/collection_modify_dialog/collection_modify_dialog.ui new file mode 100644 index 0000000..f7635da --- /dev/null +++ b/ArtNet/gui/dialogs/collection_modify_dialog/collection_modify_dialog.ui @@ -0,0 +1,278 @@ + + + Dialog + + + + 0 + 0 + 735 + 492 + + + + Dialog + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 0 + 0 + + + + + 12 + 75 + true + + + + Collection Name + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 75 + true + + + + Entries + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + Add Art + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 75 + true + + + + Ranking + + + + + + + + 0 + 0 + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + Optimize Ranking + + + + + + + Qt::Horizontal + + + QSizePolicy::Preferred + + + + 30 + 20 + + + + + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 0 + 0 + + + + + 75 + true + + + + Description + + + + + + + + + + + + + + + + Qt::Horizontal + + + QDialogButtonBox::Cancel|QDialogButtonBox::Ok + + + + + + + + + buttonBox + accepted() + Dialog + accept() + + + 248 + 254 + + + 157 + 274 + + + + + buttonBox + rejected() + Dialog + reject() + + + 316 + 260 + + + 286 + 274 + + + + + diff --git a/ArtNet/gui/dialogs/collection_modify_dialog/presence_selection_dialog.py b/ArtNet/gui/dialogs/collection_modify_dialog/presence_selection_dialog.py new file mode 100644 index 0000000..37495f2 --- /dev/null +++ b/ArtNet/gui/dialogs/collection_modify_dialog/presence_selection_dialog.py @@ -0,0 +1,10 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'dialogs/collection_view_dialog/presence_selection_dialog.ui' +# +# Created by: PyQt5 UI code generator 5.15.6 +# +# WARNING: Any manual changes made to this file will be lost when pyuic5 is +# run again. Do not edit this file unless you know what you are doing. + + diff --git a/ArtNet/gui/dialogs/collection_select_dialog/collection_sel_dialog.py b/ArtNet/gui/dialogs/collection_select_dialog/collection_sel_dialog.py new file mode 100644 index 0000000..49f2a3c --- /dev/null +++ b/ArtNet/gui/dialogs/collection_select_dialog/collection_sel_dialog.py @@ -0,0 +1,113 @@ +import logging + +from PyQt5 import QtWidgets +from PyQt5.QtCore import Qt +from PyQt5.QtGui import QStandardItem, QStandardItemModel + +from ArtNet.gui.dialogs.collection_select_dialog.collection_select_dialog import Ui_Dialog + +from ArtNet.gui.dialogs.collection_modify_dialog.collection_dialog import CollectionModDialog + + +class CollectionSelectDialog(QtWidgets.QDialog): + + def __init__(self, parent=None): + super().__init__(parent) + self.parent = parent + + self.__curr_searched_collections: list = None + self.curr_collections = list() + + self.ui = Ui_Dialog() + self.ui.setupUi(self) + + self.setWindowTitle("Select a Collection") + + self.ui.collection_name_line.textChanged.connect(self.on_search_params_changed) + self.ui.presence_name_line.textChanged.connect(self.on_search_params_changed) + self.ui.presence_domain_line.textChanged.connect(self.on_search_params_changed) + self.ui.art_name_line.textChanged.connect(self.on_search_params_changed) + + self.ui.create_collection_button.clicked.connect(self.on_create_collection_clicked) + self.ui.edit_collection_button.clicked.connect(self.on_edit_collection_clicked) + self.ui.delete_collection_button.clicked.connect(self.on_delete_collection_clicked) + + def exec_(self, already_selected_collections: list) -> list: + self.curr_collections = already_selected_collections + self.on_search_params_changed() + if super(CollectionSelectDialog, self).exec_() == QtWidgets.QDialog.Rejected: + return None + + logging.debug(f"Finished collection selection dialog! User chose collections: {self.curr_collections}") + return self.curr_collections + + def set_collection_search_result(self, collections: list): + """ + Set the collections in the list + :param collections: + :return: + """ + item_model = QStandardItemModel(self.ui.collection_list) + + self.__curr_searched_collections = list() + for collection in collections: + coll_id, coll_name, coll_desc, _, _, _, _ = collection + collection_string = f"#{coll_id}:{coll_name}" + self.__curr_searched_collections.append(collection) + + item = QStandardItem(collection_string) + flags = Qt.ItemIsEnabled + flags |= Qt.ItemIsUserCheckable + item.setFlags(flags) + + item.setData(Qt.Unchecked, Qt.CheckStateRole) + if self.curr_collections is not None and coll_id in [coll_id for coll_id, coll_name in self.curr_collections]: + item.setCheckState(Qt.Checked) + + item_model.appendRow(item) + + item_model.itemChanged.connect(self.on_collection_search_item_changed) + self.ui.collection_list.setModel(item_model) + + # callback methods + + def on_collection_search_item_changed(self, item: QStandardItem): + coll_id = int(item.text().split(":")[0].split("#")[1]) + coll_name = item.text().split(":")[1] + + if item.checkState() == Qt.Checked: + self.curr_collections.append((coll_id, coll_name)) + else: # unchecked + self.curr_collections.remove((coll_id, coll_name)) + self.set_collection_search_result(self.__curr_searched_collections) # unchecks previously checked collections + + def on_search_params_changed(self): + coll_name = self.ui.collection_name_line.text() + pr_name = self.ui.presence_name_line.text() + pr_domain = self.ui.presence_domain_line.text() + art_title = self.ui.art_name_line.text() + + result = self.parent.search_collections(collection_name=coll_name, presence_name=pr_name, + presence_domain=pr_domain, + art_name=art_title) + + self.set_collection_search_result(result) + + def on_create_collection_clicked(self): + logging.info("Clicked on create collection button!") + dialog = CollectionModDialog(self, edit_collection=True, db_connection=self.parent.main.db_connection) + collection_data = dialog.exec_() + if collection_data is None: + return + + self.parent.create_collection(collection_data["name"], + collection_data["description"]) + self.on_search_params_changed() + + def on_edit_collection_clicked(self): + logging.info("Clicked on edit collection button!") + raise NotImplementedError # TODO + + def on_delete_collection_clicked(self): + logging.info("Clicked on delete collection button!") + raise NotImplementedError # TODO diff --git a/ArtNet/gui/dialogs/collection_select_dialog/collection_select_dialog.py b/ArtNet/gui/dialogs/collection_select_dialog/collection_select_dialog.py new file mode 100644 index 0000000..379e97b --- /dev/null +++ b/ArtNet/gui/dialogs/collection_select_dialog/collection_select_dialog.py @@ -0,0 +1,168 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'dialogs/collection_select_dialog/collection_select_dialog.ui' +# +# Created by: PyQt5 UI code generator 5.15.6 +# +# WARNING: Any manual changes made to this file will be lost when pyuic5 is +# run again. Do not edit this file unless you know what you are doing. + + +from PyQt5 import QtCore, QtGui, QtWidgets + + +class Ui_Dialog(object): + def setupUi(self, Dialog): + Dialog.setObjectName("Dialog") + Dialog.resize(570, 321) + self.verticalLayout_2 = QtWidgets.QVBoxLayout(Dialog) + self.verticalLayout_2.setObjectName("verticalLayout_2") + self.frame = QtWidgets.QFrame(Dialog) + self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.frame.setObjectName("frame") + self.verticalLayout = QtWidgets.QVBoxLayout(self.frame) + self.verticalLayout.setObjectName("verticalLayout") + self.top_frame = QtWidgets.QFrame(self.frame) + self.top_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.top_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.top_frame.setObjectName("top_frame") + self.horizontalLayout = QtWidgets.QHBoxLayout(self.top_frame) + self.horizontalLayout.setObjectName("horizontalLayout") + self.name_select_frame = QtWidgets.QFrame(self.top_frame) + self.name_select_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.name_select_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.name_select_frame.setObjectName("name_select_frame") + self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.name_select_frame) + self.verticalLayout_3.setObjectName("verticalLayout_3") + self.collection_name_label = QtWidgets.QLabel(self.name_select_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.collection_name_label.sizePolicy().hasHeightForWidth()) + self.collection_name_label.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.collection_name_label.setFont(font) + self.collection_name_label.setObjectName("collection_name_label") + self.verticalLayout_3.addWidget(self.collection_name_label) + self.collection_name_line = QtWidgets.QLineEdit(self.name_select_frame) + self.collection_name_line.setObjectName("collection_name_line") + self.verticalLayout_3.addWidget(self.collection_name_line) + self.horizontalLayout.addWidget(self.name_select_frame) + self.presence_name_frame = QtWidgets.QFrame(self.top_frame) + self.presence_name_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.presence_name_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.presence_name_frame.setObjectName("presence_name_frame") + self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.presence_name_frame) + self.verticalLayout_4.setObjectName("verticalLayout_4") + self.presence_name_label = QtWidgets.QLabel(self.presence_name_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.presence_name_label.sizePolicy().hasHeightForWidth()) + self.presence_name_label.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.presence_name_label.setFont(font) + self.presence_name_label.setObjectName("presence_name_label") + self.verticalLayout_4.addWidget(self.presence_name_label) + self.presence_name_line = QtWidgets.QLineEdit(self.presence_name_frame) + self.presence_name_line.setObjectName("presence_name_line") + self.verticalLayout_4.addWidget(self.presence_name_line) + self.horizontalLayout.addWidget(self.presence_name_frame) + self.presence_domain_frame = QtWidgets.QFrame(self.top_frame) + self.presence_domain_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.presence_domain_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.presence_domain_frame.setObjectName("presence_domain_frame") + self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.presence_domain_frame) + self.verticalLayout_5.setObjectName("verticalLayout_5") + self.presence_domain_label = QtWidgets.QLabel(self.presence_domain_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.presence_domain_label.sizePolicy().hasHeightForWidth()) + self.presence_domain_label.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.presence_domain_label.setFont(font) + self.presence_domain_label.setObjectName("presence_domain_label") + self.verticalLayout_5.addWidget(self.presence_domain_label) + self.presence_domain_line = QtWidgets.QLineEdit(self.presence_domain_frame) + self.presence_domain_line.setObjectName("presence_domain_line") + self.verticalLayout_5.addWidget(self.presence_domain_line) + self.horizontalLayout.addWidget(self.presence_domain_frame) + self.art_frame = QtWidgets.QFrame(self.top_frame) + self.art_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.art_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.art_frame.setObjectName("art_frame") + self.verticalLayout_6 = QtWidgets.QVBoxLayout(self.art_frame) + self.verticalLayout_6.setObjectName("verticalLayout_6") + self.art_name_label = QtWidgets.QLabel(self.art_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.art_name_label.setFont(font) + self.art_name_label.setObjectName("art_name_label") + self.verticalLayout_6.addWidget(self.art_name_label) + self.art_name_line = QtWidgets.QLineEdit(self.art_frame) + self.art_name_line.setObjectName("art_name_line") + self.verticalLayout_6.addWidget(self.art_name_line) + self.horizontalLayout.addWidget(self.art_frame) + self.verticalLayout.addWidget(self.top_frame) + self.collection_list = QtWidgets.QListView(self.frame) + self.collection_list.setObjectName("collection_list") + self.verticalLayout.addWidget(self.collection_list) + self.verticalLayout_2.addWidget(self.frame) + self.button_frame = QtWidgets.QFrame(Dialog) + self.button_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.button_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.button_frame.setObjectName("button_frame") + self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.button_frame) + self.horizontalLayout_2.setObjectName("horizontalLayout_2") + spacerItem = QtWidgets.QSpacerItem(133, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout_2.addItem(spacerItem) + self.create_collection_button = QtWidgets.QPushButton(self.button_frame) + self.create_collection_button.setObjectName("create_collection_button") + self.horizontalLayout_2.addWidget(self.create_collection_button) + self.edit_collection_button = QtWidgets.QPushButton(self.button_frame) + self.edit_collection_button.setObjectName("edit_collection_button") + self.horizontalLayout_2.addWidget(self.edit_collection_button) + self.delete_collection_button = QtWidgets.QPushButton(self.button_frame) + self.delete_collection_button.setObjectName("delete_collection_button") + self.horizontalLayout_2.addWidget(self.delete_collection_button) + self.verticalLayout_2.addWidget(self.button_frame) + self.buttonBox = QtWidgets.QDialogButtonBox(Dialog) + self.buttonBox.setOrientation(QtCore.Qt.Horizontal) + self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel|QtWidgets.QDialogButtonBox.Ok) + self.buttonBox.setObjectName("buttonBox") + self.verticalLayout_2.addWidget(self.buttonBox) + + self.retranslateUi(Dialog) + self.buttonBox.accepted.connect(Dialog.accept) # type: ignore + self.buttonBox.rejected.connect(Dialog.reject) # type: ignore + QtCore.QMetaObject.connectSlotsByName(Dialog) + + def retranslateUi(self, Dialog): + _translate = QtCore.QCoreApplication.translate + Dialog.setWindowTitle(_translate("Dialog", "Dialog")) + self.collection_name_label.setText(_translate("Dialog", "Collection Name")) + self.presence_name_label.setText(_translate("Dialog", "Presence Name")) + self.presence_domain_label.setText(_translate("Dialog", "Presence Domain")) + self.art_name_label.setText(_translate("Dialog", "Art Name")) + self.create_collection_button.setText(_translate("Dialog", "Create Collection")) + self.edit_collection_button.setText(_translate("Dialog", "Edit Collection")) + self.delete_collection_button.setText(_translate("Dialog", "Delete Collection")) + + +if __name__ == "__main__": + import sys + app = QtWidgets.QApplication(sys.argv) + Dialog = QtWidgets.QDialog() + ui = Ui_Dialog() + ui.setupUi(Dialog) + Dialog.show() + sys.exit(app.exec_()) diff --git a/ArtNet/gui/dialogs/collection_select_dialog/collection_select_dialog.ui b/ArtNet/gui/dialogs/collection_select_dialog/collection_select_dialog.ui new file mode 100644 index 0000000..599def0 --- /dev/null +++ b/ArtNet/gui/dialogs/collection_select_dialog/collection_select_dialog.ui @@ -0,0 +1,267 @@ + + + Dialog + + + + 0 + 0 + 570 + 321 + + + + Dialog + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 0 + 0 + + + + + 75 + true + + + + Collection Name + + + + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 0 + 0 + + + + + 75 + true + + + + Presence Name + + + + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 0 + 0 + + + + + 75 + true + + + + Presence Domain + + + + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 75 + true + + + + Art Name + + + + + + + + + + + + + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + Qt::Horizontal + + + + 133 + 20 + + + + + + + + Create Collection + + + + + + + Edit Collection + + + + + + + Delete Collection + + + + + + + + + + Qt::Horizontal + + + QDialogButtonBox::Cancel|QDialogButtonBox::Ok + + + + + + + + + buttonBox + accepted() + Dialog + accept() + + + 248 + 254 + + + 157 + 274 + + + + + buttonBox + rejected() + Dialog + reject() + + + 316 + 260 + + + 286 + 274 + + + + + diff --git a/ArtNet/gui/dialogs/image_info_dialog/image_info_dialog.py b/ArtNet/gui/dialogs/image_info_dialog/image_info_dialog.py new file mode 100644 index 0000000..a0fc889 --- /dev/null +++ b/ArtNet/gui/dialogs/image_info_dialog/image_info_dialog.py @@ -0,0 +1,166 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'dialogs/image_info_dialog/image_info_dialog.ui' +# +# Created by: PyQt5 UI code generator 5.15.6 +# +# WARNING: Any manual changes made to this file will be lost when pyuic5 is +# run again. Do not edit this file unless you know what you are doing. + + +from PyQt5 import QtCore, QtGui, QtWidgets + + +class Ui_Dialog(object): + def setupUi(self, Dialog): + Dialog.setObjectName("Dialog") + Dialog.resize(679, 325) + self.verticalLayout = QtWidgets.QVBoxLayout(Dialog) + self.verticalLayout.setObjectName("verticalLayout") + self.main_frame = QtWidgets.QFrame(Dialog) + self.main_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.main_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.main_frame.setObjectName("main_frame") + self.horizontalLayout = QtWidgets.QHBoxLayout(self.main_frame) + self.horizontalLayout.setObjectName("horizontalLayout") + self.left_frame = QtWidgets.QVBoxLayout() + self.left_frame.setObjectName("left_frame") + self.title_label = QtWidgets.QLabel(self.main_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.title_label.sizePolicy().hasHeightForWidth()) + self.title_label.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setPointSize(11) + font.setBold(True) + font.setUnderline(True) + font.setWeight(75) + self.title_label.setFont(font) + self.title_label.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.title_label.setObjectName("title_label") + self.left_frame.addWidget(self.title_label) + self.presence_label = QtWidgets.QLabel(self.main_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.presence_label.sizePolicy().hasHeightForWidth()) + self.presence_label.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setPointSize(11) + font.setBold(True) + font.setUnderline(True) + font.setWeight(75) + self.presence_label.setFont(font) + self.presence_label.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.presence_label.setObjectName("presence_label") + self.left_frame.addWidget(self.presence_label) + self.artist_label = QtWidgets.QLabel(self.main_frame) + font = QtGui.QFont() + font.setPointSize(11) + font.setBold(True) + font.setUnderline(True) + font.setWeight(75) + self.artist_label.setFont(font) + self.artist_label.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.artist_label.setObjectName("artist_label") + self.left_frame.addWidget(self.artist_label) + self.collections_label = QtWidgets.QLabel(self.main_frame) + font = QtGui.QFont() + font.setPointSize(11) + font.setBold(True) + font.setUnderline(True) + font.setWeight(75) + self.collections_label.setFont(font) + self.collections_label.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.collections_label.setObjectName("collections_label") + self.left_frame.addWidget(self.collections_label) + self.paths_label = QtWidgets.QLabel(self.main_frame) + font = QtGui.QFont() + font.setPointSize(11) + font.setBold(True) + font.setUnderline(True) + font.setWeight(75) + self.paths_label.setFont(font) + self.paths_label.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.paths_label.setObjectName("paths_label") + self.left_frame.addWidget(self.paths_label) + self.source_label = QtWidgets.QLabel(self.main_frame) + font = QtGui.QFont() + font.setPointSize(11) + font.setBold(True) + font.setUnderline(True) + font.setWeight(75) + self.source_label.setFont(font) + self.source_label.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.source_label.setObjectName("source_label") + self.left_frame.addWidget(self.source_label) + self.horizontalLayout.addLayout(self.left_frame) + self.right_frame = QtWidgets.QVBoxLayout() + self.right_frame.setObjectName("right_frame") + self.title_text_label = QtWidgets.QLabel(self.main_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.title_text_label.sizePolicy().hasHeightForWidth()) + self.title_text_label.setSizePolicy(sizePolicy) + self.title_text_label.setObjectName("title_text_label") + self.right_frame.addWidget(self.title_text_label) + self.presence_text_label = QtWidgets.QLabel(self.main_frame) + self.presence_text_label.setObjectName("presence_text_label") + self.right_frame.addWidget(self.presence_text_label) + self.artist_text_label = QtWidgets.QLabel(self.main_frame) + self.artist_text_label.setObjectName("artist_text_label") + self.right_frame.addWidget(self.artist_text_label) + self.collection_text_label = QtWidgets.QLabel(self.main_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.collection_text_label.sizePolicy().hasHeightForWidth()) + self.collection_text_label.setSizePolicy(sizePolicy) + self.collection_text_label.setObjectName("collection_text_label") + self.right_frame.addWidget(self.collection_text_label) + self.path_text_label = QtWidgets.QLabel(self.main_frame) + self.path_text_label.setObjectName("path_text_label") + self.right_frame.addWidget(self.path_text_label) + self.source_text_label = QtWidgets.QLabel(self.main_frame) + self.source_text_label.setObjectName("source_text_label") + self.right_frame.addWidget(self.source_text_label) + self.horizontalLayout.addLayout(self.right_frame) + self.verticalLayout.addWidget(self.main_frame) + self.buttonBox = QtWidgets.QDialogButtonBox(Dialog) + self.buttonBox.setOrientation(QtCore.Qt.Horizontal) + self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Ok) + self.buttonBox.setObjectName("buttonBox") + self.verticalLayout.addWidget(self.buttonBox) + + self.retranslateUi(Dialog) + self.buttonBox.accepted.connect(Dialog.accept) # type: ignore + self.buttonBox.rejected.connect(Dialog.reject) # type: ignore + QtCore.QMetaObject.connectSlotsByName(Dialog) + + def retranslateUi(self, Dialog): + _translate = QtCore.QCoreApplication.translate + Dialog.setWindowTitle(_translate("Dialog", "Dialog")) + self.title_label.setText(_translate("Dialog", "Image Title:")) + self.presence_label.setText(_translate("Dialog", "Presences:")) + self.artist_label.setText(_translate("Dialog", "Artists:")) + self.collections_label.setText(_translate("Dialog", "Collections:")) + self.paths_label.setText(_translate("Dialog", "Path:")) + self.source_label.setText(_translate("Dialog", "Source")) + self.title_text_label.setText(_translate("Dialog", "title_text")) + self.presence_text_label.setText(_translate("Dialog", "presence_text")) + self.artist_text_label.setText(_translate("Dialog", "artist_text")) + self.collection_text_label.setText(_translate("Dialog", "collection_text")) + self.path_text_label.setText(_translate("Dialog", "path_text")) + self.source_text_label.setText(_translate("Dialog", "source_text")) + + +if __name__ == "__main__": + import sys + app = QtWidgets.QApplication(sys.argv) + Dialog = QtWidgets.QDialog() + ui = Ui_Dialog() + ui.setupUi(Dialog) + Dialog.show() + sys.exit(app.exec_()) diff --git a/ArtNet/gui/dialogs/image_info_dialog/image_info_dialog.ui b/ArtNet/gui/dialogs/image_info_dialog/image_info_dialog.ui new file mode 100644 index 0000000..7481722 --- /dev/null +++ b/ArtNet/gui/dialogs/image_info_dialog/image_info_dialog.ui @@ -0,0 +1,258 @@ + + + Dialog + + + + 0 + 0 + 679 + 325 + + + + Dialog + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + + + 0 + 0 + + + + + 11 + 75 + true + true + + + + Image Title: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + + 11 + 75 + true + true + + + + Presences: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 11 + 75 + true + true + + + + Artists: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 11 + 75 + true + true + + + + Collections: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 11 + 75 + true + true + + + + Path: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 11 + 75 + true + true + + + + Source + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + + + + + 0 + 0 + + + + title_text + + + + + + + presence_text + + + + + + + artist_text + + + + + + + + 0 + 0 + + + + collection_text + + + + + + + path_text + + + + + + + source_text + + + + + + + + + + + + Qt::Horizontal + + + QDialogButtonBox::Ok + + + + + + + + + buttonBox + accepted() + Dialog + accept() + + + 248 + 254 + + + 157 + 274 + + + + + buttonBox + rejected() + Dialog + reject() + + + 316 + 260 + + + 286 + 274 + + + + + diff --git a/ArtNet/gui/dialogs/image_select_dialog/image_select_dialog.py b/ArtNet/gui/dialogs/image_select_dialog/image_select_dialog.py new file mode 100644 index 0000000..b90ada7 --- /dev/null +++ b/ArtNet/gui/dialogs/image_select_dialog/image_select_dialog.py @@ -0,0 +1,225 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'dialogs/image_select_dialog/image_select_dialog.ui' +# +# Created by: PyQt5 UI code generator 5.15.6 +# +# WARNING: Any manual changes made to this file will be lost when pyuic5 is +# run again. Do not edit this file unless you know what you are doing. + + +from PyQt5 import QtCore, QtGui, QtWidgets + + +class Ui_Dialog(object): + def setupUi(self, Dialog): + Dialog.setObjectName("Dialog") + Dialog.resize(1326, 952) + self.verticalLayout = QtWidgets.QVBoxLayout(Dialog) + self.verticalLayout.setObjectName("verticalLayout") + self.frame = QtWidgets.QFrame(Dialog) + self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.frame.setObjectName("frame") + self.horizontalLayout = QtWidgets.QHBoxLayout(self.frame) + self.horizontalLayout.setObjectName("horizontalLayout") + self.display_frame = QtWidgets.QFrame(self.frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.display_frame.sizePolicy().hasHeightForWidth()) + self.display_frame.setSizePolicy(sizePolicy) + self.display_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.display_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.display_frame.setObjectName("display_frame") + self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.display_frame) + self.verticalLayout_4.setObjectName("verticalLayout_4") + self.art_name_label = QtWidgets.QLabel(self.display_frame) + self.art_name_label.setAlignment(QtCore.Qt.AlignCenter) + self.art_name_label.setObjectName("art_name_label") + self.verticalLayout_4.addWidget(self.art_name_label) + self.art_by_label = QtWidgets.QLabel(self.display_frame) + font = QtGui.QFont() + font.setPointSize(8) + self.art_by_label.setFont(font) + self.art_by_label.setAlignment(QtCore.Qt.AlignCenter) + self.art_by_label.setObjectName("art_by_label") + self.verticalLayout_4.addWidget(self.art_by_label) + self.art_presence_label = QtWidgets.QLabel(self.display_frame) + self.art_presence_label.setAlignment(QtCore.Qt.AlignCenter) + self.art_presence_label.setObjectName("art_presence_label") + self.verticalLayout_4.addWidget(self.art_presence_label) + self.art_frame = QtWidgets.QFrame(self.display_frame) + self.art_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.art_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.art_frame.setObjectName("art_frame") + self.verticalLayout_8 = QtWidgets.QVBoxLayout(self.art_frame) + self.verticalLayout_8.setObjectName("verticalLayout_8") + self.art_placeholder_label = QtWidgets.QLabel(self.art_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.art_placeholder_label.sizePolicy().hasHeightForWidth()) + self.art_placeholder_label.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.art_placeholder_label.setFont(font) + self.art_placeholder_label.setAlignment(QtCore.Qt.AlignCenter) + self.art_placeholder_label.setObjectName("art_placeholder_label") + self.verticalLayout_8.addWidget(self.art_placeholder_label) + self.art_selection_list = QtWidgets.QListView(self.art_frame) + self.art_selection_list.setObjectName("art_selection_list") + self.verticalLayout_8.addWidget(self.art_selection_list) + self.verticalLayout_4.addWidget(self.art_frame) + self.horizontalLayout.addWidget(self.display_frame) + self.select_frame = QtWidgets.QFrame(self.frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.select_frame.sizePolicy().hasHeightForWidth()) + self.select_frame.setSizePolicy(sizePolicy) + self.select_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.select_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.select_frame.setObjectName("select_frame") + self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.select_frame) + self.verticalLayout_3.setObjectName("verticalLayout_3") + self.select_tag_frame = QtWidgets.QFrame(self.select_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.select_tag_frame.sizePolicy().hasHeightForWidth()) + self.select_tag_frame.setSizePolicy(sizePolicy) + self.select_tag_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.select_tag_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.select_tag_frame.setObjectName("select_tag_frame") + self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.select_tag_frame) + self.verticalLayout_2.setObjectName("verticalLayout_2") + self.search_tag_label = QtWidgets.QLabel(self.select_tag_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.search_tag_label.setFont(font) + self.search_tag_label.setObjectName("search_tag_label") + self.verticalLayout_2.addWidget(self.search_tag_label) + self.search_tag_line = QtWidgets.QLineEdit(self.select_tag_frame) + self.search_tag_line.setObjectName("search_tag_line") + self.verticalLayout_2.addWidget(self.search_tag_line) + self.search_tag_list = QtWidgets.QListView(self.select_tag_frame) + self.search_tag_list.setObjectName("search_tag_list") + self.verticalLayout_2.addWidget(self.search_tag_list) + self.selected_tag_label = QtWidgets.QLabel(self.select_tag_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.selected_tag_label.setFont(font) + self.selected_tag_label.setObjectName("selected_tag_label") + self.verticalLayout_2.addWidget(self.selected_tag_label) + self.selected_tag_list = QtWidgets.QListView(self.select_tag_frame) + self.selected_tag_list.setObjectName("selected_tag_list") + self.verticalLayout_2.addWidget(self.selected_tag_list) + self.verticalLayout_3.addWidget(self.select_tag_frame) + self.select_presence_frame = QtWidgets.QFrame(self.select_frame) + self.select_presence_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.select_presence_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.select_presence_frame.setObjectName("select_presence_frame") + self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.select_presence_frame) + self.verticalLayout_5.setObjectName("verticalLayout_5") + self.search_presence_label = QtWidgets.QLabel(self.select_presence_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.search_presence_label.setFont(font) + self.search_presence_label.setObjectName("search_presence_label") + self.verticalLayout_5.addWidget(self.search_presence_label) + self.search_presence_frame = QtWidgets.QFrame(self.select_presence_frame) + self.search_presence_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.search_presence_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.search_presence_frame.setObjectName("search_presence_frame") + self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.search_presence_frame) + self.horizontalLayout_2.setObjectName("horizontalLayout_2") + self.search_presence_name_frame = QtWidgets.QFrame(self.search_presence_frame) + self.search_presence_name_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.search_presence_name_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.search_presence_name_frame.setObjectName("search_presence_name_frame") + self.verticalLayout_7 = QtWidgets.QVBoxLayout(self.search_presence_name_frame) + self.verticalLayout_7.setObjectName("verticalLayout_7") + self.search_presence_name_label = QtWidgets.QLabel(self.search_presence_name_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.search_presence_name_label.setFont(font) + self.search_presence_name_label.setObjectName("search_presence_name_label") + self.verticalLayout_7.addWidget(self.search_presence_name_label) + self.search_presence_name_line = QtWidgets.QLineEdit(self.search_presence_name_frame) + self.search_presence_name_line.setObjectName("search_presence_name_line") + self.verticalLayout_7.addWidget(self.search_presence_name_line) + self.horizontalLayout_2.addWidget(self.search_presence_name_frame) + self.search_presence_domain_frame = QtWidgets.QFrame(self.search_presence_frame) + self.search_presence_domain_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.search_presence_domain_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.search_presence_domain_frame.setObjectName("search_presence_domain_frame") + self.verticalLayout_6 = QtWidgets.QVBoxLayout(self.search_presence_domain_frame) + self.verticalLayout_6.setObjectName("verticalLayout_6") + self.search_presence_domain_label = QtWidgets.QLabel(self.search_presence_domain_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.search_presence_domain_label.setFont(font) + self.search_presence_domain_label.setObjectName("search_presence_domain_label") + self.verticalLayout_6.addWidget(self.search_presence_domain_label) + self.search_presence_domain_line = QtWidgets.QLineEdit(self.search_presence_domain_frame) + self.search_presence_domain_line.setObjectName("search_presence_domain_line") + self.verticalLayout_6.addWidget(self.search_presence_domain_line) + self.horizontalLayout_2.addWidget(self.search_presence_domain_frame) + self.verticalLayout_5.addWidget(self.search_presence_frame) + self.search_presence_list = QtWidgets.QListView(self.select_presence_frame) + self.search_presence_list.setObjectName("search_presence_list") + self.verticalLayout_5.addWidget(self.search_presence_list) + self.selected_presence_label = QtWidgets.QLabel(self.select_presence_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.selected_presence_label.setFont(font) + self.selected_presence_label.setObjectName("selected_presence_label") + self.verticalLayout_5.addWidget(self.selected_presence_label) + self.selected_presence_list = QtWidgets.QListView(self.select_presence_frame) + self.selected_presence_list.setObjectName("selected_presence_list") + self.verticalLayout_5.addWidget(self.selected_presence_list) + self.verticalLayout_3.addWidget(self.select_presence_frame) + self.horizontalLayout.addWidget(self.select_frame) + self.verticalLayout.addWidget(self.frame) + self.buttonBox = QtWidgets.QDialogButtonBox(Dialog) + self.buttonBox.setOrientation(QtCore.Qt.Horizontal) + self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel|QtWidgets.QDialogButtonBox.Ok) + self.buttonBox.setObjectName("buttonBox") + self.verticalLayout.addWidget(self.buttonBox) + + self.retranslateUi(Dialog) + self.buttonBox.accepted.connect(Dialog.accept) # type: ignore + self.buttonBox.rejected.connect(Dialog.reject) # type: ignore + QtCore.QMetaObject.connectSlotsByName(Dialog) + + def retranslateUi(self, Dialog): + _translate = QtCore.QCoreApplication.translate + Dialog.setWindowTitle(_translate("Dialog", "Dialog")) + self.art_name_label.setText(_translate("Dialog", "image_name")) + self.art_by_label.setText(_translate("Dialog", "by")) + self.art_presence_label.setText(_translate("Dialog", "presences")) + self.art_placeholder_label.setText(_translate("Dialog", "NO_ART")) + self.search_tag_label.setText(_translate("Dialog", "Search Tag")) + self.selected_tag_label.setText(_translate("Dialog", "Selected Tags")) + self.search_presence_label.setText(_translate("Dialog", "Search Presence")) + self.search_presence_name_label.setText(_translate("Dialog", "Name")) + self.search_presence_domain_label.setText(_translate("Dialog", "Domain")) + self.selected_presence_label.setText(_translate("Dialog", "Selected Presences")) + + +if __name__ == "__main__": + import sys + app = QtWidgets.QApplication(sys.argv) + Dialog = QtWidgets.QDialog() + ui = Ui_Dialog() + ui.setupUi(Dialog) + Dialog.show() + sys.exit(app.exec_()) diff --git a/ArtNet/gui/dialogs/image_select_dialog/image_select_dialog.ui b/ArtNet/gui/dialogs/image_select_dialog/image_select_dialog.ui new file mode 100644 index 0000000..4aa95dc --- /dev/null +++ b/ArtNet/gui/dialogs/image_select_dialog/image_select_dialog.ui @@ -0,0 +1,349 @@ + + + Dialog + + + + 0 + 0 + 1326 + 952 + + + + Dialog + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 0 + 0 + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + image_name + + + Qt::AlignCenter + + + + + + + + 8 + + + + by + + + Qt::AlignCenter + + + + + + + presences + + + Qt::AlignCenter + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 0 + 0 + + + + + 75 + true + + + + NO_ART + + + Qt::AlignCenter + + + + + + + + + + + + + + + + + 0 + 0 + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 0 + 0 + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 75 + true + + + + Search Tag + + + + + + + + + + + + + + 75 + true + + + + Selected Tags + + + + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 75 + true + + + + Search Presence + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 75 + true + + + + Name + + + + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 75 + true + + + + Domain + + + + + + + + + + + + + + + + + + + + 75 + true + + + + Selected Presences + + + + + + + + + + + + + + + + + + + Qt::Horizontal + + + QDialogButtonBox::Cancel|QDialogButtonBox::Ok + + + + + + + + + buttonBox + accepted() + Dialog + accept() + + + 248 + 254 + + + 157 + 274 + + + + + buttonBox + rejected() + Dialog + reject() + + + 316 + 260 + + + 286 + 274 + + + + + diff --git a/ArtNet/gui/dialogs/link_input_dialog/link_input_dialog.py b/ArtNet/gui/dialogs/link_input_dialog/link_input_dialog.py new file mode 100644 index 0000000..3f93066 --- /dev/null +++ b/ArtNet/gui/dialogs/link_input_dialog/link_input_dialog.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'dialogs/link_input_dialog/link_input_dialog.ui' +# +# Created by: PyQt5 UI code generator 5.15.6 +# +# WARNING: Any manual changes made to this file will be lost when pyuic5 is +# run again. Do not edit this file unless you know what you are doing. + + +from PyQt5 import QtCore, QtGui, QtWidgets + + +class Ui_Dialog(object): + def setupUi(self, Dialog): + Dialog.setObjectName("Dialog") + Dialog.resize(396, 100) + self.verticalLayout = QtWidgets.QVBoxLayout(Dialog) + self.verticalLayout.setObjectName("verticalLayout") + self.input_frame = QtWidgets.QFrame(Dialog) + self.input_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.input_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.input_frame.setObjectName("input_frame") + self.horizontalLayout = QtWidgets.QHBoxLayout(self.input_frame) + self.horizontalLayout.setObjectName("horizontalLayout") + self.link_label = QtWidgets.QLabel(self.input_frame) + self.link_label.setObjectName("link_label") + self.horizontalLayout.addWidget(self.link_label) + self.link_line = QtWidgets.QLineEdit(self.input_frame) + self.link_line.setObjectName("link_line") + self.horizontalLayout.addWidget(self.link_line) + self.verticalLayout.addWidget(self.input_frame) + self.buttonBox = QtWidgets.QDialogButtonBox(Dialog) + self.buttonBox.setOrientation(QtCore.Qt.Horizontal) + self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel|QtWidgets.QDialogButtonBox.Ok) + self.buttonBox.setObjectName("buttonBox") + self.verticalLayout.addWidget(self.buttonBox) + + self.retranslateUi(Dialog) + self.buttonBox.accepted.connect(Dialog.accept) # type: ignore + self.buttonBox.rejected.connect(Dialog.reject) # type: ignore + QtCore.QMetaObject.connectSlotsByName(Dialog) + + def retranslateUi(self, Dialog): + _translate = QtCore.QCoreApplication.translate + Dialog.setWindowTitle(_translate("Dialog", "Dialog")) + self.link_label.setText(_translate("Dialog", "Link:")) + + +if __name__ == "__main__": + import sys + app = QtWidgets.QApplication(sys.argv) + Dialog = QtWidgets.QDialog() + ui = Ui_Dialog() + ui.setupUi(Dialog) + Dialog.show() + sys.exit(app.exec_()) diff --git a/ArtNet/gui/dialogs/link_input_dialog/link_input_dialog.ui b/ArtNet/gui/dialogs/link_input_dialog/link_input_dialog.ui new file mode 100644 index 0000000..9025070 --- /dev/null +++ b/ArtNet/gui/dialogs/link_input_dialog/link_input_dialog.ui @@ -0,0 +1,86 @@ + + + Dialog + + + + 0 + 0 + 396 + 100 + + + + Dialog + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + Link: + + + + + + + + + + + + + Qt::Horizontal + + + QDialogButtonBox::Cancel|QDialogButtonBox::Ok + + + + + + + + + buttonBox + accepted() + Dialog + accept() + + + 248 + 254 + + + 157 + 274 + + + + + buttonBox + rejected() + Dialog + reject() + + + 316 + 260 + + + 286 + 274 + + + + + diff --git a/ArtNet/gui/dockers/topic/artist_topic_docker.py b/ArtNet/gui/dockers/topic/artist_topic_docker.py new file mode 100644 index 0000000..aae9943 --- /dev/null +++ b/ArtNet/gui/dockers/topic/artist_topic_docker.py @@ -0,0 +1,173 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'dockers/topic/artist_topic_docker.ui' +# +# Created by: PyQt5 UI code generator 5.15.6 +# +# WARNING: Any manual changes made to this file will be lost when pyuic5 is +# run again. Do not edit this file unless you know what you are doing. + + +from PyQt5 import QtCore, QtGui, QtWidgets + + +class Ui_artist_docker(object): + def setupUi(self, artist_docker): + artist_docker.setObjectName("artist_docker") + artist_docker.resize(369, 735) + self.verticalLayout = QtWidgets.QVBoxLayout(artist_docker) + self.verticalLayout.setObjectName("verticalLayout") + self.frame = QtWidgets.QFrame(artist_docker) + self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.frame.setObjectName("frame") + self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.frame) + self.verticalLayout_2.setObjectName("verticalLayout_2") + self.docker_topic_label = QtWidgets.QLabel(self.frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.docker_topic_label.sizePolicy().hasHeightForWidth()) + self.docker_topic_label.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setPointSize(13) + font.setBold(True) + font.setWeight(75) + self.docker_topic_label.setFont(font) + self.docker_topic_label.setAlignment(QtCore.Qt.AlignCenter) + self.docker_topic_label.setObjectName("docker_topic_label") + self.verticalLayout_2.addWidget(self.docker_topic_label) + self.search_artist_frame = QtWidgets.QFrame(self.frame) + self.search_artist_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.search_artist_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.search_artist_frame.setObjectName("search_artist_frame") + self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.search_artist_frame) + self.verticalLayout_4.setObjectName("verticalLayout_4") + self.search_artist_name_frame = QtWidgets.QFrame(self.search_artist_frame) + self.search_artist_name_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.search_artist_name_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.search_artist_name_frame.setObjectName("search_artist_name_frame") + self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.search_artist_name_frame) + self.verticalLayout_3.setObjectName("verticalLayout_3") + self.search_artist_name_label = QtWidgets.QLabel(self.search_artist_name_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.search_artist_name_label.setFont(font) + self.search_artist_name_label.setObjectName("search_artist_name_label") + self.verticalLayout_3.addWidget(self.search_artist_name_label) + self.search_artist_name_line = QtWidgets.QLineEdit(self.search_artist_name_frame) + self.search_artist_name_line.setObjectName("search_artist_name_line") + self.verticalLayout_3.addWidget(self.search_artist_name_line) + self.verticalLayout_4.addWidget(self.search_artist_name_frame) + self.search_artist_list = QtWidgets.QListView(self.search_artist_frame) + self.search_artist_list.setObjectName("search_artist_list") + self.verticalLayout_4.addWidget(self.search_artist_list) + self.selected_artist_label = QtWidgets.QLabel(self.search_artist_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.selected_artist_label.setFont(font) + self.selected_artist_label.setObjectName("selected_artist_label") + self.verticalLayout_4.addWidget(self.selected_artist_label) + self.selected_artist_frame = QtWidgets.QFrame(self.search_artist_frame) + self.selected_artist_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.selected_artist_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.selected_artist_frame.setObjectName("selected_artist_frame") + self.verticalLayout_6 = QtWidgets.QVBoxLayout(self.selected_artist_frame) + self.verticalLayout_6.setObjectName("verticalLayout_6") + self.selected_artist_box = QtWidgets.QCheckBox(self.selected_artist_frame) + self.selected_artist_box.setObjectName("selected_artist_box") + self.verticalLayout_6.addWidget(self.selected_artist_box) + self.selected_artist_topic_list = QtWidgets.QListView(self.selected_artist_frame) + self.selected_artist_topic_list.setObjectName("selected_artist_topic_list") + self.verticalLayout_6.addWidget(self.selected_artist_topic_list) + self.verticalLayout_4.addWidget(self.selected_artist_frame) + self.verticalLayout_2.addWidget(self.search_artist_frame) + self.search_topic_frame = QtWidgets.QFrame(self.frame) + self.search_topic_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.search_topic_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.search_topic_frame.setObjectName("search_topic_frame") + self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.search_topic_frame) + self.verticalLayout_5.setObjectName("verticalLayout_5") + self.topic_label = QtWidgets.QLabel(self.search_topic_frame) + font = QtGui.QFont() + font.setPointSize(13) + font.setBold(True) + font.setWeight(75) + self.topic_label.setFont(font) + self.topic_label.setAlignment(QtCore.Qt.AlignCenter) + self.topic_label.setObjectName("topic_label") + self.verticalLayout_5.addWidget(self.topic_label) + self.search_topic_name_frame = QtWidgets.QFrame(self.search_topic_frame) + self.search_topic_name_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.search_topic_name_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.search_topic_name_frame.setObjectName("search_topic_name_frame") + self.verticalLayout_7 = QtWidgets.QVBoxLayout(self.search_topic_name_frame) + self.verticalLayout_7.setObjectName("verticalLayout_7") + self.search_topic_name_label = QtWidgets.QLabel(self.search_topic_name_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.search_topic_name_label.setFont(font) + self.search_topic_name_label.setObjectName("search_topic_name_label") + self.verticalLayout_7.addWidget(self.search_topic_name_label) + self.search_topic_name_line = QtWidgets.QLineEdit(self.search_topic_name_frame) + self.search_topic_name_line.setObjectName("search_topic_name_line") + self.verticalLayout_7.addWidget(self.search_topic_name_line) + self.verticalLayout_5.addWidget(self.search_topic_name_frame) + self.selected_topic_label = QtWidgets.QLabel(self.search_topic_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.selected_topic_label.setFont(font) + self.selected_topic_label.setObjectName("selected_topic_label") + self.verticalLayout_5.addWidget(self.selected_topic_label) + self.selected_topic_list = QtWidgets.QListView(self.search_topic_frame) + self.selected_topic_list.setObjectName("selected_topic_list") + self.verticalLayout_5.addWidget(self.selected_topic_list) + self.topic_button_frame = QtWidgets.QFrame(self.search_topic_frame) + self.topic_button_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.topic_button_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.topic_button_frame.setObjectName("topic_button_frame") + self.horizontalLayout = QtWidgets.QHBoxLayout(self.topic_button_frame) + self.horizontalLayout.setObjectName("horizontalLayout") + self.create_topic_button = QtWidgets.QPushButton(self.topic_button_frame) + self.create_topic_button.setObjectName("create_topic_button") + self.horizontalLayout.addWidget(self.create_topic_button) + self.edit_topic_button = QtWidgets.QPushButton(self.topic_button_frame) + self.edit_topic_button.setObjectName("edit_topic_button") + self.horizontalLayout.addWidget(self.edit_topic_button) + self.delete_topic_button = QtWidgets.QPushButton(self.topic_button_frame) + self.delete_topic_button.setObjectName("delete_topic_button") + self.horizontalLayout.addWidget(self.delete_topic_button) + self.verticalLayout_5.addWidget(self.topic_button_frame) + self.verticalLayout_2.addWidget(self.search_topic_frame) + self.verticalLayout.addWidget(self.frame) + + self.retranslateUi(artist_docker) + QtCore.QMetaObject.connectSlotsByName(artist_docker) + + def retranslateUi(self, artist_docker): + _translate = QtCore.QCoreApplication.translate + artist_docker.setWindowTitle(_translate("artist_docker", "Form")) + self.docker_topic_label.setText(_translate("artist_docker", "Artist")) + self.search_artist_name_label.setText(_translate("artist_docker", "Name:")) + self.selected_artist_label.setText(_translate("artist_docker", "Selected Artist:")) + self.selected_artist_box.setText(_translate("artist_docker", "artist_name #ID")) + self.topic_label.setText(_translate("artist_docker", "Topic")) + self.search_topic_name_label.setText(_translate("artist_docker", "Name:")) + self.selected_topic_label.setText(_translate("artist_docker", "Selected Topics:")) + self.create_topic_button.setText(_translate("artist_docker", "Create Topic")) + self.edit_topic_button.setText(_translate("artist_docker", "Edit Topic")) + self.delete_topic_button.setText(_translate("artist_docker", "Delete Topic")) + + +if __name__ == "__main__": + import sys + app = QtWidgets.QApplication(sys.argv) + artist_docker = QtWidgets.QWidget() + ui = Ui_artist_docker() + ui.setupUi(artist_docker) + artist_docker.show() + sys.exit(app.exec_()) diff --git a/ArtNet/gui/dockers/topic/artist_topic_docker.ui b/ArtNet/gui/dockers/topic/artist_topic_docker.ui new file mode 100644 index 0000000..7eb11ad --- /dev/null +++ b/ArtNet/gui/dockers/topic/artist_topic_docker.ui @@ -0,0 +1,240 @@ + + + artist_docker + + + + 0 + 0 + 369 + 735 + + + + Form + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 0 + 0 + + + + + 13 + 75 + true + + + + Artist + + + Qt::AlignCenter + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 75 + true + + + + Name: + + + + + + + + + + + + + + + + + 75 + true + + + + Selected Artist: + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + artist_name #ID + + + + + + + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 13 + 75 + true + + + + Topic + + + Qt::AlignCenter + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 75 + true + + + + Name: + + + + + + + + + + + + + + 75 + true + + + + Selected Topics: + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + Create Topic + + + + + + + Edit Topic + + + + + + + Delete Topic + + + + + + + + + + + + + + + + + diff --git a/ArtNet/gui/windows/browser/picture_browser.py b/ArtNet/gui/windows/browser/picture_browser.py new file mode 100644 index 0000000..bbe7932 --- /dev/null +++ b/ArtNet/gui/windows/browser/picture_browser.py @@ -0,0 +1,257 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'windows/browser/picture_browser.ui' +# +# Created by: PyQt5 UI code generator 5.15.6 +# +# WARNING: Any manual changes made to this file will be lost when pyuic5 is +# run again. Do not edit this file unless you know what you are doing. + + +from PyQt5 import QtCore, QtGui, QtWidgets + + +class Ui_MainWindow(object): + def setupUi(self, MainWindow): + MainWindow.setObjectName("MainWindow") + MainWindow.resize(1176, 610) + self.centralwidget = QtWidgets.QWidget(MainWindow) + self.centralwidget.setObjectName("centralwidget") + self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.centralwidget) + self.verticalLayout_3.setObjectName("verticalLayout_3") + self.top_frame = QtWidgets.QFrame(self.centralwidget) + self.top_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.top_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.top_frame.setObjectName("top_frame") + self.horizontalLayout = QtWidgets.QHBoxLayout(self.top_frame) + self.horizontalLayout.setObjectName("horizontalLayout") + self.browse_frame = QtWidgets.QFrame(self.top_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.browse_frame.sizePolicy().hasHeightForWidth()) + self.browse_frame.setSizePolicy(sizePolicy) + self.browse_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.browse_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.browse_frame.setObjectName("browse_frame") + self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.browse_frame) + self.verticalLayout_2.setObjectName("verticalLayout_2") + self.image_headbar_frame = QtWidgets.QFrame(self.browse_frame) + self.image_headbar_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.image_headbar_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.image_headbar_frame.setObjectName("image_headbar_frame") + self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.image_headbar_frame) + self.horizontalLayout_3.setObjectName("horizontalLayout_3") + self.image_title_label = QtWidgets.QLabel(self.image_headbar_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.image_title_label.sizePolicy().hasHeightForWidth()) + self.image_title_label.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setPointSize(10) + font.setBold(True) + font.setWeight(75) + self.image_title_label.setFont(font) + self.image_title_label.setLayoutDirection(QtCore.Qt.LeftToRight) + self.image_title_label.setAlignment(QtCore.Qt.AlignCenter) + self.image_title_label.setObjectName("image_title_label") + self.horizontalLayout_3.addWidget(self.image_title_label) + self.image_number_spinbox = QtWidgets.QSpinBox(self.image_headbar_frame) + self.image_number_spinbox.setObjectName("image_number_spinbox") + self.horizontalLayout_3.addWidget(self.image_number_spinbox) + self.image_info_button = QtWidgets.QToolButton(self.image_headbar_frame) + self.image_info_button.setObjectName("image_info_button") + self.horizontalLayout_3.addWidget(self.image_info_button) + self.verticalLayout_2.addWidget(self.image_headbar_frame) + self.graphics_view = QtWidgets.QGraphicsView(self.browse_frame) + self.graphics_view.setMinimumSize(QtCore.QSize(800, 0)) + self.graphics_view.setObjectName("graphics_view") + self.verticalLayout_2.addWidget(self.graphics_view) + self.toggle_detail_frame_button = QtWidgets.QToolButton(self.browse_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.toggle_detail_frame_button.sizePolicy().hasHeightForWidth()) + self.toggle_detail_frame_button.setSizePolicy(sizePolicy) + self.toggle_detail_frame_button.setArrowType(QtCore.Qt.DownArrow) + self.toggle_detail_frame_button.setObjectName("toggle_detail_frame_button") + self.verticalLayout_2.addWidget(self.toggle_detail_frame_button) + self.horizontalLayout.addWidget(self.browse_frame) + self.right_frame = QtWidgets.QFrame(self.top_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.right_frame.sizePolicy().hasHeightForWidth()) + self.right_frame.setSizePolicy(sizePolicy) + self.right_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.right_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.right_frame.setObjectName("right_frame") + self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.right_frame) + self.horizontalLayout_2.setObjectName("horizontalLayout_2") + self.toggle_search_frame_button = QtWidgets.QToolButton(self.right_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.toggle_search_frame_button.sizePolicy().hasHeightForWidth()) + self.toggle_search_frame_button.setSizePolicy(sizePolicy) + self.toggle_search_frame_button.setArrowType(QtCore.Qt.LeftArrow) + self.toggle_search_frame_button.setObjectName("toggle_search_frame_button") + self.horizontalLayout_2.addWidget(self.toggle_search_frame_button) + self.search_param_frame = QtWidgets.QFrame(self.right_frame) + self.search_param_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.search_param_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.search_param_frame.setObjectName("search_param_frame") + self.verticalLayout = QtWidgets.QVBoxLayout(self.search_param_frame) + self.verticalLayout.setObjectName("verticalLayout") + self.tag_search_label = QtWidgets.QLabel(self.search_param_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.tag_search_label.setFont(font) + self.tag_search_label.setObjectName("tag_search_label") + self.verticalLayout.addWidget(self.tag_search_label) + self.tag_search_bar = QtWidgets.QLineEdit(self.search_param_frame) + self.tag_search_bar.setObjectName("tag_search_bar") + self.verticalLayout.addWidget(self.tag_search_bar) + self.result_tags_label = QtWidgets.QLabel(self.search_param_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.result_tags_label.setFont(font) + self.result_tags_label.setObjectName("result_tags_label") + self.verticalLayout.addWidget(self.result_tags_label) + self.result_tags_listview = QtWidgets.QListView(self.search_param_frame) + self.result_tags_listview.setObjectName("result_tags_listview") + self.verticalLayout.addWidget(self.result_tags_listview) + self.button_frame = QtWidgets.QFrame(self.search_param_frame) + self.button_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.button_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.button_frame.setObjectName("button_frame") + self.horizontalLayout_4 = QtWidgets.QHBoxLayout(self.button_frame) + self.horizontalLayout_4.setObjectName("horizontalLayout_4") + self.open_location_button = QtWidgets.QPushButton(self.button_frame) + self.open_location_button.setObjectName("open_location_button") + self.horizontalLayout_4.addWidget(self.open_location_button) + self.delete_art_button = QtWidgets.QPushButton(self.button_frame) + self.delete_art_button.setObjectName("delete_art_button") + self.horizontalLayout_4.addWidget(self.delete_art_button) + self.verticalLayout.addWidget(self.button_frame) + self.horizontalLayout_2.addWidget(self.search_param_frame) + self.horizontalLayout.addWidget(self.right_frame) + self.verticalLayout_3.addWidget(self.top_frame) + self.bottom_frame = QtWidgets.QFrame(self.centralwidget) + self.bottom_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.bottom_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.bottom_frame.setObjectName("bottom_frame") + self.horizontalLayout_5 = QtWidgets.QHBoxLayout(self.bottom_frame) + self.horizontalLayout_5.setObjectName("horizontalLayout_5") + self.description_frame = QtWidgets.QFrame(self.bottom_frame) + self.description_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.description_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.description_frame.setObjectName("description_frame") + self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.description_frame) + self.verticalLayout_4.setObjectName("verticalLayout_4") + self.label_4 = QtWidgets.QLabel(self.description_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_4.setFont(font) + self.label_4.setObjectName("label_4") + self.verticalLayout_4.addWidget(self.label_4) + self.description_edit = QtWidgets.QTextEdit(self.description_frame) + self.description_edit.setObjectName("description_edit") + self.verticalLayout_4.addWidget(self.description_edit) + self.horizontalLayout_5.addWidget(self.description_frame) + self.collection_frame = QtWidgets.QFrame(self.bottom_frame) + self.collection_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.collection_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.collection_frame.setObjectName("collection_frame") + self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.collection_frame) + self.verticalLayout_5.setObjectName("verticalLayout_5") + self.collections_label = QtWidgets.QLabel(self.collection_frame) + font = QtGui.QFont() + font.setBold(True) + font.setUnderline(False) + font.setWeight(75) + self.collections_label.setFont(font) + self.collections_label.setObjectName("collections_label") + self.verticalLayout_5.addWidget(self.collections_label) + self.collections_list = QtWidgets.QListView(self.collection_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.collections_list.sizePolicy().hasHeightForWidth()) + self.collections_list.setSizePolicy(sizePolicy) + self.collections_list.setObjectName("collections_list") + self.verticalLayout_5.addWidget(self.collections_list) + self.horizontalLayout_5.addWidget(self.collection_frame) + self.verticalLayout_3.addWidget(self.bottom_frame) + MainWindow.setCentralWidget(self.centralwidget) + self.menubar = QtWidgets.QMenuBar(MainWindow) + self.menubar.setGeometry(QtCore.QRect(0, 0, 1176, 34)) + self.menubar.setObjectName("menubar") + self.menuArtNet = QtWidgets.QMenu(self.menubar) + self.menuArtNet.setObjectName("menuArtNet") + self.menuOther_Apps = QtWidgets.QMenu(self.menuArtNet) + self.menuOther_Apps.setObjectName("menuOther_Apps") + self.menuCollection = QtWidgets.QMenu(self.menubar) + self.menuCollection.setObjectName("menuCollection") + MainWindow.setMenuBar(self.menubar) + self.statusbar = QtWidgets.QStatusBar(MainWindow) + self.statusbar.setObjectName("statusbar") + MainWindow.setStatusBar(self.statusbar) + self.actionArtNet_Importer = QtWidgets.QAction(MainWindow) + self.actionArtNet_Importer.setObjectName("actionArtNet_Importer") + self.actionChange_DB_Connection = QtWidgets.QAction(MainWindow) + self.actionChange_DB_Connection.setObjectName("actionChange_DB_Connection") + self.actionChange_ArtNet_root = QtWidgets.QAction(MainWindow) + self.actionChange_ArtNet_root.setObjectName("actionChange_ArtNet_root") + self.actionSearch_Collection = QtWidgets.QAction(MainWindow) + self.actionSearch_Collection.setObjectName("actionSearch_Collection") + self.actionEdit_Collection = QtWidgets.QAction(MainWindow) + self.actionEdit_Collection.setObjectName("actionEdit_Collection") + self.menuOther_Apps.addAction(self.actionArtNet_Importer) + self.menuArtNet.addAction(self.actionChange_DB_Connection) + self.menuArtNet.addAction(self.actionChange_ArtNet_root) + self.menuArtNet.addSeparator() + self.menuArtNet.addAction(self.menuOther_Apps.menuAction()) + self.menuCollection.addAction(self.actionSearch_Collection) + self.menuCollection.addAction(self.actionEdit_Collection) + self.menubar.addAction(self.menuArtNet.menuAction()) + self.menubar.addAction(self.menuCollection.menuAction()) + + self.retranslateUi(MainWindow) + QtCore.QMetaObject.connectSlotsByName(MainWindow) + + def retranslateUi(self, MainWindow): + _translate = QtCore.QCoreApplication.translate + MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow")) + self.image_title_label.setText(_translate("MainWindow", "Image_Title")) + self.image_info_button.setText(_translate("MainWindow", "?")) + self.toggle_detail_frame_button.setText(_translate("MainWindow", "v")) + self.toggle_search_frame_button.setText(_translate("MainWindow", "<")) + self.tag_search_label.setText(_translate("MainWindow", "Search")) + self.result_tags_label.setText(_translate("MainWindow", "Result Stats")) + self.open_location_button.setText(_translate("MainWindow", "Open Location")) + self.delete_art_button.setText(_translate("MainWindow", "Delete")) + self.label_4.setText(_translate("MainWindow", "Description")) + self.collections_label.setText(_translate("MainWindow", "Collections")) + self.menuArtNet.setTitle(_translate("MainWindow", "ArtNet")) + self.menuOther_Apps.setTitle(_translate("MainWindow", "Other Apps")) + self.menuCollection.setTitle(_translate("MainWindow", "Collection")) + self.actionArtNet_Importer.setText(_translate("MainWindow", "ArtNet Importer")) + self.actionChange_DB_Connection.setText(_translate("MainWindow", "Change DB Connection")) + self.actionChange_ArtNet_root.setText(_translate("MainWindow", "Change ArtNet Root")) + self.actionSearch_Collection.setText(_translate("MainWindow", "Search Collection")) + self.actionEdit_Collection.setText(_translate("MainWindow", "Edit Collection")) + + +if __name__ == "__main__": + import sys + app = QtWidgets.QApplication(sys.argv) + MainWindow = QtWidgets.QMainWindow() + ui = Ui_MainWindow() + ui.setupUi(MainWindow) + MainWindow.show() + sys.exit(app.exec_()) diff --git a/ArtNet/gui/windows/browser/picture_browser.ui b/ArtNet/gui/windows/browser/picture_browser.ui new file mode 100644 index 0000000..b50e673 --- /dev/null +++ b/ArtNet/gui/windows/browser/picture_browser.ui @@ -0,0 +1,367 @@ + + + MainWindow + + + + 0 + 0 + 1176 + 610 + + + + MainWindow + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 0 + 0 + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 0 + 0 + + + + + 10 + 75 + true + + + + Qt::LeftToRight + + + Image_Title + + + Qt::AlignCenter + + + + + + + + + + ? + + + + + + + + + + + 800 + 0 + + + + + + + + + 0 + 0 + + + + v + + + Qt::DownArrow + + + + + + + + + + + 0 + 0 + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 0 + 0 + + + + < + + + Qt::LeftArrow + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 75 + true + + + + Search + + + + + + + + + + + 75 + true + + + + Result Stats + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + Open Location + + + + + + + Delete + + + + + + + + + + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 75 + true + + + + Description + + + + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 75 + true + false + + + + Collections + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + 0 + 0 + 1176 + 34 + + + + + ArtNet + + + + Other Apps + + + + + + + + + + + Collection + + + + + + + + + + + ArtNet Importer + + + + + Change DB Connection + + + + + Change ArtNet Root + + + + + Search Collection + + + + + Edit Collection + + + + + + diff --git a/ArtNet/gui/windows/importer/picture_importer.py b/ArtNet/gui/windows/importer/picture_importer.py new file mode 100644 index 0000000..4a51c19 --- /dev/null +++ b/ArtNet/gui/windows/importer/picture_importer.py @@ -0,0 +1,401 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'windows/importer/picture_importer.ui' +# +# Created by: PyQt5 UI code generator 5.15.6 +# +# WARNING: Any manual changes made to this file will be lost when pyuic5 is +# run again. Do not edit this file unless you know what you are doing. + + +from PyQt5 import QtCore, QtGui, QtWidgets + + +class Ui_MainWindow(object): + def setupUi(self, MainWindow): + MainWindow.setObjectName("MainWindow") + MainWindow.resize(1367, 888) + self.centralwidget = QtWidgets.QWidget(MainWindow) + self.centralwidget.setEnabled(True) + self.centralwidget.setObjectName("centralwidget") + self.horizontalLayout = QtWidgets.QHBoxLayout(self.centralwidget) + self.horizontalLayout.setSizeConstraint(QtWidgets.QLayout.SetDefaultConstraint) + self.horizontalLayout.setObjectName("horizontalLayout") + self.left_frame = QtWidgets.QFrame(self.centralwidget) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.left_frame.sizePolicy().hasHeightForWidth()) + self.left_frame.setSizePolicy(sizePolicy) + self.left_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.left_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.left_frame.setObjectName("left_frame") + self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.left_frame) + self.horizontalLayout_2.setObjectName("horizontalLayout_2") + self.presence_docker_button = QtWidgets.QToolButton(self.left_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.presence_docker_button.sizePolicy().hasHeightForWidth()) + self.presence_docker_button.setSizePolicy(sizePolicy) + self.presence_docker_button.setArrowType(QtCore.Qt.LeftArrow) + self.presence_docker_button.setObjectName("presence_docker_button") + self.horizontalLayout_2.addWidget(self.presence_docker_button) + self.presence_docker_layout = QtWidgets.QVBoxLayout() + self.presence_docker_layout.setObjectName("presence_docker_layout") + self.horizontalLayout_2.addLayout(self.presence_docker_layout) + self.left_layout = QtWidgets.QVBoxLayout() + self.left_layout.setSizeConstraint(QtWidgets.QLayout.SetMinimumSize) + self.left_layout.setObjectName("left_layout") + self.prev_image_button = QtWidgets.QToolButton(self.left_frame) + self.prev_image_button.setArrowType(QtCore.Qt.LeftArrow) + self.prev_image_button.setObjectName("prev_image_button") + self.left_layout.addWidget(self.prev_image_button) + self.horizontalLayout_2.addLayout(self.left_layout) + self.center_frame = QtWidgets.QFrame(self.left_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.center_frame.sizePolicy().hasHeightForWidth()) + self.center_frame.setSizePolicy(sizePolicy) + self.center_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.center_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.center_frame.setObjectName("center_frame") + self.verticalLayout = QtWidgets.QVBoxLayout(self.center_frame) + self.verticalLayout.setObjectName("verticalLayout") + self.art_header_frame = QtWidgets.QFrame(self.center_frame) + self.art_header_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.art_header_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.art_header_frame.setObjectName("art_header_frame") + self.horizontalLayout_4 = QtWidgets.QHBoxLayout(self.art_header_frame) + self.horizontalLayout_4.setObjectName("horizontalLayout_4") + self.image_title_line = QtWidgets.QLineEdit(self.art_header_frame) + font = QtGui.QFont() + font.setPointSize(10) + font.setBold(True) + font.setWeight(75) + self.image_title_line.setFont(font) + self.image_title_line.setAutoFillBackground(False) + self.image_title_line.setAlignment(QtCore.Qt.AlignCenter) + self.image_title_line.setReadOnly(False) + self.image_title_line.setObjectName("image_title_line") + self.horizontalLayout_4.addWidget(self.image_title_line) + self.imageNumberSpinBox = QtWidgets.QSpinBox(self.art_header_frame) + self.imageNumberSpinBox.setObjectName("imageNumberSpinBox") + self.horizontalLayout_4.addWidget(self.imageNumberSpinBox) + self.verticalLayout.addWidget(self.art_header_frame) + self.image_file_label = QtWidgets.QLabel(self.center_frame) + self.image_file_label.setAlignment(QtCore.Qt.AlignCenter) + self.image_file_label.setObjectName("image_file_label") + self.verticalLayout.addWidget(self.image_file_label) + self.author_by = QtWidgets.QLabel(self.center_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.author_by.sizePolicy().hasHeightForWidth()) + self.author_by.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setPointSize(7) + font.setBold(False) + font.setWeight(50) + self.author_by.setFont(font) + self.author_by.setAlignment(QtCore.Qt.AlignCenter) + self.author_by.setObjectName("author_by") + self.verticalLayout.addWidget(self.author_by) + self.image_author_label = QtWidgets.QLabel(self.center_frame) + font = QtGui.QFont() + font.setPointSize(10) + font.setBold(False) + font.setItalic(False) + font.setWeight(50) + self.image_author_label.setFont(font) + self.image_author_label.setAlignment(QtCore.Qt.AlignCenter) + self.image_author_label.setObjectName("image_author_label") + self.verticalLayout.addWidget(self.image_author_label) + self.image_frame = QtWidgets.QFrame(self.center_frame) + self.image_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.image_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.image_frame.setObjectName("image_frame") + self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.image_frame) + self.verticalLayout_2.setObjectName("verticalLayout_2") + self.image_label = QtWidgets.QLabel(self.image_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.MinimumExpanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.image_label.sizePolicy().hasHeightForWidth()) + self.image_label.setSizePolicy(sizePolicy) + self.image_label.setMaximumSize(QtCore.QSize(16777215, 16777215)) + self.image_label.setAlignment(QtCore.Qt.AlignCenter) + self.image_label.setObjectName("image_label") + self.verticalLayout_2.addWidget(self.image_label) + self.verticalLayout.addWidget(self.image_frame) + self.link_frame = QtWidgets.QFrame(self.center_frame) + self.link_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.link_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.link_frame.setObjectName("link_frame") + self.horizontalLayout_5 = QtWidgets.QHBoxLayout(self.link_frame) + self.horizontalLayout_5.setObjectName("horizontalLayout_5") + self.link_label = QtWidgets.QLabel(self.link_frame) + font = QtGui.QFont() + font.setPointSize(8) + font.setBold(True) + font.setWeight(75) + self.link_label.setFont(font) + self.link_label.setAlignment(QtCore.Qt.AlignCenter) + self.link_label.setObjectName("link_label") + self.horizontalLayout_5.addWidget(self.link_label) + self.link_button = QtWidgets.QToolButton(self.link_frame) + self.link_button.setObjectName("link_button") + self.horizontalLayout_5.addWidget(self.link_button) + self.verticalLayout.addWidget(self.link_frame) + self.collection_frame = QtWidgets.QFrame(self.center_frame) + self.collection_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.collection_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.collection_frame.setObjectName("collection_frame") + self.horizontalLayout_6 = QtWidgets.QHBoxLayout(self.collection_frame) + self.horizontalLayout_6.setObjectName("horizontalLayout_6") + self.collections_label = QtWidgets.QLabel(self.collection_frame) + font = QtGui.QFont() + font.setPointSize(8) + font.setBold(True) + font.setWeight(75) + self.collections_label.setFont(font) + self.collections_label.setAlignment(QtCore.Qt.AlignCenter) + self.collections_label.setObjectName("collections_label") + self.horizontalLayout_6.addWidget(self.collections_label) + self.collections_button = QtWidgets.QToolButton(self.collection_frame) + self.collections_button.setObjectName("collections_button") + self.horizontalLayout_6.addWidget(self.collections_button) + self.verticalLayout.addWidget(self.collection_frame) + self.description_label = QtWidgets.QLabel(self.center_frame) + self.description_label.setObjectName("description_label") + self.verticalLayout.addWidget(self.description_label) + self.description_edit = QtWidgets.QTextEdit(self.center_frame) + self.description_edit.setObjectName("description_edit") + self.verticalLayout.addWidget(self.description_edit) + self.horizontalLayout_2.addWidget(self.center_frame) + self.right_layout = QtWidgets.QVBoxLayout() + self.right_layout.setSizeConstraint(QtWidgets.QLayout.SetMinimumSize) + self.right_layout.setObjectName("right_layout") + self.next_image_button = QtWidgets.QToolButton(self.left_frame) + self.next_image_button.setArrowType(QtCore.Qt.RightArrow) + self.next_image_button.setObjectName("next_image_button") + self.right_layout.addWidget(self.next_image_button) + self.horizontalLayout_2.addLayout(self.right_layout) + self.horizontalLayout.addWidget(self.left_frame) + self.right_frame = QtWidgets.QFrame(self.centralwidget) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.right_frame.sizePolicy().hasHeightForWidth()) + self.right_frame.setSizePolicy(sizePolicy) + self.right_frame.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.right_frame.setFrameShadow(QtWidgets.QFrame.Raised) + self.right_frame.setObjectName("right_frame") + self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.right_frame) + self.horizontalLayout_3.setObjectName("horizontalLayout_3") + self.tag_layout = QtWidgets.QVBoxLayout() + self.tag_layout.setSizeConstraint(QtWidgets.QLayout.SetMinimumSize) + self.tag_layout.setObjectName("tag_layout") + self.search_tags_label = QtWidgets.QLabel(self.right_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.search_tags_label.setFont(font) + self.search_tags_label.setObjectName("search_tags_label") + self.tag_layout.addWidget(self.search_tags_label) + self.tag_list_layout = QtWidgets.QVBoxLayout() + self.tag_list_layout.setSizeConstraint(QtWidgets.QLayout.SetMinimumSize) + self.tag_list_layout.setObjectName("tag_list_layout") + self.tag_search_bar = QtWidgets.QLineEdit(self.right_frame) + self.tag_search_bar.setMaximumSize(QtCore.QSize(400, 16777215)) + self.tag_search_bar.setObjectName("tag_search_bar") + self.tag_list_layout.addWidget(self.tag_search_bar) + self.search_result_list = QtWidgets.QListView(self.right_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.search_result_list.sizePolicy().hasHeightForWidth()) + self.search_result_list.setSizePolicy(sizePolicy) + self.search_result_list.setMinimumSize(QtCore.QSize(0, 0)) + self.search_result_list.setMaximumSize(QtCore.QSize(400, 16777215)) + self.search_result_list.setObjectName("search_result_list") + self.tag_list_layout.addWidget(self.search_result_list) + self.selected_tags_label = QtWidgets.QLabel(self.right_frame) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.selected_tags_label.setFont(font) + self.selected_tags_label.setObjectName("selected_tags_label") + self.tag_list_layout.addWidget(self.selected_tags_label) + self.tag_list = QtWidgets.QListView(self.right_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.tag_list.sizePolicy().hasHeightForWidth()) + self.tag_list.setSizePolicy(sizePolicy) + self.tag_list.setMinimumSize(QtCore.QSize(100, 0)) + self.tag_list.setMaximumSize(QtCore.QSize(400, 16777215)) + self.tag_list.setObjectName("tag_list") + self.tag_list_layout.addWidget(self.tag_list) + self.implied_tags_list = QtWidgets.QLabel(self.right_frame) + font = QtGui.QFont() + font.setPointSize(9) + font.setBold(True) + font.setWeight(75) + self.implied_tags_list.setFont(font) + self.implied_tags_list.setObjectName("implied_tags_list") + self.tag_list_layout.addWidget(self.implied_tags_list) + self.implied_tag_list = QtWidgets.QListView(self.right_frame) + self.implied_tag_list.setMinimumSize(QtCore.QSize(100, 0)) + self.implied_tag_list.setMaximumSize(QtCore.QSize(400, 16777215)) + self.implied_tag_list.setObjectName("implied_tag_list") + self.tag_list_layout.addWidget(self.implied_tag_list) + self.tag_layout.addLayout(self.tag_list_layout) + self.tag_button_layout = QtWidgets.QHBoxLayout() + self.tag_button_layout.setSizeConstraint(QtWidgets.QLayout.SetMinimumSize) + self.tag_button_layout.setSpacing(5) + self.tag_button_layout.setObjectName("tag_button_layout") + self.save_button = QtWidgets.QPushButton(self.right_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.save_button.sizePolicy().hasHeightForWidth()) + self.save_button.setSizePolicy(sizePolicy) + self.save_button.setMaximumSize(QtCore.QSize(16777215, 16777215)) + self.save_button.setObjectName("save_button") + self.tag_button_layout.addWidget(self.save_button) + self.import_button = QtWidgets.QPushButton(self.right_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.import_button.sizePolicy().hasHeightForWidth()) + self.import_button.setSizePolicy(sizePolicy) + self.import_button.setMaximumSize(QtCore.QSize(16777215, 16777215)) + self.import_button.setObjectName("import_button") + self.tag_button_layout.addWidget(self.import_button) + self.prev_unknown_image_button = QtWidgets.QPushButton(self.right_frame) + self.prev_unknown_image_button.setObjectName("prev_unknown_image_button") + self.tag_button_layout.addWidget(self.prev_unknown_image_button) + self.next_unknown_image_button = QtWidgets.QPushButton(self.right_frame) + self.next_unknown_image_button.setObjectName("next_unknown_image_button") + self.tag_button_layout.addWidget(self.next_unknown_image_button) + self.delete_button = QtWidgets.QPushButton(self.right_frame) + self.delete_button.setObjectName("delete_button") + self.tag_button_layout.addWidget(self.delete_button) + spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.tag_button_layout.addItem(spacerItem) + self.tag_layout.addLayout(self.tag_button_layout) + self.horizontalLayout_3.addLayout(self.tag_layout) + self.topic_docker_button = QtWidgets.QToolButton(self.right_frame) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.topic_docker_button.sizePolicy().hasHeightForWidth()) + self.topic_docker_button.setSizePolicy(sizePolicy) + self.topic_docker_button.setArrowType(QtCore.Qt.RightArrow) + self.topic_docker_button.setObjectName("topic_docker_button") + self.horizontalLayout_3.addWidget(self.topic_docker_button) + self.horizontalLayout.addWidget(self.right_frame) + MainWindow.setCentralWidget(self.centralwidget) + self.statusbar = QtWidgets.QStatusBar(MainWindow) + self.statusbar.setObjectName("statusbar") + MainWindow.setStatusBar(self.statusbar) + self.menuBar = QtWidgets.QMenuBar(MainWindow) + self.menuBar.setGeometry(QtCore.QRect(0, 0, 1367, 34)) + self.menuBar.setObjectName("menuBar") + self.menuArtNet = QtWidgets.QMenu(self.menuBar) + self.menuArtNet.setObjectName("menuArtNet") + self.menuOther_Apps = QtWidgets.QMenu(self.menuArtNet) + self.menuOther_Apps.setObjectName("menuOther_Apps") + self.menuTags = QtWidgets.QMenu(self.menuBar) + self.menuTags.setObjectName("menuTags") + self.menuCategory = QtWidgets.QMenu(self.menuBar) + self.menuCategory.setObjectName("menuCategory") + MainWindow.setMenuBar(self.menuBar) + self.actionChange_Connection_Details = QtWidgets.QAction(MainWindow) + self.actionChange_Connection_Details.setObjectName("actionChange_Connection_Details") + self.actionChange_ArtNet_Root_Folder = QtWidgets.QAction(MainWindow) + self.actionChange_ArtNet_Root_Folder.setObjectName("actionChange_ArtNet_Root_Folder") + self.actionCreate_New_Tag = QtWidgets.QAction(MainWindow) + self.actionCreate_New_Tag.setObjectName("actionCreate_New_Tag") + self.actionDelete_a_Tag = QtWidgets.QAction(MainWindow) + self.actionDelete_a_Tag.setObjectName("actionDelete_a_Tag") + self.actionEdit_a_Tag = QtWidgets.QAction(MainWindow) + self.actionEdit_a_Tag.setObjectName("actionEdit_a_Tag") + self.actionCreate_New_Category = QtWidgets.QAction(MainWindow) + self.actionCreate_New_Category.setObjectName("actionCreate_New_Category") + self.actionDelete_a_Category = QtWidgets.QAction(MainWindow) + self.actionDelete_a_Category.setObjectName("actionDelete_a_Category") + self.actionCreate_New_Category_2 = QtWidgets.QAction(MainWindow) + self.actionCreate_New_Category_2.setObjectName("actionCreate_New_Category_2") + self.actionDelete_a_Category_2 = QtWidgets.QAction(MainWindow) + self.actionDelete_a_Category_2.setObjectName("actionDelete_a_Category_2") + self.actionArtNet_Browser = QtWidgets.QAction(MainWindow) + self.actionArtNet_Browser.setObjectName("actionArtNet_Browser") + self.menuOther_Apps.addAction(self.actionArtNet_Browser) + self.menuArtNet.addAction(self.actionChange_Connection_Details) + self.menuArtNet.addAction(self.actionChange_ArtNet_Root_Folder) + self.menuArtNet.addSeparator() + self.menuArtNet.addAction(self.menuOther_Apps.menuAction()) + self.menuTags.addAction(self.actionCreate_New_Tag) + self.menuTags.addAction(self.actionDelete_a_Tag) + self.menuTags.addAction(self.actionEdit_a_Tag) + self.menuCategory.addAction(self.actionCreate_New_Category_2) + self.menuCategory.addAction(self.actionDelete_a_Category_2) + self.menuBar.addAction(self.menuArtNet.menuAction()) + self.menuBar.addAction(self.menuTags.menuAction()) + self.menuBar.addAction(self.menuCategory.menuAction()) + + self.retranslateUi(MainWindow) + QtCore.QMetaObject.connectSlotsByName(MainWindow) + + def retranslateUi(self, MainWindow): + _translate = QtCore.QCoreApplication.translate + MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow")) + self.presence_docker_button.setText(_translate("MainWindow", "<")) + self.prev_image_button.setText(_translate("MainWindow", "<")) + self.image_title_line.setText(_translate("MainWindow", "Image_Title")) + self.image_file_label.setText(_translate("MainWindow", "file_name")) + self.author_by.setText(_translate("MainWindow", "by")) + self.image_author_label.setText(_translate("MainWindow", "author_name")) + self.image_label.setText(_translate("MainWindow", "No Image")) + self.link_label.setText(_translate("MainWindow", "Source_Link")) + self.link_button.setText(_translate("MainWindow", "...")) + self.collections_label.setText(_translate("MainWindow", "No Collections")) + self.collections_button.setText(_translate("MainWindow", "...")) + self.description_label.setText(_translate("MainWindow", "Description:")) + self.next_image_button.setText(_translate("MainWindow", ">")) + self.search_tags_label.setText(_translate("MainWindow", "Search Tags")) + self.selected_tags_label.setText(_translate("MainWindow", "Selected Tags")) + self.implied_tags_list.setText(_translate("MainWindow", "Implied Tags")) + self.save_button.setText(_translate("MainWindow", "Save")) + self.import_button.setText(_translate("MainWindow", "Import Tags")) + self.prev_unknown_image_button.setText(_translate("MainWindow", "prev Unknown")) + self.next_unknown_image_button.setText(_translate("MainWindow", "next Unknown")) + self.delete_button.setText(_translate("MainWindow", "Delete")) + self.topic_docker_button.setText(_translate("MainWindow", ">")) + self.menuArtNet.setTitle(_translate("MainWindow", "ArtNet")) + self.menuOther_Apps.setTitle(_translate("MainWindow", "Other Apps")) + self.menuTags.setTitle(_translate("MainWindow", "Tags")) + self.menuCategory.setTitle(_translate("MainWindow", "Category")) + self.actionChange_Connection_Details.setText(_translate("MainWindow", "Change DB Connection")) + self.actionChange_ArtNet_Root_Folder.setText(_translate("MainWindow", "Change ArtNet Root")) + self.actionCreate_New_Tag.setText(_translate("MainWindow", "Create New Tag")) + self.actionDelete_a_Tag.setText(_translate("MainWindow", "Delete a Tag")) + self.actionEdit_a_Tag.setText(_translate("MainWindow", "Edit a Tag")) + self.actionCreate_New_Category.setText(_translate("MainWindow", "Create New Category")) + self.actionDelete_a_Category.setText(_translate("MainWindow", "Delete a Category")) + self.actionCreate_New_Category_2.setText(_translate("MainWindow", "Create New Category")) + self.actionDelete_a_Category_2.setText(_translate("MainWindow", "Delete a Category")) + self.actionArtNet_Browser.setText(_translate("MainWindow", "ArtNet Browser")) + + +if __name__ == "__main__": + import sys + app = QtWidgets.QApplication(sys.argv) + MainWindow = QtWidgets.QMainWindow() + ui = Ui_MainWindow() + ui.setupUi(MainWindow) + MainWindow.show() + sys.exit(app.exec_()) diff --git a/ArtNet/gui/windows/importer/picture_importer.ui b/ArtNet/gui/windows/importer/picture_importer.ui new file mode 100644 index 0000000..e0c5885 --- /dev/null +++ b/ArtNet/gui/windows/importer/picture_importer.ui @@ -0,0 +1,657 @@ + + + MainWindow + + + + 0 + 0 + 1367 + 888 + + + + MainWindow + + + + true + + + + QLayout::SetDefaultConstraint + + + + + + 0 + 0 + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 0 + 0 + + + + < + + + Qt::LeftArrow + + + + + + + + + + QLayout::SetMinimumSize + + + + + < + + + Qt::LeftArrow + + + + + + + + + + 0 + 0 + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 10 + 75 + true + + + + false + + + Image_Title + + + Qt::AlignCenter + + + false + + + + + + + + + + + + + file_name + + + Qt::AlignCenter + + + + + + + + 0 + 0 + + + + + 7 + 50 + false + + + + by + + + Qt::AlignCenter + + + + + + + + 10 + 50 + false + false + + + + author_name + + + Qt::AlignCenter + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + No Image + + + Qt::AlignCenter + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 8 + 75 + true + + + + Source_Link + + + Qt::AlignCenter + + + + + + + ... + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + 8 + 75 + true + + + + No Collections + + + Qt::AlignCenter + + + + + + + ... + + + + + + + + + + Description: + + + + + + + + + + + + + QLayout::SetMinimumSize + + + + + > + + + Qt::RightArrow + + + + + + + + + + + + + 0 + 0 + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + QLayout::SetMinimumSize + + + + + + 75 + true + + + + Search Tags + + + + + + + QLayout::SetMinimumSize + + + + + + 400 + 16777215 + + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 400 + 16777215 + + + + + + + + + 75 + true + + + + Selected Tags + + + + + + + + 0 + 0 + + + + + 100 + 0 + + + + + 400 + 16777215 + + + + + + + + + 9 + 75 + true + + + + Implied Tags + + + + + + + + 100 + 0 + + + + + 400 + 16777215 + + + + + + + + + + 5 + + + QLayout::SetMinimumSize + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Save + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Import Tags + + + + + + + prev Unknown + + + + + + + next Unknown + + + + + + + Delete + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + 0 + 0 + + + + > + + + Qt::RightArrow + + + + + + + + + + + + + 0 + 0 + 1367 + 34 + + + + + ArtNet + + + + Other Apps + + + + + + + + + + + Tags + + + + + + + + Category + + + + + + + + + + + Change DB Connection + + + + + Change ArtNet Root + + + + + Create New Tag + + + + + Delete a Tag + + + + + Edit a Tag + + + + + Create New Category + + + + + Delete a Category + + + + + Create New Category + + + + + Delete a Category + + + + + ArtNet Browser + + + + + +