rework logging, add more dataclasses, reworked config

This commit is contained in:
2024-12-17 10:02:56 +01:00
parent ccb4df10bb
commit eda556b5ea
41 changed files with 1624 additions and 865 deletions

View File

@@ -1,6 +1,6 @@
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\apparat_extend.ui'
#
# Created by: PyQt6 UI code generator 6.6.1
# Created by: PyQt6 UI code generator 6.7.1
#
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
# run again. Do not edit this file unless you know what you are doing.
@@ -56,7 +56,7 @@ class Ui_Dialog(object):
self.sem_year.setGeometry(QtCore.QRect(10, 70, 121, 20))
self.sem_year.setObjectName("sem_year")
self.dauerapp = QtWidgets.QCheckBox(parent=Dialog)
self.dauerapp.setGeometry(QtCore.QRect(150, 70, 91, 21))
self.dauerapp.setGeometry(QtCore.QRect(150, 70, 111, 21))
self.dauerapp.setObjectName("dauerapp")
self.retranslateUi(Dialog)

View File

@@ -1,6 +1,6 @@
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\confirm_extend.ui'
#
# Created by: PyQt6 UI code generator 6.6.1
# Created by: PyQt6 UI code generator 6.7.1
#
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
# run again. Do not edit this file unless you know what you are doing.
@@ -13,14 +13,16 @@ class Ui_extend_confirm(object):
def setupUi(self, extend_confirm):
extend_confirm.setObjectName("extend_confirm")
extend_confirm.resize(380, 97)
self.horizontalLayout = QtWidgets.QHBoxLayout(extend_confirm)
self.horizontalLayout.setObjectName("horizontalLayout")
self.textEdit = QtWidgets.QTextEdit(parent=extend_confirm)
self.textEdit.setObjectName("textEdit")
self.horizontalLayout.addWidget(self.textEdit)
self.buttonBox = QtWidgets.QDialogButtonBox(parent=extend_confirm)
self.buttonBox.setGeometry(QtCore.QRect(290, 20, 81, 241))
self.buttonBox.setOrientation(QtCore.Qt.Orientation.Vertical)
self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.StandardButton.Cancel|QtWidgets.QDialogButtonBox.StandardButton.Ok)
self.buttonBox.setObjectName("buttonBox")
self.textEdit = QtWidgets.QTextEdit(parent=extend_confirm)
self.textEdit.setGeometry(QtCore.QRect(10, 10, 271, 81))
self.textEdit.setObjectName("textEdit")
self.horizontalLayout.addWidget(self.buttonBox)
self.retranslateUi(extend_confirm)
self.buttonBox.accepted.connect(extend_confirm.accept) # type: ignore

View File

@@ -1,6 +1,6 @@
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\elsa_add_table_entry.ui'
#
# Created by: PyQt6 UI code generator 6.6.1
# Created by: PyQt6 UI code generator 6.7.1
#
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
# run again. Do not edit this file unless you know what you are doing.
@@ -337,17 +337,19 @@ class Ui_Dialog(object):
self.gridLayout_5.addLayout(self.verticalLayout_4, 6, 1, 1, 1)
self.stackedWidget.addWidget(self.page)
self.verticalLayout.addWidget(self.stackedWidget)
self.horizontalLayout = QtWidgets.QHBoxLayout()
self.horizontalLayout.setObjectName("horizontalLayout")
self.buttonBox = QtWidgets.QDialogButtonBox(parent=Dialog)
self.buttonBox.setOrientation(QtCore.Qt.Orientation.Horizontal)
self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.StandardButton.Cancel|QtWidgets.QDialogButtonBox.StandardButton.Discard|QtWidgets.QDialogButtonBox.StandardButton.Ok)
self.buttonBox.setCenterButtons(False)
self.buttonBox.setObjectName("buttonBox")
self.verticalLayout.addWidget(self.buttonBox)
self.horizontalLayout.addWidget(self.buttonBox)
self.retryButton = QtWidgets.QPushButton(parent=Dialog)
self.retryButton.setObjectName("retryButton")
self.horizontalLayout.addWidget(self.retryButton)
self.verticalLayout.addLayout(self.horizontalLayout)
self.retranslateUi(Dialog)
self.stackedWidget.setCurrentIndex(0)
self.buttonBox.accepted.connect(Dialog.accept) # type: ignore
self.buttonBox.rejected.connect(Dialog.reject) # type: ignore
self.stackedWidget.setCurrentIndex(3)
QtCore.QMetaObject.connectSlotsByName(Dialog)
def retranslateUi(self, Dialog):
@@ -406,3 +408,4 @@ class Ui_Dialog(object):
self.copy_filename.setText(_translate("Dialog", "Kopieren"))
self.copy_ilias_filename.setText(_translate("Dialog", "Kopieren"))
self.copy_qoute.setText(_translate("Dialog", "Kopieren"))
self.retryButton.setText(_translate("Dialog", "Wiederholen"))

View File

@@ -1,6 +1,6 @@
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\mail_preview.ui'
#
# Created by: PyQt6 UI code generator 6.6.1
# Created by: PyQt6 UI code generator 6.7.1
#
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
# run again. Do not edit this file unless you know what you are doing.
@@ -102,7 +102,7 @@ class Ui_eMailPreview(object):
def retranslateUi(self, eMailPreview):
_translate = QtCore.QCoreApplication.translate
eMailPreview.setWindowTitle(_translate("eMailPreview", "eMail Voransicht"))
self.label_6.setText(_translate("eMailPreview", "Geschlecht"))
self.label_6.setText(_translate("eMailPreview", "Anrede"))
self.label_2.setText(_translate("eMailPreview", "Prof"))
self.label_5.setText(_translate("eMailPreview", "Art"))
self.label_4.setText(_translate("eMailPreview", "Betreff"))

View File

@@ -1,6 +1,6 @@
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\settings.ui'
#
# Created by: PyQt6 UI code generator 6.6.1
# Created by: PyQt6 UI code generator 6.7.1
#
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
# run again. Do not edit this file unless you know what you are doing.
@@ -12,149 +12,188 @@ from PyQt6 import QtCore, QtGui, QtWidgets
class Ui_Dialog(object):
def setupUi(self, Dialog):
Dialog.setObjectName("Dialog")
Dialog.resize(750, 580)
self.buttonBox = QtWidgets.QDialogButtonBox(parent=Dialog)
self.buttonBox.setGeometry(QtCore.QRect(120, 540, 621, 32))
self.buttonBox.setOrientation(QtCore.Qt.Orientation.Horizontal)
self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.StandardButton.Cancel|QtWidgets.QDialogButtonBox.StandardButton.Ok)
self.buttonBox.setObjectName("buttonBox")
self.frame = QtWidgets.QFrame(parent=Dialog)
self.frame.setGeometry(QtCore.QRect(0, 0, 751, 541))
self.frame.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
self.frame.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
self.frame.setObjectName("frame")
self.label_2 = QtWidgets.QLabel(parent=self.frame)
self.label_2.setGeometry(QtCore.QRect(10, 20, 161, 21))
self.label_2.setObjectName("label_2")
self.formLayoutWidget = QtWidgets.QWidget(parent=self.frame)
self.formLayoutWidget.setGeometry(QtCore.QRect(10, 40, 361, 491))
self.formLayoutWidget.setObjectName("formLayoutWidget")
self.gridLayout = QtWidgets.QGridLayout(self.formLayoutWidget)
self.gridLayout.setContentsMargins(0, 0, 0, 0)
self.gridLayout.setObjectName("gridLayout")
self.tb_select_db = QtWidgets.QToolButton(parent=self.formLayoutWidget)
self.tb_select_db.setObjectName("tb_select_db")
self.gridLayout.addWidget(self.tb_select_db, 0, 2, 1, 1)
self.db_path = QtWidgets.QLineEdit(parent=self.formLayoutWidget)
Dialog.setWindowModality(QtCore.Qt.WindowModality.NonModal)
Dialog.resize(651, 679)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(Dialog.sizePolicy().hasHeightForWidth())
Dialog.setSizePolicy(sizePolicy)
self.verticalLayout = QtWidgets.QVBoxLayout(Dialog)
self.verticalLayout.setObjectName("verticalLayout")
self.toolBox = QtWidgets.QToolBox(parent=Dialog)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.toolBox.sizePolicy().hasHeightForWidth())
self.toolBox.setSizePolicy(sizePolicy)
self.toolBox.setInputMethodHints(QtCore.Qt.InputMethodHint.ImhNone)
self.toolBox.setObjectName("toolBox")
self.page_1 = QtWidgets.QWidget()
self.page_1.setGeometry(QtCore.QRect(0, 0, 633, 511))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.page_1.sizePolicy().hasHeightForWidth())
self.page_1.setSizePolicy(sizePolicy)
self.page_1.setObjectName("page_1")
self.gridLayout_3 = QtWidgets.QGridLayout(self.page_1)
self.gridLayout_3.setObjectName("gridLayout_3")
self.db_name = QtWidgets.QLineEdit(parent=self.page_1)
self.db_name.setObjectName("db_name")
self.gridLayout_3.addWidget(self.db_name, 0, 1, 1, 1)
self.label_5 = QtWidgets.QLabel(parent=self.page_1)
self.label_5.setObjectName("label_5")
self.gridLayout_3.addWidget(self.label_5, 0, 0, 1, 1)
self.db_path = QtWidgets.QLineEdit(parent=self.page_1)
self.db_path.setEnabled(False)
self.db_path.setObjectName("db_path")
self.gridLayout.addWidget(self.db_path, 1, 1, 1, 1)
self.label_3 = QtWidgets.QLabel(parent=self.formLayoutWidget)
self.label_3.setObjectName("label_3")
self.gridLayout.addWidget(self.label_3, 0, 0, 1, 1)
self.db_name = QtWidgets.QLineEdit(parent=self.formLayoutWidget)
self.db_name.setObjectName("db_name")
self.gridLayout.addWidget(self.db_name, 0, 1, 1, 1)
self.label_4 = QtWidgets.QLabel(parent=self.formLayoutWidget)
self.label_4.setObjectName("label_4")
self.gridLayout.addWidget(self.label_4, 1, 0, 1, 1)
self.save_path = QtWidgets.QLineEdit(parent=self.formLayoutWidget)
self.save_path.setObjectName("save_path")
self.gridLayout.addWidget(self.save_path, 2, 1, 1, 1)
self.tb_set_save_path = QtWidgets.QToolButton(parent=self.formLayoutWidget)
self.gridLayout_3.addWidget(self.db_path, 1, 1, 1, 1)
self.label_12 = QtWidgets.QLabel(parent=self.page_1)
self.label_12.setObjectName("label_12")
self.gridLayout_3.addWidget(self.label_12, 2, 0, 1, 1)
self.label_11 = QtWidgets.QLabel(parent=self.page_1)
self.label_11.setObjectName("label_11")
self.gridLayout_3.addWidget(self.label_11, 1, 0, 1, 1)
self.tb_set_save_path = QtWidgets.QToolButton(parent=self.page_1)
self.tb_set_save_path.setObjectName("tb_set_save_path")
self.gridLayout.addWidget(self.tb_set_save_path, 2, 2, 1, 1)
self.gridLayout_3.addWidget(self.tb_set_save_path, 2, 2, 1, 1)
self.tb_select_db = QtWidgets.QToolButton(parent=self.page_1)
self.tb_select_db.setObjectName("tb_select_db")
self.gridLayout_3.addWidget(self.tb_select_db, 0, 2, 1, 1)
self.save_path = QtWidgets.QLineEdit(parent=self.page_1)
self.save_path.setObjectName("save_path")
self.gridLayout_3.addWidget(self.save_path, 2, 1, 1, 1)
spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
self.gridLayout.addItem(spacerItem, 3, 1, 1, 1)
self.label_5 = QtWidgets.QLabel(parent=self.formLayoutWidget)
self.label_5.setObjectName("label_5")
self.gridLayout.addWidget(self.label_5, 2, 0, 1, 1)
self.email_settings = QtWidgets.QTabWidget(parent=self.frame)
self.email_settings.setGeometry(QtCore.QRect(390, 40, 341, 491))
self.gridLayout_3.addItem(spacerItem, 3, 1, 1, 1)
self.toolBox.addItem(self.page_1, "")
self.page_2 = QtWidgets.QWidget()
self.page_2.setObjectName("page_2")
self.gridLayout = QtWidgets.QGridLayout(self.page_2)
self.gridLayout.setObjectName("gridLayout")
self.zotero_library_type = QtWidgets.QLineEdit(parent=self.page_2)
self.zotero_library_type.setObjectName("zotero_library_type")
self.gridLayout.addWidget(self.zotero_library_type, 2, 2, 1, 1)
self.zotero_library_id = QtWidgets.QLineEdit(parent=self.page_2)
self.zotero_library_id.setObjectName("zotero_library_id")
self.gridLayout.addWidget(self.zotero_library_id, 1, 2, 1, 1)
self.label_4 = QtWidgets.QLabel(parent=self.page_2)
self.label_4.setObjectName("label_4")
self.gridLayout.addWidget(self.label_4, 2, 0, 1, 1)
self.label_3 = QtWidgets.QLabel(parent=self.page_2)
self.label_3.setObjectName("label_3")
self.gridLayout.addWidget(self.label_3, 1, 0, 1, 1)
self.zotero_api_key = QtWidgets.QLineEdit(parent=self.page_2)
self.zotero_api_key.setInputMethodHints(QtCore.Qt.InputMethodHint.ImhHiddenText|QtCore.Qt.InputMethodHint.ImhSensitiveData)
self.zotero_api_key.setObjectName("zotero_api_key")
self.gridLayout.addWidget(self.zotero_api_key, 0, 2, 1, 1)
self.label_2 = QtWidgets.QLabel(parent=self.page_2)
self.label_2.setObjectName("label_2")
self.gridLayout.addWidget(self.label_2, 0, 0, 1, 1)
self.toggle_api_visibility = QtWidgets.QToolButton(parent=self.page_2)
self.toggle_api_visibility.setText("")
self.toggle_api_visibility.setObjectName("toggle_api_visibility")
self.gridLayout.addWidget(self.toggle_api_visibility, 0, 3, 1, 1)
spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
self.gridLayout.addItem(spacerItem1, 3, 2, 1, 1)
self.toolBox.addItem(self.page_2, "")
self.page_3 = QtWidgets.QWidget()
self.page_3.setGeometry(QtCore.QRect(0, 0, 633, 511))
self.page_3.setObjectName("page_3")
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.page_3)
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.email_settings = QtWidgets.QTabWidget(parent=self.page_3)
self.email_settings.setObjectName("email_settings")
self.email_settingsPage1_2 = QtWidgets.QWidget()
self.email_settingsPage1_2.setObjectName("email_settingsPage1_2")
self.formLayoutWidget_2 = QtWidgets.QWidget(parent=self.email_settingsPage1_2)
self.formLayoutWidget_2.setGeometry(QtCore.QRect(10, 30, 321, 381))
self.formLayoutWidget_2.setObjectName("formLayoutWidget_2")
self.gridLayout_2 = QtWidgets.QGridLayout(self.formLayoutWidget_2)
self.gridLayout_2.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout_4 = QtWidgets.QHBoxLayout(self.email_settingsPage1_2)
self.horizontalLayout_4.setObjectName("horizontalLayout_4")
self.gridLayout_2 = QtWidgets.QGridLayout()
self.gridLayout_2.setObjectName("gridLayout_2")
self.smtp_address = QtWidgets.QLineEdit(parent=self.formLayoutWidget_2)
self.smtp_address = QtWidgets.QLineEdit(parent=self.email_settingsPage1_2)
self.smtp_address.setClearButtonEnabled(True)
self.smtp_address.setObjectName("smtp_address")
self.gridLayout_2.addWidget(self.smtp_address, 0, 1, 1, 1)
self.label_8 = QtWidgets.QLabel(parent=self.formLayoutWidget_2)
self.label_8 = QtWidgets.QLabel(parent=self.email_settingsPage1_2)
self.label_8.setObjectName("label_8")
self.gridLayout_2.addWidget(self.label_8, 3, 0, 1, 1)
self.use_username_smtp_login = QtWidgets.QCheckBox(parent=self.formLayoutWidget_2)
self.use_username_smtp_login = QtWidgets.QCheckBox(parent=self.email_settingsPage1_2)
self.use_username_smtp_login.setTristate(False)
self.use_username_smtp_login.setObjectName("use_username_smtp_login")
self.gridLayout_2.addWidget(self.use_username_smtp_login, 4, 1, 1, 1)
self.mail_username = QtWidgets.QLineEdit(parent=self.formLayoutWidget_2)
self.mail_username = QtWidgets.QLineEdit(parent=self.email_settingsPage1_2)
self.mail_username.setClearButtonEnabled(True)
self.mail_username.setObjectName("mail_username")
self.gridLayout_2.addWidget(self.mail_username, 3, 1, 1, 1)
self.smtp_port = QtWidgets.QLineEdit(parent=self.formLayoutWidget_2)
self.smtp_port = QtWidgets.QLineEdit(parent=self.email_settingsPage1_2)
self.smtp_port.setInputMethodHints(QtCore.Qt.InputMethodHint.ImhDigitsOnly|QtCore.Qt.InputMethodHint.ImhPreferNumbers)
self.smtp_port.setClearButtonEnabled(True)
self.smtp_port.setObjectName("smtp_port")
self.gridLayout_2.addWidget(self.smtp_port, 1, 1, 1, 1)
self.label_10 = QtWidgets.QLabel(parent=self.formLayoutWidget_2)
self.label_10 = QtWidgets.QLabel(parent=self.email_settingsPage1_2)
self.label_10.setObjectName("label_10")
self.gridLayout_2.addWidget(self.label_10, 5, 0, 1, 1)
self.label_7 = QtWidgets.QLabel(parent=self.formLayoutWidget_2)
self.label_7 = QtWidgets.QLabel(parent=self.email_settingsPage1_2)
self.label_7.setObjectName("label_7")
self.gridLayout_2.addWidget(self.label_7, 2, 0, 1, 1)
self.label_9 = QtWidgets.QLabel(parent=self.formLayoutWidget_2)
self.label_9 = QtWidgets.QLabel(parent=self.email_settingsPage1_2)
self.label_9.setText("")
self.label_9.setObjectName("label_9")
self.gridLayout_2.addWidget(self.label_9, 6, 0, 1, 1)
self.sender_email = QtWidgets.QLineEdit(parent=self.formLayoutWidget_2)
self.sender_email = QtWidgets.QLineEdit(parent=self.email_settingsPage1_2)
self.sender_email.setInputMethodHints(QtCore.Qt.InputMethodHint.ImhEmailCharactersOnly)
self.sender_email.setClearButtonEnabled(True)
self.sender_email.setObjectName("sender_email")
self.gridLayout_2.addWidget(self.sender_email, 2, 1, 1, 1)
self.label = QtWidgets.QLabel(parent=self.formLayoutWidget_2)
self.label = QtWidgets.QLabel(parent=self.email_settingsPage1_2)
self.label.setObjectName("label")
self.gridLayout_2.addWidget(self.label, 0, 0, 1, 1)
self.password = QtWidgets.QLineEdit(parent=self.formLayoutWidget_2)
self.password = QtWidgets.QLineEdit(parent=self.email_settingsPage1_2)
self.password.setInputMethodHints(QtCore.Qt.InputMethodHint.ImhHiddenText|QtCore.Qt.InputMethodHint.ImhSensitiveData)
self.password.setClearButtonEnabled(True)
self.password.setObjectName("password")
self.gridLayout_2.addWidget(self.password, 5, 1, 1, 1)
self.label_6 = QtWidgets.QLabel(parent=self.formLayoutWidget_2)
self.label_6 = QtWidgets.QLabel(parent=self.email_settingsPage1_2)
self.label_6.setObjectName("label_6")
self.gridLayout_2.addWidget(self.label_6, 1, 0, 1, 1)
self.togglePassword = QtWidgets.QPushButton(parent=self.formLayoutWidget_2)
self.togglePassword = QtWidgets.QPushButton(parent=self.email_settingsPage1_2)
self.togglePassword.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
self.togglePassword.setText("")
self.togglePassword.setObjectName("togglePassword")
self.gridLayout_2.addWidget(self.togglePassword, 5, 2, 1, 1)
self.horizontalLayout_4.addLayout(self.gridLayout_2)
self.email_settings.addTab(self.email_settingsPage1_2, "")
self.email_settingsPage2_2 = QtWidgets.QWidget()
self.email_settingsPage2_2.setObjectName("email_settingsPage2_2")
self.verticalLayoutWidget = QtWidgets.QWidget(parent=self.email_settingsPage2_2)
self.verticalLayoutWidget.setGeometry(QtCore.QRect(10, 0, 321, 71))
self.verticalLayoutWidget.setObjectName("verticalLayoutWidget")
self.verticalLayout = QtWidgets.QVBoxLayout(self.verticalLayoutWidget)
self.verticalLayout.setContentsMargins(0, 0, 0, 0)
self.verticalLayout.setObjectName("verticalLayout")
self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.email_settingsPage2_2)
self.verticalLayout_3.setObjectName("verticalLayout_3")
self.verticalLayout_2 = QtWidgets.QVBoxLayout()
self.verticalLayout_2.setObjectName("verticalLayout_2")
self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
self.horizontalLayout_3.setObjectName("horizontalLayout_3")
spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.horizontalLayout_3.addItem(spacerItem1)
self.bold = QtWidgets.QPushButton(parent=self.verticalLayoutWidget)
spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.horizontalLayout_3.addItem(spacerItem2)
self.bold = QtWidgets.QPushButton(parent=self.email_settingsPage2_2)
self.bold.setCheckable(True)
self.bold.setObjectName("bold")
self.horizontalLayout_3.addWidget(self.bold)
self.italic = QtWidgets.QPushButton(parent=self.verticalLayoutWidget)
self.italic = QtWidgets.QPushButton(parent=self.email_settingsPage2_2)
self.italic.setCheckable(True)
self.italic.setObjectName("italic")
self.horizontalLayout_3.addWidget(self.italic)
self.underscore = QtWidgets.QPushButton(parent=self.verticalLayoutWidget)
self.underscore = QtWidgets.QPushButton(parent=self.email_settingsPage2_2)
self.underscore.setCheckable(True)
self.underscore.setObjectName("underscore")
self.horizontalLayout_3.addWidget(self.underscore)
spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.horizontalLayout_3.addItem(spacerItem2)
self.verticalLayout.addLayout(self.horizontalLayout_3)
spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.horizontalLayout_3.addItem(spacerItem3)
self.verticalLayout_2.addLayout(self.horizontalLayout_3)
self.horizontalLayout = QtWidgets.QHBoxLayout()
self.horizontalLayout.setObjectName("horizontalLayout")
self.fontComboBox = QtWidgets.QFontComboBox(parent=self.verticalLayoutWidget)
self.fontComboBox = QtWidgets.QFontComboBox(parent=self.email_settingsPage2_2)
self.fontComboBox.setObjectName("fontComboBox")
self.horizontalLayout.addWidget(self.fontComboBox)
self.font_size = QtWidgets.QComboBox(parent=self.verticalLayoutWidget)
self.font_size = QtWidgets.QComboBox(parent=self.email_settingsPage2_2)
self.font_size.setObjectName("font_size")
self.font_size.addItem("")
self.font_size.addItem("")
@@ -172,40 +211,92 @@ class Ui_Dialog(object):
self.font_size.addItem("")
self.font_size.addItem("")
self.horizontalLayout.addWidget(self.font_size)
spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.horizontalLayout.addItem(spacerItem3)
self.verticalLayout.addLayout(self.horizontalLayout)
spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.horizontalLayout.addItem(spacerItem4)
self.verticalLayout_2.addLayout(self.horizontalLayout)
self.verticalLayout_3.addLayout(self.verticalLayout_2)
self.editSignature = QtWidgets.QTextEdit(parent=self.email_settingsPage2_2)
self.editSignature.setGeometry(QtCore.QRect(10, 80, 321, 301))
self.editSignature.setObjectName("editSignature")
self.verticalLayout_3.addWidget(self.editSignature)
self.debug = QtWidgets.QPushButton(parent=self.email_settingsPage2_2)
self.debug.setGeometry(QtCore.QRect(30, 430, 75, 24))
self.debug.setObjectName("debug")
self.verticalLayout_3.addWidget(self.debug)
self.email_settings.addTab(self.email_settingsPage2_2, "")
self.label_3.setBuddy(self.db_name)
self.label_4.setBuddy(self.db_path)
self.label_5.setBuddy(self.save_path)
self.horizontalLayout_2.addWidget(self.email_settings)
self.toolBox.addItem(self.page_3, "")
self.page_4 = QtWidgets.QWidget()
self.page_4.setObjectName("page_4")
self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.page_4)
self.verticalLayout_4.setObjectName("verticalLayout_4")
self.groupBox = QtWidgets.QGroupBox(parent=self.page_4)
font = QtGui.QFont()
font.setPointSize(12)
font.setBold(True)
self.groupBox.setFont(font)
self.groupBox.setObjectName("groupBox")
self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.groupBox)
self.verticalLayout_5.setObjectName("verticalLayout_5")
self.scrollArea_3 = QtWidgets.QScrollArea(parent=self.groupBox)
self.scrollArea_3.setWidgetResizable(True)
self.scrollArea_3.setObjectName("scrollArea_3")
self.scrollAreaWidgetContents_3 = QtWidgets.QWidget()
self.scrollAreaWidgetContents_3.setGeometry(QtCore.QRect(0, 0, 593, 201))
self.scrollAreaWidgetContents_3.setObjectName("scrollAreaWidgetContents_3")
self.verticalLayout_7 = QtWidgets.QVBoxLayout(self.scrollAreaWidgetContents_3)
self.verticalLayout_7.setObjectName("verticalLayout_7")
self.gridLayout_4 = QtWidgets.QGridLayout()
self.gridLayout_4.setObjectName("gridLayout_4")
self.verticalLayout_7.addLayout(self.gridLayout_4)
self.scrollArea_3.setWidget(self.scrollAreaWidgetContents_3)
self.verticalLayout_5.addWidget(self.scrollArea_3)
self.verticalLayout_4.addWidget(self.groupBox)
self.scrollArea_2 = QtWidgets.QScrollArea(parent=self.page_4)
self.scrollArea_2.setWidgetResizable(True)
self.scrollArea_2.setObjectName("scrollArea_2")
self.scrollAreaWidgetContents_2 = QtWidgets.QWidget()
self.scrollAreaWidgetContents_2.setGeometry(QtCore.QRect(0, 0, 613, 241))
self.scrollAreaWidgetContents_2.setObjectName("scrollAreaWidgetContents_2")
self.verticalLayout_6 = QtWidgets.QVBoxLayout(self.scrollAreaWidgetContents_2)
self.verticalLayout_6.setObjectName("verticalLayout_6")
self.formLayout = QtWidgets.QFormLayout()
self.formLayout.setObjectName("formLayout")
self.verticalLayout_6.addLayout(self.formLayout)
self.scrollArea_2.setWidget(self.scrollAreaWidgetContents_2)
self.verticalLayout_4.addWidget(self.scrollArea_2)
self.toolBox.addItem(self.page_4, "")
self.verticalLayout.addWidget(self.toolBox)
self.buttonBox = QtWidgets.QDialogButtonBox(parent=Dialog)
self.buttonBox.setOrientation(QtCore.Qt.Orientation.Horizontal)
self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.StandardButton.Cancel|QtWidgets.QDialogButtonBox.StandardButton.Ok)
self.buttonBox.setObjectName("buttonBox")
self.verticalLayout.addWidget(self.buttonBox)
self.label_5.setBuddy(self.db_name)
self.label_12.setBuddy(self.save_path)
self.label_11.setBuddy(self.db_path)
self.retranslateUi(Dialog)
self.toolBox.setCurrentIndex(3)
self.email_settings.setCurrentIndex(0)
self.buttonBox.accepted.connect(Dialog.accept) # type: ignore
self.buttonBox.rejected.connect(Dialog.reject) # type: ignore
QtCore.QMetaObject.connectSlotsByName(Dialog)
Dialog.setTabOrder(self.db_name, self.db_path)
Dialog.setTabOrder(self.db_path, self.save_path)
def retranslateUi(self, Dialog):
_translate = QtCore.QCoreApplication.translate
Dialog.setWindowTitle(_translate("Dialog", "Einstellungen"))
self.label_2.setText(_translate("Dialog", "Allgemeine Einstellungen"))
self.tb_select_db.setText(_translate("Dialog", "..."))
self.label_3.setToolTip(_translate("Dialog", "<html><head/><body><p>Name der Datenbank, welche verwendet werden soll. <span style=\" font-weight:600;\">Muss</span> auf .db enden</p></body></html>"))
self.label_3.setText(_translate("Dialog", "Datenbankname"))
Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
self.db_name.setText(_translate("Dialog", "sap.db"))
self.label_4.setText(_translate("Dialog", "Datenbankpfad"))
self.label_5.setToolTip(_translate("Dialog", "<html><head/><body><p>Name der Datenbank, welche verwendet werden soll. <span style=\" font-weight:600;\">Muss</span> auf .db enden</p></body></html>"))
self.label_5.setText(_translate("Dialog", "Datenbankname"))
self.label_12.setToolTip(_translate("Dialog", "Pfad, an dem heruntergeladene Dateien gespeichert werden sollen"))
self.label_12.setText(_translate("Dialog", "Temporäre Dateien"))
self.label_11.setText(_translate("Dialog", "Datenbankpfad"))
self.tb_set_save_path.setText(_translate("Dialog", "..."))
self.label_5.setToolTip(_translate("Dialog", "Pfad, an dem heruntergeladene Dateien gespeichert werden sollen"))
self.label_5.setText(_translate("Dialog", "Temporäre Dateien"))
self.tb_select_db.setText(_translate("Dialog", "..."))
self.toolBox.setItemText(self.toolBox.indexOf(self.page_1), _translate("Dialog", "Datenbank"))
self.label_4.setText(_translate("Dialog", "Bibliothekstyp"))
self.label_3.setText(_translate("Dialog", "Bibliotheks-ID"))
self.label_2.setText(_translate("Dialog", "API Key"))
self.toolBox.setItemText(self.toolBox.indexOf(self.page_2), _translate("Dialog", "Zotero"))
self.label_8.setText(_translate("Dialog", "Nutzername"))
self.use_username_smtp_login.setStatusTip(_translate("Dialog", "Anklicken, wenn Nutzername benötigt wird, um sich beim Server anzumelden"))
self.use_username_smtp_login.setText(_translate("Dialog", "Nutzername zum\n"
@@ -236,3 +327,6 @@ class Ui_Dialog(object):
self.font_size.setItemText(14, _translate("Dialog", "72"))
self.debug.setText(_translate("Dialog", "Debug"))
self.email_settings.setTabText(self.email_settings.indexOf(self.email_settingsPage2_2), _translate("Dialog", "Signatur"))
self.toolBox.setItemText(self.toolBox.indexOf(self.page_3), _translate("Dialog", "e-Mail"))
self.groupBox.setTitle(_translate("Dialog", "Farben"))
self.toolBox.setItemText(self.toolBox.indexOf(self.page_4), _translate("Dialog", "Icons"))

View File

@@ -144,7 +144,7 @@
<rect>
<x>150</x>
<y>70</y>
<width>91</width>
<width>111</width>
<height>21</height>
</rect>
</property>

View File

@@ -13,32 +13,21 @@
<property name="windowTitle">
<string>Dialog</string>
</property>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="geometry">
<rect>
<x>290</x>
<y>20</y>
<width>81</width>
<height>241</height>
</rect>
</property>
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
</property>
</widget>
<widget class="QTextEdit" name="textEdit">
<property name="geometry">
<rect>
<x>10</x>
<y>10</y>
<width>271</width>
<height>81</height>
</rect>
</property>
</widget>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QTextEdit" name="textEdit"/>
</item>
<item>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
</property>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections>

View File

@@ -113,7 +113,7 @@
<item>
<widget class="QStackedWidget" name="stackedWidget">
<property name="currentIndex">
<number>0</number>
<number>3</number>
</property>
<widget class="QWidget" name="mono">
<layout class="QGridLayout" name="gridLayout_2">
@@ -684,53 +684,25 @@ Nachname, Vorname</string>
</widget>
</item>
<item>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Discard|QDialogButtonBox::Ok</set>
</property>
<property name="centerButtons">
<bool>false</bool>
</property>
</widget>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Discard|QDialogButtonBox::Ok</set>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="retryButton">
<property name="text">
<string>Wiederholen</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
<resources/>
<connections>
<connection>
<sender>buttonBox</sender>
<signal>accepted()</signal>
<receiver>Dialog</receiver>
<slot>accept()</slot>
<hints>
<hint type="sourcelabel">
<x>266</x>
<y>472</y>
</hint>
<hint type="destinationlabel">
<x>157</x>
<y>274</y>
</hint>
</hints>
</connection>
<connection>
<sender>buttonBox</sender>
<signal>rejected()</signal>
<receiver>Dialog</receiver>
<slot>reject()</slot>
<hints>
<hint type="sourcelabel">
<x>334</x>
<y>472</y>
</hint>
<hint type="destinationlabel">
<x>286</x>
<y>274</y>
</hint>
</hints>
</connection>
</connections>
<connections/>
</ui>

File diff suppressed because it is too large Load Diff

View File

@@ -54,7 +54,8 @@ class ElsaAddEntry(QtWidgets.QDialog, Ui_Dialog):
self.book_pages.textChanged.connect(self.check_pages)
self.hg_pages.textChanged.connect(self.check_pages)
self.zs_pages.textChanged.connect(self.check_pages)
self.retryButton.clicked.connect(self.retry)
def check_pages(self):
if self.source_pages:
if self.book_pages.text() !=self.source_pages:
@@ -73,6 +74,15 @@ class ElsaAddEntry(QtWidgets.QDialog, Ui_Dialog):
for line in self.findChildren(QtWidgets.QTextEdit):
line.clear()
def retry(self):
match self.mode:
case "book":
self.stackedWidget.setCurrentIndex(0)
case "hg":
self.stackedWidget.setCurrentIndex(1)
case "zs":
self.stackedWidget.setCurrentIndex(2)
def stack(self):
self.stackedWidget.setEnabled(True)
if self.btn_mono.isChecked():
@@ -162,7 +172,8 @@ class ElsaAddEntry(QtWidgets.QDialog, Ui_Dialog):
self.ilias_filename.setText(ilias_name)
self.stackedWidget.setCurrentIndex(3)
def search(self):
def search(self, pages=None):
print("searching")
param = self.searchIdent.text()
web = WebRequest()
web.get_ppn(param)
@@ -172,9 +183,9 @@ class ElsaAddEntry(QtWidgets.QDialog, Ui_Dialog):
bib = BibTextTransformer("ARRAY")
bib.get_data(data)
data = bib.return_data()
self.setdata(data)
self.setdata(data, pages)
def setdata(self, data):
def setdata(self, data, pages=None):
# use field to set data in the correct fields
fields = self.findChildren(QtWidgets.QLineEdit)
self.source_pages = data.pages
@@ -201,6 +212,10 @@ class ElsaAddEntry(QtWidgets.QDialog, Ui_Dialog):
c_field.setText(c_data)
if "Seiten" in c_field.text():
self.source_pages = c_field.text()
if pages:
self.source_pages = pages
eval(f"self.{self.mode}_pages").setText(pages)
def launch():
app = QtWidgets.QApplication([])
dialog = ElsaAddEntry()

View File

@@ -51,6 +51,7 @@ class Mail_Dialog(QtWidgets.QDialog, MailPreviewDialog):
# app_subject,
# prof_name,
)
logger.log_info("Setting up mail dialog")
self.appid = app_id
self.appname = app_name

View File

@@ -28,7 +28,7 @@ class ParsedTitles(QtWidgets.QWidget, Ui_Form):
self.progressBar.setValue(value)
def worker_quit(self):
print("Terminating worker")
# print("Terminating worker")
self.worker.terminate()
self.worker.quit()
self.worker.deleteLater()
@@ -62,7 +62,7 @@ class ParsedTitles(QtWidgets.QWidget, Ui_Form):
def determine_progress(self, signal):
# check length of listWidget
length = self.listWidget.count()
print(f"Length of listWidget: {length}")
# print(f"Length of listWidget: {length}")
if length == 0:
logger.log_info("AutoAdder finished")
self.buttonBox.accepted.emit()

View File

@@ -2,13 +2,14 @@ from PyQt6 import QtWidgets
from .dialog_sources.Ui_reminder import Ui_Erinnerung as Ui_Dialog
from src import Icon
import datetime as date
class ReminderDialog(QtWidgets.QDialog, Ui_Dialog):
def __init__(self, parent=None):
super().__init__(parent)
self.setupUi(self)
self.setWindowIcon(Icon("notification").icon)
self.setWindowTitle("Erinnerung")
self.dateEdit.setDate(date.datetime.now())
def return_message(self) -> dict:
return {
"message": self.message_box.toPlainText(),

View File

@@ -1,7 +1,5 @@
from PyQt6 import QtCore, QtGui, QtWidgets
from src import Icon, settings
from .dialog_sources.Ui_settings import Ui_Dialog as _settings
base = """'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
@@ -25,10 +23,11 @@ base = """'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/T
class Settings(QtWidgets.QDialog, _settings):
def __init__(self, user):
def __init__(self, user=None):
super().__init__()
self.setupUi(self)
self.password.setEchoMode(QtWidgets.QLineEdit.EchoMode.Password)
self.password.setEchoMode(QtWidgets.QLineEdit.EchoMode.Normal)
self.zotero_api_key.setEchoMode(QtWidgets.QLineEdit.EchoMode.Normal)
self.editSignature.setAcceptRichText(True)
self.editSignature.setFocusPolicy(QtCore.Qt.FocusPolicy.StrongFocus)
self.bold.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
@@ -36,7 +35,8 @@ class Settings(QtWidgets.QDialog, _settings):
self.underscore.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
self.font_size.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
self.fontComboBox.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
self.setWindowIcon(Icon("settings").icon)
# self.setWindowIcon(Icon("settings").icon)
Icon("settings", self)
self.setWindowTitle("Einstellungen")
self.font_size.setCurrentText("9")
# add button to toggle password visibility
@@ -46,6 +46,7 @@ class Settings(QtWidgets.QDialog, _settings):
self.debug.hide()
self.showPassword = True
self.togglePassword.clicked.connect(self.toggle_password)
self.toggle_api_visibility.clicked.connect(self.toggle_api)
self.tb_select_db.clicked.connect(self.select_db)
self.tb_set_save_path.clicked.connect(self.set_save_path)
self.bold.clicked.connect(self.setFontBold)
@@ -55,8 +56,15 @@ class Settings(QtWidgets.QDialog, _settings):
self.fontComboBox.currentFontChanged.connect(self.setCurrentFont)
self.debug.clicked.connect(self.debug_mode)
self.toggle_password()
self.toggle_api()
self.load_config()
self.buttonBox.accepted.connect(self.save)
# set text in gridlayout_4 to be not bold
self.toolBox.setItemIcon(0, Icon("database").icon)
self.toolBox.setItemIcon(1, Icon("api").icon)
self.toolBox.setItemIcon(2, Icon("mail").icon)
self.toolBox.setItemIcon(3, Icon("icons").icon)
def load_config(self):
self.db_name.setText(settings.database.name)
@@ -71,6 +79,36 @@ class Settings(QtWidgets.QDialog, _settings):
settings.mail.use_user_name if settings.mail.use_user_name else False
)
self.editSignature.setHtml(settings.mail.signature)
self.zotero_api_key.setText(settings.zotero.api_key)
self.zotero_library_id.setText(settings.zotero.library_id)
self.zotero_library_type.setText(settings.zotero.library_type)
for row, color in enumerate(settings.icons.colors):
# add a label with the color name, a lineedit with the color value and a button to change the color
label = QtWidgets.QLabel(color)
lineedit = QtWidgets.QLineEdit(settings.icons.colors[color])
button = QtWidgets.QPushButton("Farbe ändern")
button.clicked.connect(lambda: self.change_color(lineedit))
self.gridLayout_4.addWidget(label, row, 0)
self.gridLayout_4.addWidget(lineedit, row, 1)
self.gridLayout_4.addWidget(button, row, 2)
for i in range(self.gridLayout_4.count()):
self.gridLayout_4.itemAt(i).widget().setFont(QtGui.QFont("Segoe UI", 9))
# set scrollarea layout to be a form layout
# label = QtWidgets.QLabel("Icon Name")
# filename = QtWidgets.QLabel("Dateiname")
# self.formLayout.addRow(label, filename)
for row, icon in enumerate(settings.icons.icons):
label = QtWidgets.QLabel(icon)
lineedit = QtWidgets.QLineEdit(settings.icons.icons[icon])
self.formLayout.addRow(label, lineedit)
def change_color(self, lineedit):
colorDialog = QtWidgets.QColorDialog()
colorDialog.setSizePolicy()
color = colorDialog.getColor()
if color.isValid():
lineedit.setText(color.name())
def setCurrentFont(self):
font = self.fontComboBox.currentFont()
@@ -82,17 +120,23 @@ class Settings(QtWidgets.QDialog, _settings):
self.editSignature.setFontPointSize(int(size))
def toggle_password(self):
self.togglePassword.setIconSize(QtCore.QSize(16, 16))
# self.togglePassword.setIconSize(QtCore.QSize(16, 16))
if self.showPassword is False:
if self.password.echoMode() == QtWidgets.QLineEdit.EchoMode.Password:
self.password.setEchoMode(QtWidgets.QLineEdit.EchoMode.Normal)
Icon("show_password", self.togglePassword)
self.showPassword = True
else:
self.password.setEchoMode(QtWidgets.QLineEdit.EchoMode.Password)
Icon("hide_password", self.togglePassword)
self.showPassword = False
def toggle_api(self):
if self.zotero_api_key.echoMode() == QtWidgets.QLineEdit.EchoMode.Normal:
self.zotero_api_key.setEchoMode(QtWidgets.QLineEdit.EchoMode.Password)
Icon("hide_password", self.toggle_api_visibility)
else:
self.zotero_api_key.setEchoMode(QtWidgets.QLineEdit.EchoMode.Normal)
Icon("show_password", widget=self.toggle_api_visibility)
def setFontBold(self):
if self.bold.isChecked():
@@ -158,15 +202,38 @@ class Settings(QtWidgets.QDialog, _settings):
"use_user_name", self.use_username_smtp_login.isChecked()
)
settings.set_mail_attr("signature", signature)
print("Settings:")
print(settings)
settings.set_zotero_attr("api_key", self.zotero_api_key.text())
settings.set_zotero_attr("library_id", self.zotero_library_id.text())
settings.set_zotero_attr("library_type", self.zotero_library_type.text())
for color in self.get_colors():
settings.icons.colors[color] = self.get_colors()[color]
print(color)
for icon in self.get_icons():
settings.icons.icons[icon] = self.get_icons()[icon]
settings.icons.save()
return settings
def get_colors(self) -> dict:
colors = {}
for i in range(self.gridLayout_4.count()):
widget = self.gridLayout_4.itemAt(i).widget()
if isinstance(widget, QtWidgets.QLineEdit):
colors[self.gridLayout_4.itemAt(i - 1).widget().text()] = widget.text()
return colors
def get_icons(self):
icons = {}
for row in range(self.formLayout.count()):
widget = self.formLayout.itemAt(row).widget()
if isinstance(widget, QtWidgets.QLineEdit):
icons[self.formLayout.itemAt(row - 1).widget().text()] = widget.text()
return icons
def save(self):
config = self.return_data()
print(config.mail)
print("Saving config")
print(config)
# print(config)
config.save()
self.accept()
@@ -175,6 +242,6 @@ def launch_settings():
import sys
app = QtWidgets.QApplication(sys.argv)
window = Settings("admin")
window = Settings()
window.show()
sys.exit(app.exec())