from .dialog_sources.Ui_elsa_generator_confirm import Ui_Dialog from PyQt6 import QtWidgets class ElsaGenConfirm(QtWidgets.QDialog, Ui_Dialog): def __init__(self, parent=None, data=None): super(ElsaGenConfirm, self).__init__(parent) self.setupUi(self) self.setWindowTitle("Daten überprüfen") self.chapter_title.setText(data["chapter"]) self.bookauthor.setText(data["book_author"]) self.book_title.setText(data["title"]) self.pages.setText(data["pages"]) self.chapter_authors.setText(data["text_author"]) self.buttonBox.button( QtWidgets.QDialogButtonBox.StandardButton.Ok ).clicked.connect(self.send) self.buttonBox.button( QtWidgets.QDialogButtonBox.StandardButton.Cancel ).clicked.connect(self.close) self.confirmed_data = None def send(self): data = { "chapter": self.chapter_title.text(), "book_author": self.bookauthor.text(), "title": self.book_title.text(), "pages": self.pages.text(), "text_author": self.chapter_authors.text(), } # return data and close dialog self.confirmed_data = data self.accept() def launch(data): app = QtWidgets.QApplication([]) dialog = ElsaGenConfirm(data=data) dialog.show() app.exec() return dialog.confirmed_data