diff --git a/src/ui/Ui_semesterapparat_ui.py b/src/ui/Ui_semesterapparat_ui.py index 02d8719..414cbdf 100644 --- a/src/ui/Ui_semesterapparat_ui.py +++ b/src/ui/Ui_semesterapparat_ui.py @@ -214,6 +214,7 @@ class Ui_MainWindow(object): font.setPointSize(12) font.setBold(True) self.app_group_box.setFont(font) + self.app_group_box.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) self.app_group_box.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter) self.app_group_box.setCheckable(False) self.app_group_box.setObjectName("app_group_box") @@ -297,7 +298,7 @@ class Ui_MainWindow(object): font.setPointSize(9) font.setBold(False) self.prof_title.setFont(font) - self.prof_title.setFocusPolicy(QtCore.Qt.FocusPolicy.StrongFocus) + self.prof_title.setFocusPolicy(QtCore.Qt.FocusPolicy.ClickFocus) self.prof_title.setObjectName("prof_title") self.fach_mand = QtWidgets.QLabel(parent=self.app_group_box) self.fach_mand.setGeometry(QtCore.QRect(510, 50, 47, 21)) @@ -339,6 +340,7 @@ class Ui_MainWindow(object): spacerItem6 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum) self.gridLayout_6.addItem(spacerItem6, 0, 3, 1, 1) self.valid_check_app_fach = QtWidgets.QToolButton(parent=self.gridLayoutWidget_5) + self.valid_check_app_fach.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) self.valid_check_app_fach.setText("") self.valid_check_app_fach.setAutoRaise(True) self.valid_check_app_fach.setArrowType(QtCore.Qt.ArrowType.NoArrow) @@ -357,7 +359,7 @@ class Ui_MainWindow(object): font.setPointSize(9) font.setBold(False) self.prof_tel_nr.setFont(font) - self.prof_tel_nr.setInputMethodHints(QtCore.Qt.InputMethodHint.ImhDigitsOnly) + self.prof_tel_nr.setInputMethodHints(QtCore.Qt.InputMethodHint.ImhNone) self.prof_tel_nr.setPlaceholderText("") self.prof_tel_nr.setObjectName("prof_tel_nr") self.check_eternal_app = QtWidgets.QCheckBox(parent=self.app_group_box) @@ -374,7 +376,7 @@ class Ui_MainWindow(object): font.setPointSize(9) font.setBold(False) self.sem_sommer.setFont(font) - self.sem_sommer.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) + self.sem_sommer.setFocusPolicy(QtCore.Qt.FocusPolicy.StrongFocus) self.sem_sommer.setObjectName("sem_sommer") self.drpdwn_prof_name = QtWidgets.QComboBox(parent=self.app_group_box) self.drpdwn_prof_name.setGeometry(QtCore.QRect(120, 110, 121, 22)) @@ -434,7 +436,7 @@ class Ui_MainWindow(object): self.prof_mail.setPlaceholderText("") self.prof_mail.setObjectName("prof_mail") self.formLayoutWidget_2 = QtWidgets.QWidget(parent=self.app_group_box) - self.formLayoutWidget_2.setGeometry(QtCore.QRect(560, 100, 202, 80)) + self.formLayoutWidget_2.setGeometry(QtCore.QRect(560, 100, 211, 99)) self.formLayoutWidget_2.setObjectName("formLayoutWidget_2") self.formLayout_3 = QtWidgets.QFormLayout(self.formLayoutWidget_2) self.formLayout_3.setContentsMargins(0, 0, 0, 0) @@ -480,7 +482,7 @@ class Ui_MainWindow(object): self.sem_year.setMaxLength(5) self.sem_year.setObjectName("sem_year") self.check_send_mail = QtWidgets.QCheckBox(parent=self.app_group_box) - self.check_send_mail.setGeometry(QtCore.QRect(460, 150, 91, 17)) + self.check_send_mail.setGeometry(QtCore.QRect(450, 150, 91, 24)) font = QtGui.QFont() font.setPointSize(9) font.setBold(False) @@ -492,7 +494,7 @@ class Ui_MainWindow(object): font.setPointSize(9) font.setBold(False) self.sem_winter.setFont(font) - self.sem_winter.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) + self.sem_winter.setFocusPolicy(QtCore.Qt.FocusPolicy.StrongFocus) self.sem_winter.setObjectName("sem_winter") self.label_4 = QtWidgets.QLabel(parent=self.app_group_box) self.label_4.setGeometry(QtCore.QRect(20, 110, 71, 21)) @@ -514,6 +516,7 @@ class Ui_MainWindow(object): font.setPointSize(9) font.setBold(False) self.btn_apparat_save.setFont(font) + self.btn_apparat_save.setStatusTip("") self.btn_apparat_save.setObjectName("btn_apparat_save") self.label_5 = QtWidgets.QLabel(parent=self.app_group_box) self.label_5.setGeometry(QtCore.QRect(250, 50, 91, 21)) @@ -548,27 +551,32 @@ class Ui_MainWindow(object): self.label_6.setObjectName("label_6") self.valid_check_profname = QtWidgets.QToolButton(parent=self.app_group_box) self.valid_check_profname.setGeometry(QtCore.QRect(240, 110, 23, 22)) + self.valid_check_profname.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) self.valid_check_profname.setText("") self.valid_check_profname.setAutoRaise(True) self.valid_check_profname.setArrowType(QtCore.Qt.ArrowType.NoArrow) self.valid_check_profname.setObjectName("valid_check_profname") self.valid_check_appname = QtWidgets.QToolButton(parent=self.app_group_box) self.valid_check_appname.setGeometry(QtCore.QRect(450, 50, 22, 22)) + self.valid_check_appname.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) self.valid_check_appname.setText("") self.valid_check_appname.setAutoRaise(True) self.valid_check_appname.setObjectName("valid_check_appname") self.valid_check_semester = QtWidgets.QToolButton(parent=self.app_group_box) self.valid_check_semester.setGeometry(QtCore.QRect(520, 90, 22, 22)) + self.valid_check_semester.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) self.valid_check_semester.setText("") self.valid_check_semester.setAutoRaise(True) self.valid_check_semester.setObjectName("valid_check_semester") self.valid_check_mail = QtWidgets.QToolButton(parent=self.app_group_box) self.valid_check_mail.setGeometry(QtCore.QRect(240, 140, 22, 22)) + self.valid_check_mail.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) self.valid_check_mail.setText("") self.valid_check_mail.setAutoRaise(True) self.valid_check_mail.setObjectName("valid_check_mail") self.valid_check_telnr = QtWidgets.QToolButton(parent=self.app_group_box) self.valid_check_telnr.setGeometry(QtCore.QRect(240, 160, 22, 22)) + self.valid_check_telnr.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) self.valid_check_telnr.setText("") self.valid_check_telnr.setAutoRaise(True) self.valid_check_telnr.setObjectName("valid_check_telnr") @@ -702,7 +710,7 @@ class Ui_MainWindow(object): self.table_elsa_list.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken) self.table_elsa_list.setEditTriggers(QtWidgets.QAbstractItemView.EditTrigger.NoEditTriggers) self.table_elsa_list.setObjectName("table_elsa_list") - self.table_elsa_list.setColumnCount(4) + self.table_elsa_list.setColumnCount(6) self.table_elsa_list.setRowCount(0) item = QtWidgets.QTableWidgetItem() self.table_elsa_list.setHorizontalHeaderItem(0, item) @@ -712,6 +720,10 @@ class Ui_MainWindow(object): self.table_elsa_list.setHorizontalHeaderItem(2, item) item = QtWidgets.QTableWidgetItem() self.table_elsa_list.setHorizontalHeaderItem(3, item) + item = QtWidgets.QTableWidgetItem() + self.table_elsa_list.setHorizontalHeaderItem(4, item) + item = QtWidgets.QTableWidgetItem() + self.table_elsa_list.setHorizontalHeaderItem(5, item) self.table_elsa_list.horizontalHeader().setStretchLastSection(True) self.elsa_statistic_frame = QtWidgets.QFrame(parent=self.elsa) self.elsa_statistic_frame.setGeometry(QtCore.QRect(800, 410, 451, 321)) @@ -1199,7 +1211,7 @@ class Ui_MainWindow(object): self.verticalLayout_4.addWidget(self.groupBox) self.horizontalLayout_6.addWidget(self.frame_creation_progress) self.frame_2 = QtWidgets.QFrame(parent=self.centralwidget) - self.frame_2.setGeometry(QtCore.QRect(1280, 0, 301, 341)) + self.frame_2.setGeometry(QtCore.QRect(1280, 20, 301, 341)) self.frame_2.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel) self.frame_2.setFrameShadow(QtWidgets.QFrame.Shadow.Raised) self.frame_2.setObjectName("frame_2") @@ -1271,16 +1283,18 @@ class Ui_MainWindow(object): self.retranslateUi(MainWindow) self.tabWidget.setCurrentIndex(0) - self.elsa_semester.textChanged['QString'].connect(self.active_semester.hide) # type: ignore self.elsa_semester.textChanged['QString'].connect(self.active_semester.show) # type: ignore + self.elsa_semester.textChanged['QString'].connect(self.active_semester.hide) # type: ignore QtCore.QMetaObject.connectSlotsByName(MainWindow) MainWindow.setTabOrder(self.drpdwn_app_nr, self.prof_title) MainWindow.setTabOrder(self.prof_title, self.drpdwn_prof_name) - MainWindow.setTabOrder(self.drpdwn_prof_name, self.prof_mail) - MainWindow.setTabOrder(self.prof_mail, self.prof_tel_nr) - MainWindow.setTabOrder(self.prof_tel_nr, self.app_name) + MainWindow.setTabOrder(self.drpdwn_prof_name, self.prof_tel_nr) + MainWindow.setTabOrder(self.prof_tel_nr, self.prof_mail) + MainWindow.setTabOrder(self.prof_mail, self.app_name) MainWindow.setTabOrder(self.app_name, self.app_fach) - MainWindow.setTabOrder(self.app_fach, self.sem_year) + MainWindow.setTabOrder(self.app_fach, self.sem_winter) + MainWindow.setTabOrder(self.sem_winter, self.sem_sommer) + MainWindow.setTabOrder(self.sem_sommer, self.sem_year) MainWindow.setTabOrder(self.sem_year, self.check_eternal_app) MainWindow.setTabOrder(self.check_eternal_app, self.btn_add_document) MainWindow.setTabOrder(self.btn_add_document, self.btn_open_document) @@ -1288,9 +1302,7 @@ class Ui_MainWindow(object): MainWindow.setTabOrder(self.check_file, self.check_send_mail) MainWindow.setTabOrder(self.check_send_mail, self.btn_apparat_save) MainWindow.setTabOrder(self.btn_apparat_save, self.btn_apparat_apply) - MainWindow.setTabOrder(self.btn_apparat_apply, self.edit_faculty_member_new_title) - MainWindow.setTabOrder(self.edit_faculty_member_new_title, self.edit_faculty_member_new_surname) - MainWindow.setTabOrder(self.edit_faculty_member_new_surname, self.user_faculty_member_new_name) + MainWindow.setTabOrder(self.btn_apparat_apply, self.user_faculty_member_new_name) MainWindow.setTabOrder(self.user_faculty_member_new_name, self.user_faculty_member_new_mail) MainWindow.setTabOrder(self.user_faculty_member_new_mail, self.user_faculty_member_new_telnr) MainWindow.setTabOrder(self.user_faculty_member_new_telnr, self.update_faculty_member) @@ -1329,6 +1341,14 @@ class Ui_MainWindow(object): MainWindow.setTabOrder(self.elsa_cancel_create, self.elsa_add_new) MainWindow.setTabOrder(self.elsa_add_new, self.elsa_table) MainWindow.setTabOrder(self.elsa_table, self.reset_selection) + MainWindow.setTabOrder(self.reset_selection, self.valid_check_app_fach) + MainWindow.setTabOrder(self.valid_check_app_fach, self.edit_faculty_member_new_surname) + MainWindow.setTabOrder(self.edit_faculty_member_new_surname, self.valid_check_profname) + MainWindow.setTabOrder(self.valid_check_profname, self.valid_check_appname) + MainWindow.setTabOrder(self.valid_check_appname, self.valid_check_semester) + MainWindow.setTabOrder(self.valid_check_semester, self.valid_check_mail) + MainWindow.setTabOrder(self.valid_check_mail, self.valid_check_telnr) + MainWindow.setTabOrder(self.valid_check_telnr, self.edit_faculty_member_new_title) def retranslateUi(self, MainWindow): _translate = QtCore.QCoreApplication.translate @@ -1397,6 +1417,7 @@ class Ui_MainWindow(object): self.check_eternal_app.setText(_translate("MainWindow", "Dauerapparat")) self.sem_sommer.setText(_translate("MainWindow", "Sommer")) self.mail_mand.setText(_translate("MainWindow", "*")) + self.label_3.setStatusTip(_translate("MainWindow", "sdvosdvsdv")) self.label_3.setText(_translate("MainWindow", "Prof. Titel")) self.label_2.setText(_translate("MainWindow", "Apparatsnummer")) self.label_8.setText(_translate("MainWindow", "Mail")) @@ -1408,10 +1429,11 @@ class Ui_MainWindow(object): self.sem_winter.setText(_translate("MainWindow", "Winter")) self.label_4.setText(_translate("MainWindow", "Prof. Name")) self.telnr_mand.setText(_translate("MainWindow", "*")) - self.btn_apparat_save.setStatusTip(_translate("MainWindow", "searching")) self.btn_apparat_save.setText(_translate("MainWindow", "Speichern")) self.label_5.setText(_translate("MainWindow", "Apparatsname")) self.label_6.setText(_translate("MainWindow", "Semester")) + self.valid_check_profname.setStatusTip(_translate("MainWindow", "Format: Nachname, Vorname")) + self.valid_check_mail.setStatusTip(_translate("MainWindow", "mail@irgendwas.wasanderes")) self.add_medium.setText(_translate("MainWindow", "Medien hinzufügen")) self.tabWidget.setTabText(self.tabWidget.indexOf(self.createApparat), _translate("MainWindow", "Anlegen")) self.tabWidget.setTabText(self.tabWidget.indexOf(self.search_statistics), _translate("MainWindow", "Suchen / Statistik")) @@ -1436,11 +1458,15 @@ class Ui_MainWindow(object): item = self.table_elsa_list.horizontalHeaderItem(0) item.setText(_translate("MainWindow", "Kapiteltitel")) item = self.table_elsa_list.horizontalHeaderItem(1) - item.setText(_translate("MainWindow", "Buchtitel")) + item.setText(_translate("MainWindow", "Autor(en)")) item = self.table_elsa_list.horizontalHeaderItem(2) - item.setText(_translate("MainWindow", "Signatur")) + item.setText(_translate("MainWindow", "Buchtitel")) item = self.table_elsa_list.horizontalHeaderItem(3) + item.setText(_translate("MainWindow", "Signatur")) + item = self.table_elsa_list.horizontalHeaderItem(4) item.setText(_translate("MainWindow", "Seite")) + item = self.table_elsa_list.horizontalHeaderItem(5) + item.setText(_translate("MainWindow", "Herausgeber")) item = self.elsa_statistics_table.horizontalHeaderItem(0) item.setText(_translate("MainWindow", "Semester")) item = self.elsa_statistics_table.horizontalHeaderItem(1) diff --git a/src/ui/dialogs/__init__.py b/src/ui/dialogs/__init__.py index df1328a..d10854a 100644 --- a/src/ui/dialogs/__init__.py +++ b/src/ui/dialogs/__init__.py @@ -14,6 +14,7 @@ from .popup_confirm import ConfirmDialog as popus_confirm from .reminder import ReminderDialog as reminder_ui from .settings import Settings from .about import About +from .elsa_gen_confirm import ElsaGenConfirm __all__ = [ "ext_app", diff --git a/src/ui/dialogs/dialog_sources/Ui_app_status.py b/src/ui/dialogs/dialog_sources/Ui_app_status.py new file mode 100644 index 0000000..8fa232e --- /dev/null +++ b/src/ui/dialogs/dialog_sources/Ui_app_status.py @@ -0,0 +1,22 @@ +# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\app_status.ui' +# +# Created by: PyQt6 UI code generator 6.6.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. + + +from PyQt6 import QtCore, QtGui, QtWidgets + + +class Ui_Form(object): + def setupUi(self, Form): + Form.setObjectName("Form") + Form.resize(300, 500) + + self.retranslateUi(Form) + QtCore.QMetaObject.connectSlotsByName(Form) + + def retranslateUi(self, Form): + _translate = QtCore.QCoreApplication.translate + Form.setWindowTitle(_translate("Form", "Form")) diff --git a/src/ui/dialogs/dialog_sources/Ui_elsa_generate_citation.py b/src/ui/dialogs/dialog_sources/Ui_elsa_generate_citation.py new file mode 100644 index 0000000..8f31646 --- /dev/null +++ b/src/ui/dialogs/dialog_sources/Ui_elsa_generate_citation.py @@ -0,0 +1,76 @@ +# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\elsa_generate_citation.ui' +# +# Created by: PyQt6 UI code generator 6.6.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. + + +from PyQt6 import QtCore, QtGui, QtWidgets + + +class Ui_Dialog(object): + def setupUi(self, Dialog): + Dialog.setObjectName("Dialog") + Dialog.resize(564, 517) + self.verticalLayout_2 = QtWidgets.QVBoxLayout(Dialog) + self.verticalLayout_2.setObjectName("verticalLayout_2") + self.select_type = QtWidgets.QFrame(parent=Dialog) + self.select_type.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel) + self.select_type.setFrameShadow(QtWidgets.QFrame.Shadow.Raised) + self.select_type.setObjectName("select_type") + self.verticalLayout = QtWidgets.QVBoxLayout(self.select_type) + self.verticalLayout.setObjectName("verticalLayout") + self.radio_mono = QtWidgets.QRadioButton(parent=self.select_type) + self.radio_mono.setObjectName("radio_mono") + self.verticalLayout.addWidget(self.radio_mono) + self.radio_zs = QtWidgets.QRadioButton(parent=self.select_type) + self.radio_zs.setObjectName("radio_zs") + self.verticalLayout.addWidget(self.radio_zs) + self.radio_hg = QtWidgets.QRadioButton(parent=self.select_type) + self.radio_hg.setObjectName("radio_hg") + self.verticalLayout.addWidget(self.radio_hg) + spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding) + self.verticalLayout.addItem(spacerItem) + self.verticalLayout_2.addWidget(self.select_type) + self.check = QtWidgets.QGroupBox(parent=Dialog) + font = QtGui.QFont() + font.setBold(True) + self.check.setFont(font) + self.check.setObjectName("check") + self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.check) + self.verticalLayout_3.setObjectName("verticalLayout_3") + self.citation_style_result = QtWidgets.QStackedWidget(parent=self.check) + font = QtGui.QFont() + font.setBold(False) + self.citation_style_result.setFont(font) + self.citation_style_result.setObjectName("citation_style_result") + self.monografie = QtWidgets.QWidget() + self.monografie.setObjectName("monografie") + self.citation_style_result.addWidget(self.monografie) + self.zsaufsatz = QtWidgets.QWidget() + self.zsaufsatz.setObjectName("zsaufsatz") + self.citation_style_result.addWidget(self.zsaufsatz) + self.herausgeberwerk = QtWidgets.QWidget() + self.herausgeberwerk.setObjectName("herausgeberwerk") + self.citation_style_result.addWidget(self.herausgeberwerk) + self.verticalLayout_3.addWidget(self.citation_style_result) + self.pushButton = QtWidgets.QPushButton(parent=self.check) + self.pushButton.setObjectName("pushButton") + self.verticalLayout_3.addWidget(self.pushButton, 0, QtCore.Qt.AlignmentFlag.AlignRight) + self.verticalLayout_2.addWidget(self.check) + self.verticalLayout_2.setStretch(0, 20) + self.verticalLayout_2.setStretch(1, 80) + + self.retranslateUi(Dialog) + self.citation_style_result.setCurrentIndex(2) + QtCore.QMetaObject.connectSlotsByName(Dialog) + + def retranslateUi(self, Dialog): + _translate = QtCore.QCoreApplication.translate + Dialog.setWindowTitle(_translate("Dialog", "Dialog")) + self.radio_mono.setText(_translate("Dialog", "Monografie")) + self.radio_zs.setText(_translate("Dialog", "Zeitschriftenaufsatz")) + self.radio_hg.setText(_translate("Dialog", "Herausgeberwerk")) + self.check.setTitle(_translate("Dialog", "Daten")) + self.pushButton.setText(_translate("Dialog", "Bestätigen")) diff --git a/src/ui/dialogs/dialog_sources/Ui_elsa_generator_confirm.py b/src/ui/dialogs/dialog_sources/Ui_elsa_generator_confirm.py new file mode 100644 index 0000000..e073252 --- /dev/null +++ b/src/ui/dialogs/dialog_sources/Ui_elsa_generator_confirm.py @@ -0,0 +1,120 @@ +# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\elsa_generator_confirm.ui' +# +# Created by: PyQt6 UI code generator 6.6.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. + + +from PyQt6 import QtCore, QtGui, QtWidgets + + +class Ui_Dialog(object): + def setupUi(self, Dialog): + Dialog.setObjectName("Dialog") + Dialog.resize(530, 210) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Fixed, QtWidgets.QSizePolicy.Policy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(Dialog.sizePolicy().hasHeightForWidth()) + Dialog.setSizePolicy(sizePolicy) + Dialog.setMaximumSize(QtCore.QSize(530, 210)) + self.horizontalLayout = QtWidgets.QHBoxLayout(Dialog) + self.horizontalLayout.setObjectName("horizontalLayout") + self.groupBox = QtWidgets.QGroupBox(parent=Dialog) + font = QtGui.QFont() + font.setBold(True) + self.groupBox.setFont(font) + self.groupBox.setObjectName("groupBox") + self.gridLayout = QtWidgets.QGridLayout(self.groupBox) + self.gridLayout.setObjectName("gridLayout") + self.label = QtWidgets.QLabel(parent=self.groupBox) + font = QtGui.QFont() + font.setBold(False) + self.label.setFont(font) + self.label.setObjectName("label") + self.gridLayout.addWidget(self.label, 1, 0, 1, 1) + self.bookauthor = QtWidgets.QLineEdit(parent=self.groupBox) + font = QtGui.QFont() + font.setBold(False) + self.bookauthor.setFont(font) + self.bookauthor.setObjectName("bookauthor") + self.gridLayout.addWidget(self.bookauthor, 5, 1, 1, 1) + self.book_title = QtWidgets.QLineEdit(parent=self.groupBox) + font = QtGui.QFont() + font.setBold(False) + self.book_title.setFont(font) + self.book_title.setObjectName("book_title") + self.gridLayout.addWidget(self.book_title, 3, 1, 1, 1) + self.label_5 = QtWidgets.QLabel(parent=self.groupBox) + font = QtGui.QFont() + font.setBold(False) + self.label_5.setFont(font) + self.label_5.setObjectName("label_5") + self.gridLayout.addWidget(self.label_5, 5, 0, 1, 1) + self.pages = QtWidgets.QLineEdit(parent=self.groupBox) + font = QtGui.QFont() + font.setBold(False) + self.pages.setFont(font) + self.pages.setObjectName("pages") + self.gridLayout.addWidget(self.pages, 4, 1, 1, 1) + self.label_2 = QtWidgets.QLabel(parent=self.groupBox) + font = QtGui.QFont() + font.setBold(False) + self.label_2.setFont(font) + self.label_2.setObjectName("label_2") + self.gridLayout.addWidget(self.label_2, 2, 0, 1, 1) + self.label_3 = QtWidgets.QLabel(parent=self.groupBox) + font = QtGui.QFont() + font.setBold(False) + self.label_3.setFont(font) + self.label_3.setObjectName("label_3") + self.gridLayout.addWidget(self.label_3, 3, 0, 1, 1) + self.label_4 = QtWidgets.QLabel(parent=self.groupBox) + font = QtGui.QFont() + font.setBold(False) + self.label_4.setFont(font) + self.label_4.setObjectName("label_4") + self.gridLayout.addWidget(self.label_4, 4, 0, 1, 1) + self.chapter_title = QtWidgets.QLineEdit(parent=self.groupBox) + font = QtGui.QFont() + font.setBold(False) + self.chapter_title.setFont(font) + self.chapter_title.setObjectName("chapter_title") + self.gridLayout.addWidget(self.chapter_title, 1, 1, 1, 1) + self.chapter_authors = QtWidgets.QLineEdit(parent=self.groupBox) + font = QtGui.QFont() + font.setBold(False) + self.chapter_authors.setFont(font) + self.chapter_authors.setObjectName("chapter_authors") + self.gridLayout.addWidget(self.chapter_authors, 2, 1, 1, 1) + self.label_6 = QtWidgets.QLabel(parent=self.groupBox) + font = QtGui.QFont() + font.setBold(False) + self.label_6.setFont(font) + self.label_6.setObjectName("label_6") + self.gridLayout.addWidget(self.label_6, 0, 1, 1, 1) + self.horizontalLayout.addWidget(self.groupBox) + self.buttonBox = QtWidgets.QDialogButtonBox(parent=Dialog) + self.buttonBox.setLayoutDirection(QtCore.Qt.LayoutDirection.LeftToRight) + self.buttonBox.setOrientation(QtCore.Qt.Orientation.Vertical) + self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.StandardButton.Cancel|QtWidgets.QDialogButtonBox.StandardButton.Ok) + self.buttonBox.setCenterButtons(False) + self.buttonBox.setObjectName("buttonBox") + self.horizontalLayout.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.groupBox.setTitle(_translate("Dialog", "Angaben korrekt?")) + self.label.setText(_translate("Dialog", "Kapiteltitel")) + self.label_5.setText(_translate("Dialog", "Herausgebername")) + self.label_2.setText(_translate("Dialog", "Autor(en)")) + self.label_3.setText(_translate("Dialog", "Buchtitel")) + self.label_4.setText(_translate("Dialog", "Seite(n)")) + self.label_6.setText(_translate("Dialog", "Hier können fehlerhafte / fehlende Daten geändert werden")) diff --git a/src/ui/dialogs/dialog_sources/elsa_generate_citation.ui b/src/ui/dialogs/dialog_sources/elsa_generate_citation.ui new file mode 100644 index 0000000..813bce3 --- /dev/null +++ b/src/ui/dialogs/dialog_sources/elsa_generate_citation.ui @@ -0,0 +1,103 @@ + + + Dialog + + + + 0 + 0 + 564 + 517 + + + + Dialog + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + Monografie + + + + + + + Zeitschriftenaufsatz + + + + + + + Herausgeberwerk + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + + true + + + + Daten + + + + + + + false + + + + 2 + + + + + + + + + + Bestätigen + + + + + + + + + + + diff --git a/src/ui/dialogs/dialog_sources/elsa_generator_confirm.ui b/src/ui/dialogs/dialog_sources/elsa_generator_confirm.ui new file mode 100644 index 0000000..ced33b9 --- /dev/null +++ b/src/ui/dialogs/dialog_sources/elsa_generator_confirm.ui @@ -0,0 +1,213 @@ + + + Dialog + + + + 0 + 0 + 530 + 210 + + + + + 0 + 0 + + + + + 530 + 210 + + + + Dialog + + + + + + + true + + + + Angaben korrekt? + + + + + + + false + + + + Kapiteltitel + + + + + + + + false + + + + + + + + + false + + + + + + + + + false + + + + Herausgebername + + + + + + + + false + + + + + + + + + false + + + + Autor(en) + + + + + + + + false + + + + Buchtitel + + + + + + + + false + + + + Seite(n) + + + + + + + + false + + + + + + + + + false + + + + + + + + + false + + + + Hier können fehlerhafte / fehlende Daten geändert werden + + + + + + + + + + Qt::LeftToRight + + + Qt::Vertical + + + QDialogButtonBox::Cancel|QDialogButtonBox::Ok + + + false + + + + + + + + + buttonBox + accepted() + Dialog + accept() + + + 248 + 254 + + + 157 + 274 + + + + + buttonBox + rejected() + Dialog + reject() + + + 316 + 260 + + + 286 + 274 + + + + + diff --git a/src/ui/dialogs/elsa_citation.py b/src/ui/dialogs/elsa_citation.py new file mode 100644 index 0000000..eae7288 --- /dev/null +++ b/src/ui/dialogs/elsa_citation.py @@ -0,0 +1,9 @@ +from .dialog_sources.Ui_elsa_generate_citation import Ui_Dialog +from PyQt6 import QtWidgets + + +class ElsaCitation(QtWidgets.QDialog, Ui_Dialog): + def __init__(self, parent=None, data=None): + super(ElsaCitation, self).__init__(parent) + self.setupUi(self) + self.radio_hg.clicked.connect(self.set_page) diff --git a/src/ui/dialogs/elsa_gen_confirm.py b/src/ui/dialogs/elsa_gen_confirm.py new file mode 100644 index 0000000..1cfbd0c --- /dev/null +++ b/src/ui/dialogs/elsa_gen_confirm.py @@ -0,0 +1,41 @@ +from .dialog_sources.Ui_elsa_generator_confirm import Ui_Dialog +from PyQt6 import QtCore, QtWidgets, QtGui + + +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 diff --git a/src/ui/dialogs/mail.py b/src/ui/dialogs/mail.py index 5880a00..0dec446 100644 --- a/src/ui/dialogs/mail.py +++ b/src/ui/dialogs/mail.py @@ -34,7 +34,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 self.subject = app_subject @@ -90,7 +90,7 @@ Tel.: 0761/682-778""" def load_mail_templates(self): print("loading mail templates") - + logger.log_info("Loading mail templates") mail_templates = os.listdir("mail_vorlagen") logger.log_info(f"Mail templates: {mail_templates}") for template in mail_templates: @@ -109,8 +109,10 @@ Tel.: 0761/682-778""" return f"Guten Tag {prof}," def set_mail(self): + logger.log_info("Setting mail") email_template = self.comboBox.currentText() if email_template == "": + logger.log_debug("No mail template selected") return with open(f"mail_vorlagen/{email_template}", "r", encoding="utf-8") as f: mail_template = f.read() @@ -175,23 +177,6 @@ Tel.: 0761/682-778""" # close the dialog self.accept() - # # create a temporary file - # mail_header = self.mail_header.text() - # mail_body = self.mail_body.toHtml() - # mail = self.mail_data + mail_body - # mail = mail.replace("Subject:", f"Subject: {mail_header}") - # directory = config["database"]["tempdir"] - # directory = directory.replace("~", str(os.path.expanduser("~"))) - # with tempfile.NamedTemporaryFile( - # mode="w", delete=False, suffix=".eml", encoding="utf-8", dir=directory - # ) as f: - # f.write(mail) - # self.mail_path = f.name - # print(self.mail_path) - # # open the file using thunderbird - # subprocess.Popen([f"{self.mail_path}"]) - # # delete the file - # # os.remove(self.mail_path) def launch_gui(app_id="", app_name="", app_subject="", prof_name="", prof_mail=""): diff --git a/src/ui/semesterapparat_ui.ui b/src/ui/semesterapparat_ui.ui index 6ce7e96..c5951c2 100644 --- a/src/ui/semesterapparat_ui.ui +++ b/src/ui/semesterapparat_ui.ui @@ -494,6 +494,9 @@ true + + Qt::NoFocus + Apparatsdetails @@ -700,7 +703,7 @@ - Qt::StrongFocus + Qt::ClickFocus @@ -810,6 +813,9 @@ + + Qt::NoFocus + @@ -858,7 +864,7 @@ - Qt::ImhDigitsOnly + Qt::ImhNone @@ -902,7 +908,7 @@ - Qt::NoFocus + Qt::StrongFocus Sommer @@ -973,6 +979,9 @@ false + + sdvosdvsdv + Prof. Titel @@ -1076,8 +1085,8 @@ 560 100 - 202 - 80 + 211 + 99 @@ -1172,10 +1181,10 @@ - 460 + 450 150 91 - 17 + 24 @@ -1204,7 +1213,7 @@ - Qt::NoFocus + Qt::StrongFocus Winter @@ -1267,7 +1276,7 @@ - searching + Speichern @@ -1367,6 +1376,12 @@ 22 + + Qt::NoFocus + + + Format: Nachname, Vorname + @@ -1386,6 +1401,9 @@ 22 + + Qt::NoFocus + @@ -1402,6 +1420,9 @@ 22 + + Qt::NoFocus + @@ -1418,6 +1439,12 @@ 22 + + Qt::NoFocus + + + mail@irgendwas.wasanderes + @@ -1434,6 +1461,9 @@ 22 + + Qt::NoFocus + @@ -1789,6 +1819,11 @@ Kapiteltitel + + + Autor(en) + + Buchtitel @@ -1804,6 +1839,11 @@ Seite + + + Herausgeber + + @@ -2930,7 +2970,7 @@ 1280 - 0 + 20 301 341 @@ -3030,10 +3070,12 @@ drpdwn_app_nr prof_title drpdwn_prof_name - prof_mail prof_tel_nr + prof_mail app_name app_fach + sem_winter + sem_sommer sem_year check_eternal_app btn_add_document @@ -3042,8 +3084,6 @@ check_send_mail btn_apparat_save btn_apparat_apply - edit_faculty_member_new_title - edit_faculty_member_new_surname user_faculty_member_new_name user_faculty_member_new_mail user_faculty_member_new_telnr @@ -3083,27 +3123,19 @@ elsa_add_new elsa_table reset_selection + valid_check_app_fach + edit_faculty_member_new_surname + valid_check_profname + valid_check_appname + valid_check_semester + valid_check_mail + valid_check_telnr + edit_faculty_member_new_title - - elsa_semester - textChanged(QString) - active_semester - hide() - - - 242 - 331 - - - 444 - 342 - - - elsa_semester textChanged(QString) @@ -3120,5 +3152,21 @@ + + elsa_semester + textChanged(QString) + active_semester + hide() + + + 242 + 331 + + + 444 + 342 + + + diff --git a/src/ui/sounds/semesterapparat_ui.ui b/src/ui/sounds/semesterapparat_ui.ui deleted file mode 100644 index 529011b..0000000 --- a/src/ui/sounds/semesterapparat_ui.ui +++ /dev/null @@ -1,2146 +0,0 @@ - - - MainWindow - - - Qt::WindowModal - - - true - - - - 0 - 0 - 1593 - 800 - - - - - 0 - 0 - - - - - 1278 - 800 - - - - - 1920 - 800 - - - - Qt::NoContextMenu - - - Semesterapparatsmanagement - - - - - 0 - 0 - - - - - - 0 - 0 - 1271 - 761 - - - - - - - - - - - Qt::NoFocus - - - 1 - - - - - 0 - 0 - - - - Anlegen - - - - - 0 - 0 - 1261 - 163 - - - - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - Qt::NoFocus - - - Load the Semesterapparate from the database - - - App. aufrufen - - - - - - - Qt::NoFocus - - - neu. App anlegen - - - - - - - Auswahl abbrechen - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - Qt::NoFocus - - - QAbstractScrollArea::AdjustToContents - - - QAbstractItemView::SelectedClicked - - - true - - - Qt::ElideMiddle - - - true - - - true - - - - AppNr - - - - - App Name - - - - - Professor - - - - - gültig bis - - - - - Dauerapparat - - - - - KontoNr - - - - - - - - - - - - - - - - - - 0 - 160 - 1261 - 21 - - - - Qt::Horizontal - - - - - true - - - - 0 - 180 - 1261 - 511 - - - - - - - - 0 - 0 - - - - - 0 - 210 - - - - - 12 - 75 - true - - - - Apparatsdetails - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - - - false - - - - - 765 - 20 - 321 - 181 - - - - - 10 - 50 - false - false - - - - Qt::NoFocus - - - true - - - QAbstractScrollArea::AdjustToContents - - - true - - - QAbstractItemView::DropOnly - - - Qt::LinkAction - - - QAbstractItemView::SingleSelection - - - - Dokumentname - - - - Arial - 8 - - - - - - Dateityp - - - - Arial - 8 - - - - - - Neu? - - - - Arial - 8 - - - - - - path - - - - - - true - - - - 10 - 30 - 1241 - 151 - - - - - 0 - 0 - - - - QFrame::StyledPanel - - - QFrame::Raised - - - - - 110 - 50 - 69 - 22 - - - - - 9 - 50 - false - - - - true - - - - - - 250 - 20 - 91 - 21 - - - - - 9 - 50 - false - - - - Apparatsname - - - - - - 340 - 50 - 82 - 17 - - - - - 9 - 50 - false - - - - Qt::NoFocus - - - Winter - - - - - - 10 - 80 - 71 - 21 - - - - - 9 - 50 - false - - - - Prof. Name - - - - - - 110 - 20 - 69 - 22 - - - - - 9 - 50 - false - - - - Qt::ImhDigitsOnly - - - true - - - - - - 340 - 20 - 113 - 20 - - - - - 9 - 50 - false - - - - Qt::StrongFocus - - - - - - 340 - 70 - 82 - 17 - - - - - 9 - 50 - false - - - - Qt::NoFocus - - - Sommer - - - - - - 10 - 50 - 61 - 20 - - - - - 9 - 50 - false - - - - Prof. Titel - - - - - - 270 - 60 - 61 - 21 - - - - - 9 - 50 - false - - - - Semester - - - - - - 410 - 60 - 113 - 20 - - - - - 9 - 50 - false - - - - Qt::StrongFocus - - - 4 - - - 2023 - - - - - - 10 - 20 - 101 - 21 - - - - - 9 - 50 - false - - - - Apparatsnummer - - - - - - 260 - 120 - 75 - 23 - - - - - 9 - 50 - false - - - - Speichern - - - - - - 350 - 120 - 75 - 23 - - - - - 9 - 50 - false - - - - Aktualisieren - - - - - - 340 - 90 - 101 - 17 - - - - - 9 - 50 - false - - - - Dauerapparat - - - - - - 10 - 110 - 71 - 21 - - - - - 9 - 50 - false - - - - Mail - - - - - - 110 - 110 - 121 - 20 - - - - - 9 - 50 - false - - - - Qt::ImhEmailCharactersOnly - - - 200 - - - - - - - - - 10 - 130 - 71 - 21 - - - - - 9 - 50 - false - - - - Tel - - - - - - 110 - 130 - 121 - 20 - - - - - 9 - 50 - false - - - - Qt::ImhDigitsOnly - - - - - - - - - 470 - 20 - 51 - 21 - - - - - 9 - 50 - false - - - - Fach - - - - - - 510 - 20 - 113 - 20 - - - - - 9 - 50 - false - - - - Qt::StrongFocus - - - - - - 110 - 80 - 121 - 22 - - - - - 8 - 50 - false - - - - Qt::StrongFocus - - - true - - - - - - QComboBox::InsertAlphabetically - - - true - - - - - - 100 - 110 - 47 - 21 - - - - - 9 - 50 - false - - - - * - - - - - - 100 - 130 - 47 - 21 - - - - - 9 - 50 - false - - - - * - - - - - - 100 - 80 - 47 - 21 - - - - - 9 - 50 - false - - - - * - - - - - - 330 - 20 - 16 - 21 - - - - - 9 - 50 - false - - - - * - - - - - - 500 - 20 - 47 - 21 - - - - - 9 - 50 - false - - - - Qt::NoFocus - - - * - - - - - - 330 - 60 - 16 - 21 - - - - - 9 - 50 - false - - - - * - - - - - - 1090 - 20 - 131 - 25 - - - - - 9 - 50 - false - - - - Dokument hinzufügen - - - - - - 1090 - 60 - 131 - 25 - - - - - 9 - 50 - false - - - - Dokument öffnen - - - - - - 1090 - 100 - 131 - 51 - - - - - 9 - 50 - false - - - - Abhängig von der Anzahl der Medien kann die Suche sehr lange dauern - - - Medien aus Dokument - hinzufügen - - - - - - 550 - 70 - 202 - 80 - - - - - - - - 9 - 50 - false - - - - Prof-ID-aDIS - - - - - - - - 9 - 50 - false - - - - - - - - - 9 - 50 - false - - - - Apparat-ID-aDIS - - - - - - - - - - - - 450 - 120 - 91 - 17 - - - - - 9 - 50 - false - - - - Mail senden - - - _mand - drpdwn_prof_title - label_5 - sem_winter - label_4 - drpdwn_app_nr - sem_sommer - label_3 - label_6 - sem_year - label_2 - btn_apparat_save - btn_apparat_apply - check_eternal_app - label_8 - label_9 - label_10 - mail_mand - telnr_mand - profname_mand - appname_mand - fach_mand - btn_add_document - btn_open_document - app_fach - app_name - prof_tel_nr - drpdwn_prof_name - prof_mail - check_file - formLayoutWidget_2 - check_send_mail - - frame - dokument_list - - - - - - - 0 - 0 - - - - - 1259 - 0 - - - - Qt::NoFocus - - - Qt::CustomContextMenu - - - QAbstractScrollArea::AdjustToContents - - - QAbstractItemView::NoEditTriggers - - - true - - - QAbstractItemView::SelectRows - - - true - - - true - - - - Buchtitel - - - - - Signatur - - - - - Auflage - - - - - Autor - - - - - verfügbar? - - - - - Vorgemerkt - - - - - Link - - - - - - - - - 11 - 75 - true - - - - Medienliste - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 20 - 20 - - - - - - - - gel. Medien anzeigen - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 40 - 20 - - - - - - - - - - Medien werden hinzugefügt - - - - - - - Qt::Vertical - - - - - - - Medium x/y - - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 40 - 20 - - - - - - - - Vorgemertk? - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - - 0 - 700 - 121 - 20 - - - - Qt::NoFocus - - - Medien hinzufügen - - - - - - Suchen / Statistik - - - - - 0 - 0 - 1251 - 721 - - - - - - - - 16777215 - 250 - - - - 0 - - - - Statistik - - - - - 10 - 180 - 75 - 23 - - - - Suchen - - - - - - 10 - 10 - 491 - 161 - - - - - - - Appnr.: - - - - - - - true - - - - - - - Dauerapp: - - - - - - - Endsemester: - - - - - - - Erstellsemester: - - - - - - - - - - Person: - - - - - - - Fach: - - - - - - - true - - - - - - - true - - - - - - - true - - - - - - - true - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - Löschbar - - - - - - - - - - - - - - - - 100 - 180 - 401 - 23 - - - - - - - - - - Suchen - - - - - - - - QFrame::StyledPanel - - - QFrame::Raised - - - - - - 780 - 10 - 441 - 441 - - - - 0 - - - - Tabelle - - - - - 0 - 0 - 435 - 191 - - - - - 0 - 0 - - - - - 16777215 - 191 - - - - QAbstractItemView::NoEditTriggers - - - true - - - false - - - - Semester - - - - - Zugang - - - - - Abgang - - - - - - - 0 - 210 - 431 - 211 - - - - - - - Erstellte und gelöschte Semesterapparate - - - - - - - 10 - 10 - 761 - 441 - - - - - - 0 - 0 - 761 - 51 - - - - - - - Ausgewählte Löschen - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - 0 - 50 - 761 - 391 - - - - - - 0 - 0 - 761 - 391 - - - - QAbstractItemView::NoEditTriggers - - - - - - - - - Apparatsname - - - - - Apparatsnummer - - - - - Person - - - - - Fach - - - - - - - - - - - - - - Admin - - - - - - - - - - - - - - 1280 - 360 - 311 - 391 - - - - - - - - 6 - - - - - true - - - - 0 - 0 - - - - Software - - - - - 20 - 30 - 241 - 41 - - - - - 8 - 50 - false - - - - Apparatsdaten eingegeben - - - - - - 20 - 70 - 241 - 41 - - - - - 8 - 50 - false - - - - Medien hinzugefügt / importiert - - - - - - 20 - 140 - 241 - 41 - - - - - 8 - 50 - false - - - - Prof-ID und Apparat-ID eingetragen - - - - - - - - - 0 - 0 - - - - aDIS - - - - - 20 - 30 - 241 - 41 - - - - - 8 - 50 - false - false - false - PreferDefault - true - - - - Medien geprüft - - - - - - 20 - 70 - 241 - 41 - - - - - 8 - 50 - false - false - false - PreferDefault - true - - - - Medien bearbeitet - - - - - - 20 - 110 - 161 - 41 - - - - - 8 - 50 - false - false - false - PreferDefault - true - - - - Apparat angelegt - - - - - - 170 - 120 - 101 - 23 - - - - - 8 - 50 - false - false - false - PreferDefault - true - - - - Hier klicken, um die aDIS Abfrage in die Zwischenablage zu kopieren - - - - - - - - - - - - false - - - aDIS Abfrage - - - - ../../../.designer/backup/icons/information.png../../../.designer/backup/icons/information.png - - - false - - - false - - - false - - - - - - - - - - - - - 1280 - 10 - 301 - 341 - - - - QFrame::StyledPanel - - - QFrame::Raised - - - - - 0 - 0 - 291 - 191 - - - - true - - - QCalendarWidget::NoVerticalHeader - - - - - - 0 - 210 - 291 - 121 - - - - QFrame::StyledPanel - - - QFrame::Raised - - - - - 10 - 10 - 47 - 20 - - - - Apparat - - - - - true - - - - 60 - 10 - 31 - 20 - - - - - - - 10 - 40 - 271 - 71 - - - - - - - 130 - 10 - 75 - 23 - - - - Löschen - - - - - - 210 - 10 - 42 - 22 - - - - 1 - - - - - - 260 - 10 - 21 - 22 - - - - TextLabel - - - - - - - - - 0 - 0 - 1593 - 21 - - - - - Datei - - - - - - Bearbeiten - - - - - - - - - - Beenden - - - Ctrl+Q - - - true - - - - - Einstellungen - - - Alt+S - - - true - - - - - drpdwn_app_nr - drpdwn_prof_title - drpdwn_prof_name - prof_mail - prof_tel_nr - app_name - app_fach - sem_winter - sem_sommer - sem_year - check_eternal_app - btn_add_document - btn_open_document - btn_apparat_save - btn_apparat_apply - - - - diff --git a/src/ui/sounds/semesterapparat_ui_ui.py b/src/ui/sounds/semesterapparat_ui_ui.py deleted file mode 100644 index 6d00bd9..0000000 --- a/src/ui/sounds/semesterapparat_ui_ui.py +++ /dev/null @@ -1,1255 +0,0 @@ -# Form implementation generated from reading ui file '/home/alexander/GitHub/Semesterapparate/ui/sounds/semesterapparat_ui.ui' -# -# Created by: PyQt6 UI code generator 6.5.3 -# -# 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. - - -from PyQt6 import QtCore, QtGui, QtWidgets - - -class Ui_MainWindow(object): - def setupUi(self, MainWindow): - MainWindow.setObjectName("MainWindow") - MainWindow.setWindowModality(QtCore.Qt.WindowModality.WindowModal) - MainWindow.setEnabled(True) - MainWindow.resize(1593, 800) - sizePolicy = QtWidgets.QSizePolicy( - QtWidgets.QSizePolicy.Policy.Fixed, QtWidgets.QSizePolicy.Policy.Fixed - ) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth()) - MainWindow.setSizePolicy(sizePolicy) - MainWindow.setMinimumSize(QtCore.QSize(1278, 800)) - MainWindow.setMaximumSize(QtCore.QSize(1920, 800)) - MainWindow.setContextMenuPolicy(QtCore.Qt.ContextMenuPolicy.NoContextMenu) - self.centralwidget = QtWidgets.QWidget(parent=MainWindow) - sizePolicy = QtWidgets.QSizePolicy( - QtWidgets.QSizePolicy.Policy.Fixed, QtWidgets.QSizePolicy.Policy.Fixed - ) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth( - self.centralwidget.sizePolicy().hasHeightForWidth() - ) - self.centralwidget.setSizePolicy(sizePolicy) - self.centralwidget.setObjectName("centralwidget") - self.verticalLayoutWidget = QtWidgets.QWidget(parent=self.centralwidget) - self.verticalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 1271, 761)) - self.verticalLayoutWidget.setObjectName("verticalLayoutWidget") - self.verticalLayout = QtWidgets.QVBoxLayout(self.verticalLayoutWidget) - self.verticalLayout.setContentsMargins(0, 0, 0, 0) - self.verticalLayout.setObjectName("verticalLayout") - self.horizontalLayout = QtWidgets.QHBoxLayout() - self.horizontalLayout.setObjectName("horizontalLayout") - self.gridLayout = QtWidgets.QGridLayout() - self.gridLayout.setObjectName("gridLayout") - self.tabWidget = QtWidgets.QTabWidget(parent=self.verticalLayoutWidget) - self.tabWidget.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) - self.tabWidget.setObjectName("tabWidget") - self.tab = QtWidgets.QWidget() - sizePolicy = QtWidgets.QSizePolicy( - QtWidgets.QSizePolicy.Policy.Preferred, - QtWidgets.QSizePolicy.Policy.Preferred, - ) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.tab.sizePolicy().hasHeightForWidth()) - self.tab.setSizePolicy(sizePolicy) - self.tab.setObjectName("tab") - self.horizontalLayoutWidget_2 = QtWidgets.QWidget(parent=self.tab) - self.horizontalLayoutWidget_2.setGeometry(QtCore.QRect(0, 0, 1261, 163)) - self.horizontalLayoutWidget_2.setObjectName("horizontalLayoutWidget_2") - self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_2) - self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0) - self.horizontalLayout_2.setObjectName("horizontalLayout_2") - self.formLayout = QtWidgets.QFormLayout() - self.formLayout.setObjectName("formLayout") - self.verticalLayout_2 = QtWidgets.QVBoxLayout() - self.verticalLayout_2.setObjectName("verticalLayout_2") - spacerItem = QtWidgets.QSpacerItem( - 20, - 40, - QtWidgets.QSizePolicy.Policy.Minimum, - QtWidgets.QSizePolicy.Policy.Expanding, - ) - self.verticalLayout_2.addItem(spacerItem) - self.load_app = QtWidgets.QPushButton(parent=self.horizontalLayoutWidget_2) - self.load_app.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) - self.load_app.setObjectName("load_app") - self.verticalLayout_2.addWidget(self.load_app) - self.create_new_app = QtWidgets.QPushButton( - parent=self.horizontalLayoutWidget_2 - ) - self.create_new_app.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) - self.create_new_app.setObjectName("create_new_app") - self.verticalLayout_2.addWidget(self.create_new_app) - self.cancel_active_selection = QtWidgets.QPushButton( - parent=self.horizontalLayoutWidget_2 - ) - self.cancel_active_selection.setObjectName("cancel_active_selection") - self.verticalLayout_2.addWidget(self.cancel_active_selection) - spacerItem1 = QtWidgets.QSpacerItem( - 20, - 40, - QtWidgets.QSizePolicy.Policy.Minimum, - QtWidgets.QSizePolicy.Policy.Expanding, - ) - self.verticalLayout_2.addItem(spacerItem1) - self.formLayout.setLayout( - 1, QtWidgets.QFormLayout.ItemRole.LabelRole, self.verticalLayout_2 - ) - self.tableWidget_apparate = QtWidgets.QTableWidget( - parent=self.horizontalLayoutWidget_2 - ) - self.tableWidget_apparate.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) - self.tableWidget_apparate.setSizeAdjustPolicy( - QtWidgets.QAbstractScrollArea.SizeAdjustPolicy.AdjustToContents - ) - self.tableWidget_apparate.setEditTriggers( - QtWidgets.QAbstractItemView.EditTrigger.SelectedClicked - ) - self.tableWidget_apparate.setAlternatingRowColors(True) - self.tableWidget_apparate.setTextElideMode(QtCore.Qt.TextElideMode.ElideMiddle) - self.tableWidget_apparate.setObjectName("tableWidget_apparate") - self.tableWidget_apparate.setColumnCount(6) - self.tableWidget_apparate.setRowCount(0) - item = QtWidgets.QTableWidgetItem() - self.tableWidget_apparate.setHorizontalHeaderItem(0, item) - item = QtWidgets.QTableWidgetItem() - self.tableWidget_apparate.setHorizontalHeaderItem(1, item) - item = QtWidgets.QTableWidgetItem() - self.tableWidget_apparate.setHorizontalHeaderItem(2, item) - item = QtWidgets.QTableWidgetItem() - self.tableWidget_apparate.setHorizontalHeaderItem(3, item) - item = QtWidgets.QTableWidgetItem() - self.tableWidget_apparate.setHorizontalHeaderItem(4, item) - item = QtWidgets.QTableWidgetItem() - self.tableWidget_apparate.setHorizontalHeaderItem(5, item) - self.tableWidget_apparate.horizontalHeader().setCascadingSectionResizes(True) - self.formLayout.setWidget( - 1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.tableWidget_apparate - ) - self.horizontalLayout_4 = QtWidgets.QHBoxLayout() - self.horizontalLayout_4.setObjectName("horizontalLayout_4") - self.formLayout.setLayout( - 2, QtWidgets.QFormLayout.ItemRole.FieldRole, self.horizontalLayout_4 - ) - self.horizontalLayout_3 = QtWidgets.QHBoxLayout() - self.horizontalLayout_3.setObjectName("horizontalLayout_3") - self.formLayout.setLayout( - 3, QtWidgets.QFormLayout.ItemRole.LabelRole, self.horizontalLayout_3 - ) - self.horizontalLayout_2.addLayout(self.formLayout) - self.line = QtWidgets.QFrame(parent=self.tab) - self.line.setGeometry(QtCore.QRect(0, 160, 1261, 21)) - self.line.setFrameShape(QtWidgets.QFrame.Shape.HLine) - self.line.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken) - self.line.setObjectName("line") - self.gridLayoutWidget_2 = QtWidgets.QWidget(parent=self.tab) - self.gridLayoutWidget_2.setEnabled(True) - self.gridLayoutWidget_2.setGeometry(QtCore.QRect(0, 180, 1261, 511)) - self.gridLayoutWidget_2.setObjectName("gridLayoutWidget_2") - self.gridLayout_2 = QtWidgets.QGridLayout(self.gridLayoutWidget_2) - self.gridLayout_2.setContentsMargins(0, 0, 0, 0) - self.gridLayout_2.setObjectName("gridLayout_2") - self.app_group_box = QtWidgets.QGroupBox(parent=self.gridLayoutWidget_2) - sizePolicy = QtWidgets.QSizePolicy( - QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed - ) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth( - self.app_group_box.sizePolicy().hasHeightForWidth() - ) - self.app_group_box.setSizePolicy(sizePolicy) - self.app_group_box.setMinimumSize(QtCore.QSize(0, 210)) - font = QtGui.QFont() - font.setPointSize(12) - font.setBold(True) - font.setWeight(75) - self.app_group_box.setFont(font) - self.app_group_box.setAlignment( - QtCore.Qt.AlignmentFlag.AlignLeading - | QtCore.Qt.AlignmentFlag.AlignLeft - | QtCore.Qt.AlignmentFlag.AlignVCenter - ) - self.app_group_box.setCheckable(False) - self.app_group_box.setObjectName("app_group_box") - self.dokument_list = QtWidgets.QTableWidget(parent=self.app_group_box) - self.dokument_list.setGeometry(QtCore.QRect(765, 20, 321, 181)) - font = QtGui.QFont() - font.setPointSize(10) - font.setBold(False) - font.setWeight(50) - font.setKerning(False) - self.dokument_list.setFont(font) - self.dokument_list.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) - self.dokument_list.setAcceptDrops(True) - self.dokument_list.setSizeAdjustPolicy( - QtWidgets.QAbstractScrollArea.SizeAdjustPolicy.AdjustToContents - ) - self.dokument_list.setDragEnabled(True) - self.dokument_list.setDragDropMode( - QtWidgets.QAbstractItemView.DragDropMode.DropOnly - ) - self.dokument_list.setDefaultDropAction(QtCore.Qt.DropAction.LinkAction) - self.dokument_list.setSelectionMode( - QtWidgets.QAbstractItemView.SelectionMode.SingleSelection - ) - self.dokument_list.setObjectName("dokument_list") - self.dokument_list.setColumnCount(4) - self.dokument_list.setRowCount(0) - item = QtWidgets.QTableWidgetItem() - font = QtGui.QFont() - font.setFamily("Arial") - font.setPointSize(8) - item.setFont(font) - self.dokument_list.setHorizontalHeaderItem(0, item) - item = QtWidgets.QTableWidgetItem() - font = QtGui.QFont() - font.setFamily("Arial") - font.setPointSize(8) - item.setFont(font) - self.dokument_list.setHorizontalHeaderItem(1, item) - item = QtWidgets.QTableWidgetItem() - font = QtGui.QFont() - font.setFamily("Arial") - font.setPointSize(8) - item.setFont(font) - self.dokument_list.setHorizontalHeaderItem(2, item) - item = QtWidgets.QTableWidgetItem() - self.dokument_list.setHorizontalHeaderItem(3, item) - self.frame = QtWidgets.QFrame(parent=self.app_group_box) - self.frame.setEnabled(True) - self.frame.setGeometry(QtCore.QRect(10, 30, 1241, 151)) - sizePolicy = QtWidgets.QSizePolicy( - QtWidgets.QSizePolicy.Policy.Fixed, QtWidgets.QSizePolicy.Policy.Fixed - ) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.frame.sizePolicy().hasHeightForWidth()) - self.frame.setSizePolicy(sizePolicy) - self.frame.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel) - self.frame.setFrameShadow(QtWidgets.QFrame.Shadow.Raised) - self.frame.setObjectName("frame") - self.drpdwn_prof_title = QtWidgets.QComboBox(parent=self.frame) - self.drpdwn_prof_title.setGeometry(QtCore.QRect(110, 50, 69, 22)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.drpdwn_prof_title.setFont(font) - self.drpdwn_prof_title.setEditable(True) - self.drpdwn_prof_title.setObjectName("drpdwn_prof_title") - self.label_5 = QtWidgets.QLabel(parent=self.frame) - self.label_5.setGeometry(QtCore.QRect(250, 20, 91, 21)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.label_5.setFont(font) - self.label_5.setObjectName("label_5") - self.sem_winter = QtWidgets.QRadioButton(parent=self.frame) - self.sem_winter.setGeometry(QtCore.QRect(340, 50, 82, 17)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.sem_winter.setFont(font) - self.sem_winter.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) - self.sem_winter.setObjectName("sem_winter") - self.label_4 = QtWidgets.QLabel(parent=self.frame) - self.label_4.setGeometry(QtCore.QRect(10, 80, 71, 21)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.label_4.setFont(font) - self.label_4.setObjectName("label_4") - self.drpdwn_app_nr = QtWidgets.QComboBox(parent=self.frame) - self.drpdwn_app_nr.setGeometry(QtCore.QRect(110, 20, 69, 22)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.drpdwn_app_nr.setFont(font) - self.drpdwn_app_nr.setInputMethodHints(QtCore.Qt.InputMethodHint.ImhDigitsOnly) - self.drpdwn_app_nr.setEditable(True) - self.drpdwn_app_nr.setObjectName("drpdwn_app_nr") - self.app_name = QtWidgets.QLineEdit(parent=self.frame) - self.app_name.setGeometry(QtCore.QRect(340, 20, 113, 20)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.app_name.setFont(font) - self.app_name.setFocusPolicy(QtCore.Qt.FocusPolicy.StrongFocus) - self.app_name.setObjectName("app_name") - self.sem_sommer = QtWidgets.QRadioButton(parent=self.frame) - self.sem_sommer.setGeometry(QtCore.QRect(340, 70, 82, 17)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.sem_sommer.setFont(font) - self.sem_sommer.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) - self.sem_sommer.setObjectName("sem_sommer") - self.label_3 = QtWidgets.QLabel(parent=self.frame) - self.label_3.setGeometry(QtCore.QRect(10, 50, 61, 20)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.label_3.setFont(font) - self.label_3.setObjectName("label_3") - self.label_6 = QtWidgets.QLabel(parent=self.frame) - self.label_6.setGeometry(QtCore.QRect(270, 60, 61, 21)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.label_6.setFont(font) - self.label_6.setObjectName("label_6") - self.sem_year = QtWidgets.QLineEdit(parent=self.frame) - self.sem_year.setGeometry(QtCore.QRect(410, 60, 113, 20)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.sem_year.setFont(font) - self.sem_year.setFocusPolicy(QtCore.Qt.FocusPolicy.StrongFocus) - self.sem_year.setMaxLength(4) - self.sem_year.setObjectName("sem_year") - self.label_2 = QtWidgets.QLabel(parent=self.frame) - self.label_2.setGeometry(QtCore.QRect(10, 20, 101, 21)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.label_2.setFont(font) - self.label_2.setObjectName("label_2") - self.btn_apparat_save = QtWidgets.QPushButton(parent=self.frame) - self.btn_apparat_save.setGeometry(QtCore.QRect(260, 120, 75, 23)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.btn_apparat_save.setFont(font) - self.btn_apparat_save.setObjectName("btn_apparat_save") - self.btn_apparat_apply = QtWidgets.QPushButton(parent=self.frame) - self.btn_apparat_apply.setGeometry(QtCore.QRect(350, 120, 75, 23)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.btn_apparat_apply.setFont(font) - self.btn_apparat_apply.setObjectName("btn_apparat_apply") - self.check_eternal_app = QtWidgets.QCheckBox(parent=self.frame) - self.check_eternal_app.setGeometry(QtCore.QRect(340, 90, 101, 17)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.check_eternal_app.setFont(font) - self.check_eternal_app.setObjectName("check_eternal_app") - self.label_8 = QtWidgets.QLabel(parent=self.frame) - self.label_8.setGeometry(QtCore.QRect(10, 110, 71, 21)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.label_8.setFont(font) - self.label_8.setObjectName("label_8") - self.prof_mail = QtWidgets.QLineEdit(parent=self.frame) - self.prof_mail.setGeometry(QtCore.QRect(110, 110, 121, 20)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.prof_mail.setFont(font) - self.prof_mail.setInputMethodHints( - QtCore.Qt.InputMethodHint.ImhEmailCharactersOnly - ) - self.prof_mail.setMaxLength(200) - self.prof_mail.setPlaceholderText("") - self.prof_mail.setObjectName("prof_mail") - self.label_9 = QtWidgets.QLabel(parent=self.frame) - self.label_9.setGeometry(QtCore.QRect(10, 130, 71, 21)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.label_9.setFont(font) - self.label_9.setObjectName("label_9") - self.prof_tel_nr = QtWidgets.QLineEdit(parent=self.frame) - self.prof_tel_nr.setGeometry(QtCore.QRect(110, 130, 121, 20)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.prof_tel_nr.setFont(font) - self.prof_tel_nr.setInputMethodHints(QtCore.Qt.InputMethodHint.ImhDigitsOnly) - self.prof_tel_nr.setPlaceholderText("") - self.prof_tel_nr.setObjectName("prof_tel_nr") - self.label_10 = QtWidgets.QLabel(parent=self.frame) - self.label_10.setGeometry(QtCore.QRect(470, 20, 51, 21)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.label_10.setFont(font) - self.label_10.setObjectName("label_10") - self.app_fach = QtWidgets.QLineEdit(parent=self.frame) - self.app_fach.setGeometry(QtCore.QRect(510, 20, 113, 20)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.app_fach.setFont(font) - self.app_fach.setFocusPolicy(QtCore.Qt.FocusPolicy.StrongFocus) - self.app_fach.setObjectName("app_fach") - self.drpdwn_prof_name = QtWidgets.QComboBox(parent=self.frame) - self.drpdwn_prof_name.setGeometry(QtCore.QRect(110, 80, 121, 22)) - font = QtGui.QFont() - font.setPointSize(8) - font.setBold(False) - font.setWeight(50) - self.drpdwn_prof_name.setFont(font) - self.drpdwn_prof_name.setFocusPolicy(QtCore.Qt.FocusPolicy.StrongFocus) - self.drpdwn_prof_name.setEditable(True) - self.drpdwn_prof_name.setCurrentText("") - self.drpdwn_prof_name.setInsertPolicy( - QtWidgets.QComboBox.InsertPolicy.InsertAlphabetically - ) - self.drpdwn_prof_name.setFrame(True) - self.drpdwn_prof_name.setObjectName("drpdwn_prof_name") - self.mail_mand = QtWidgets.QLabel(parent=self.frame) - self.mail_mand.setGeometry(QtCore.QRect(100, 110, 47, 21)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.mail_mand.setFont(font) - self.mail_mand.setObjectName("mail_mand") - self.telnr_mand = QtWidgets.QLabel(parent=self.frame) - self.telnr_mand.setGeometry(QtCore.QRect(100, 130, 47, 21)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.telnr_mand.setFont(font) - self.telnr_mand.setObjectName("telnr_mand") - self.profname_mand = QtWidgets.QLabel(parent=self.frame) - self.profname_mand.setGeometry(QtCore.QRect(100, 80, 47, 21)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.profname_mand.setFont(font) - self.profname_mand.setObjectName("profname_mand") - self.appname_mand = QtWidgets.QLabel(parent=self.frame) - self.appname_mand.setGeometry(QtCore.QRect(330, 20, 16, 21)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.appname_mand.setFont(font) - self.appname_mand.setObjectName("appname_mand") - self.fach_mand = QtWidgets.QLabel(parent=self.frame) - self.fach_mand.setGeometry(QtCore.QRect(500, 20, 47, 21)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.fach_mand.setFont(font) - self.fach_mand.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) - self.fach_mand.setObjectName("fach_mand") - self._mand = QtWidgets.QLabel(parent=self.frame) - self._mand.setGeometry(QtCore.QRect(330, 60, 16, 21)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self._mand.setFont(font) - self._mand.setObjectName("_mand") - self.btn_add_document = QtWidgets.QPushButton(parent=self.frame) - self.btn_add_document.setGeometry(QtCore.QRect(1090, 20, 131, 25)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.btn_add_document.setFont(font) - self.btn_add_document.setObjectName("btn_add_document") - self.btn_open_document = QtWidgets.QPushButton(parent=self.frame) - self.btn_open_document.setGeometry(QtCore.QRect(1090, 60, 131, 25)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.btn_open_document.setFont(font) - self.btn_open_document.setObjectName("btn_open_document") - self.check_file = QtWidgets.QPushButton(parent=self.frame) - self.check_file.setGeometry(QtCore.QRect(1090, 100, 131, 51)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.check_file.setFont(font) - self.check_file.setObjectName("check_file") - self.formLayoutWidget_2 = QtWidgets.QWidget(parent=self.frame) - self.formLayoutWidget_2.setGeometry(QtCore.QRect(550, 70, 202, 80)) - self.formLayoutWidget_2.setObjectName("formLayoutWidget_2") - self.formLayout_3 = QtWidgets.QFormLayout(self.formLayoutWidget_2) - self.formLayout_3.setContentsMargins(0, 0, 0, 0) - self.formLayout_3.setObjectName("formLayout_3") - self.label_12 = QtWidgets.QLabel(parent=self.formLayoutWidget_2) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.label_12.setFont(font) - self.label_12.setObjectName("label_12") - self.formLayout_3.setWidget( - 0, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_12 - ) - self.prof_id_adis = QtWidgets.QLineEdit(parent=self.formLayoutWidget_2) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.prof_id_adis.setFont(font) - self.prof_id_adis.setObjectName("prof_id_adis") - self.formLayout_3.setWidget( - 0, QtWidgets.QFormLayout.ItemRole.FieldRole, self.prof_id_adis - ) - self.label_13 = QtWidgets.QLabel(parent=self.formLayoutWidget_2) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.label_13.setFont(font) - self.label_13.setObjectName("label_13") - self.formLayout_3.setWidget( - 1, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_13 - ) - self.apparat_id_adis = QtWidgets.QLineEdit(parent=self.formLayoutWidget_2) - self.apparat_id_adis.setObjectName("apparat_id_adis") - self.formLayout_3.setWidget( - 1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.apparat_id_adis - ) - self.check_send_mail = QtWidgets.QCheckBox(parent=self.frame) - self.check_send_mail.setGeometry(QtCore.QRect(450, 120, 91, 17)) - font = QtGui.QFont() - font.setPointSize(9) - font.setBold(False) - font.setWeight(50) - self.check_send_mail.setFont(font) - self.check_send_mail.setObjectName("check_send_mail") - self._mand.raise_() - self.drpdwn_prof_title.raise_() - self.label_5.raise_() - self.sem_winter.raise_() - self.label_4.raise_() - self.drpdwn_app_nr.raise_() - self.sem_sommer.raise_() - self.label_3.raise_() - self.label_6.raise_() - self.sem_year.raise_() - self.label_2.raise_() - self.btn_apparat_save.raise_() - self.btn_apparat_apply.raise_() - self.check_eternal_app.raise_() - self.label_8.raise_() - self.label_9.raise_() - self.label_10.raise_() - self.mail_mand.raise_() - self.telnr_mand.raise_() - self.profname_mand.raise_() - self.appname_mand.raise_() - self.fach_mand.raise_() - self.btn_add_document.raise_() - self.btn_open_document.raise_() - self.app_fach.raise_() - self.app_name.raise_() - self.prof_tel_nr.raise_() - self.drpdwn_prof_name.raise_() - self.prof_mail.raise_() - self.check_file.raise_() - self.formLayoutWidget_2.raise_() - self.check_send_mail.raise_() - self.frame.raise_() - self.dokument_list.raise_() - self.gridLayout_2.addWidget(self.app_group_box, 1, 0, 1, 1) - self.tableWidget_apparat_media = QtWidgets.QTableWidget( - parent=self.gridLayoutWidget_2 - ) - sizePolicy = QtWidgets.QSizePolicy( - QtWidgets.QSizePolicy.Policy.Fixed, QtWidgets.QSizePolicy.Policy.Expanding - ) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth( - self.tableWidget_apparat_media.sizePolicy().hasHeightForWidth() - ) - self.tableWidget_apparat_media.setSizePolicy(sizePolicy) - self.tableWidget_apparat_media.setMinimumSize(QtCore.QSize(1259, 0)) - self.tableWidget_apparat_media.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) - self.tableWidget_apparat_media.setContextMenuPolicy( - QtCore.Qt.ContextMenuPolicy.CustomContextMenu - ) - self.tableWidget_apparat_media.setSizeAdjustPolicy( - QtWidgets.QAbstractScrollArea.SizeAdjustPolicy.AdjustToContents - ) - self.tableWidget_apparat_media.setEditTriggers( - QtWidgets.QAbstractItemView.EditTrigger.NoEditTriggers - ) - self.tableWidget_apparat_media.setAlternatingRowColors(True) - self.tableWidget_apparat_media.setSelectionBehavior( - QtWidgets.QAbstractItemView.SelectionBehavior.SelectRows - ) - self.tableWidget_apparat_media.setObjectName("tableWidget_apparat_media") - self.tableWidget_apparat_media.setColumnCount(7) - self.tableWidget_apparat_media.setRowCount(0) - item = QtWidgets.QTableWidgetItem() - self.tableWidget_apparat_media.setHorizontalHeaderItem(0, item) - item = QtWidgets.QTableWidgetItem() - self.tableWidget_apparat_media.setHorizontalHeaderItem(1, item) - item = QtWidgets.QTableWidgetItem() - self.tableWidget_apparat_media.setHorizontalHeaderItem(2, item) - item = QtWidgets.QTableWidgetItem() - self.tableWidget_apparat_media.setHorizontalHeaderItem(3, item) - item = QtWidgets.QTableWidgetItem() - self.tableWidget_apparat_media.setHorizontalHeaderItem(4, item) - item = QtWidgets.QTableWidgetItem() - self.tableWidget_apparat_media.setHorizontalHeaderItem(5, item) - item = QtWidgets.QTableWidgetItem() - self.tableWidget_apparat_media.setHorizontalHeaderItem(6, item) - self.tableWidget_apparat_media.horizontalHeader().setCascadingSectionResizes( - True - ) - self.gridLayout_2.addWidget(self.tableWidget_apparat_media, 9, 0, 1, 1) - self.label = QtWidgets.QLabel(parent=self.gridLayoutWidget_2) - font = QtGui.QFont() - font.setPointSize(11) - font.setBold(True) - font.setWeight(75) - self.label.setFont(font) - self.label.setObjectName("label") - self.gridLayout_2.addWidget(self.label, 2, 0, 1, 1) - self.horizontalLayout_5 = QtWidgets.QHBoxLayout() - self.horizontalLayout_5.setObjectName("horizontalLayout_5") - spacerItem2 = QtWidgets.QSpacerItem( - 20, - 20, - QtWidgets.QSizePolicy.Policy.Fixed, - QtWidgets.QSizePolicy.Policy.Minimum, - ) - self.horizontalLayout_5.addItem(spacerItem2) - self.chkbx_show_del_media = QtWidgets.QCheckBox(parent=self.gridLayoutWidget_2) - self.chkbx_show_del_media.setObjectName("chkbx_show_del_media") - self.horizontalLayout_5.addWidget(self.chkbx_show_del_media) - spacerItem3 = QtWidgets.QSpacerItem( - 40, - 20, - QtWidgets.QSizePolicy.Policy.Fixed, - QtWidgets.QSizePolicy.Policy.Minimum, - ) - self.horizontalLayout_5.addItem(spacerItem3) - self.add_layout = QtWidgets.QHBoxLayout() - self.add_layout.setObjectName("add_layout") - self.label_info = QtWidgets.QLabel(parent=self.gridLayoutWidget_2) - self.label_info.setObjectName("label_info") - self.add_layout.addWidget(self.label_info) - self.line_2 = QtWidgets.QFrame(parent=self.gridLayoutWidget_2) - self.line_2.setFrameShape(QtWidgets.QFrame.Shape.VLine) - self.line_2.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken) - self.line_2.setObjectName("line_2") - self.add_layout.addWidget(self.line_2) - self.progress_label = QtWidgets.QLabel(parent=self.gridLayoutWidget_2) - self.progress_label.setObjectName("progress_label") - self.add_layout.addWidget(self.progress_label) - self.horizontalLayout_5.addLayout(self.add_layout) - spacerItem4 = QtWidgets.QSpacerItem( - 40, - 20, - QtWidgets.QSizePolicy.Policy.Fixed, - QtWidgets.QSizePolicy.Policy.Minimum, - ) - self.horizontalLayout_5.addItem(spacerItem4) - self.btn_reserve = QtWidgets.QPushButton(parent=self.gridLayoutWidget_2) - self.btn_reserve.setObjectName("btn_reserve") - self.horizontalLayout_5.addWidget(self.btn_reserve) - spacerItem5 = QtWidgets.QSpacerItem( - 40, - 20, - QtWidgets.QSizePolicy.Policy.Expanding, - QtWidgets.QSizePolicy.Policy.Minimum, - ) - self.horizontalLayout_5.addItem(spacerItem5) - self.gridLayout_2.addLayout(self.horizontalLayout_5, 4, 0, 1, 1) - self.add_medium = QtWidgets.QPushButton(parent=self.tab) - self.add_medium.setGeometry(QtCore.QRect(0, 700, 121, 20)) - self.add_medium.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) - self.add_medium.setObjectName("add_medium") - self.tabWidget.addTab(self.tab, "") - self.tab_2 = QtWidgets.QWidget() - self.tab_2.setObjectName("tab_2") - self.verticalLayoutWidget_2 = QtWidgets.QWidget(parent=self.tab_2) - self.verticalLayoutWidget_2.setGeometry(QtCore.QRect(0, 0, 1251, 721)) - self.verticalLayoutWidget_2.setObjectName("verticalLayoutWidget_2") - self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.verticalLayoutWidget_2) - self.verticalLayout_3.setContentsMargins(0, 0, 0, 0) - self.verticalLayout_3.setObjectName("verticalLayout_3") - self.tabWidget_2 = QtWidgets.QTabWidget(parent=self.verticalLayoutWidget_2) - self.tabWidget_2.setMaximumSize(QtCore.QSize(16777215, 250)) - self.tabWidget_2.setObjectName("tabWidget_2") - self.tab_3 = QtWidgets.QWidget() - self.tab_3.setObjectName("tab_3") - self.btn_search = QtWidgets.QPushButton(parent=self.tab_3) - self.btn_search.setGeometry(QtCore.QRect(10, 180, 75, 23)) - self.btn_search.setObjectName("btn_search") - self.gridLayoutWidget = QtWidgets.QWidget(parent=self.tab_3) - self.gridLayoutWidget.setGeometry(QtCore.QRect(10, 10, 491, 161)) - self.gridLayoutWidget.setObjectName("gridLayoutWidget") - self.gridLayout_3 = QtWidgets.QGridLayout(self.gridLayoutWidget) - self.gridLayout_3.setContentsMargins(0, 0, 0, 0) - self.gridLayout_3.setObjectName("gridLayout_3") - self.label_7 = QtWidgets.QLabel(parent=self.gridLayoutWidget) - self.label_7.setObjectName("label_7") - self.gridLayout_3.addWidget(self.label_7, 0, 0, 1, 1) - self.box_erstellsemester = QtWidgets.QComboBox(parent=self.gridLayoutWidget) - self.box_erstellsemester.setEditable(True) - self.box_erstellsemester.setObjectName("box_erstellsemester") - self.gridLayout_3.addWidget(self.box_erstellsemester, 1, 3, 1, 1) - self.label_18 = QtWidgets.QLabel(parent=self.gridLayoutWidget) - self.label_18.setObjectName("label_18") - self.gridLayout_3.addWidget(self.label_18, 2, 2, 1, 1) - self.label_17 = QtWidgets.QLabel(parent=self.gridLayoutWidget) - self.label_17.setObjectName("label_17") - self.gridLayout_3.addWidget(self.label_17, 0, 2, 1, 1) - self.label_19 = QtWidgets.QLabel(parent=self.gridLayoutWidget) - self.label_19.setObjectName("label_19") - self.gridLayout_3.addWidget(self.label_19, 1, 2, 1, 1) - self.box_dauerapp = QtWidgets.QComboBox(parent=self.gridLayoutWidget) - self.box_dauerapp.setObjectName("box_dauerapp") - self.gridLayout_3.addWidget(self.box_dauerapp, 2, 3, 1, 1) - self.label_11 = QtWidgets.QLabel(parent=self.gridLayoutWidget) - self.label_11.setObjectName("label_11") - self.gridLayout_3.addWidget(self.label_11, 1, 0, 1, 1) - self.label_16 = QtWidgets.QLabel(parent=self.gridLayoutWidget) - self.label_16.setObjectName("label_16") - self.gridLayout_3.addWidget(self.label_16, 2, 0, 1, 1) - self.box_semester = QtWidgets.QComboBox(parent=self.gridLayoutWidget) - self.box_semester.setEditable(True) - self.box_semester.setObjectName("box_semester") - self.gridLayout_3.addWidget(self.box_semester, 0, 3, 1, 1) - self.box_appnrs = QtWidgets.QComboBox(parent=self.gridLayoutWidget) - self.box_appnrs.setEditable(True) - self.box_appnrs.setObjectName("box_appnrs") - self.gridLayout_3.addWidget(self.box_appnrs, 0, 1, 1, 1) - self.box_fach = QtWidgets.QComboBox(parent=self.gridLayoutWidget) - self.box_fach.setEditable(True) - self.box_fach.setObjectName("box_fach") - self.gridLayout_3.addWidget(self.box_fach, 2, 1, 1, 1) - self.box_person = QtWidgets.QComboBox(parent=self.gridLayoutWidget) - self.box_person.setEditable(True) - self.box_person.setObjectName("box_person") - self.gridLayout_3.addWidget(self.box_person, 1, 1, 1, 1) - spacerItem6 = QtWidgets.QSpacerItem( - 20, - 40, - QtWidgets.QSizePolicy.Policy.Minimum, - QtWidgets.QSizePolicy.Policy.Expanding, - ) - self.gridLayout_3.addItem(spacerItem6, 4, 0, 1, 1) - self.label_15 = QtWidgets.QLabel(parent=self.gridLayoutWidget) - self.label_15.setObjectName("label_15") - self.gridLayout_3.addWidget(self.label_15, 3, 0, 1, 1) - self.check_deletable = QtWidgets.QCheckBox(parent=self.gridLayoutWidget) - self.check_deletable.setText("") - self.check_deletable.setObjectName("check_deletable") - self.gridLayout_3.addWidget(self.check_deletable, 3, 1, 1, 1) - self.db_err_message = QtWidgets.QLabel(parent=self.tab_3) - self.db_err_message.setGeometry(QtCore.QRect(100, 180, 401, 23)) - self.db_err_message.setText("") - self.db_err_message.setObjectName("db_err_message") - self.tabWidget_2.addTab(self.tab_3, "") - self.tab_4 = QtWidgets.QWidget() - self.tab_4.setObjectName("tab_4") - self.tabWidget_2.addTab(self.tab_4, "") - self.verticalLayout_3.addWidget(self.tabWidget_2) - self.stackedWidget_4 = QtWidgets.QStackedWidget( - parent=self.verticalLayoutWidget_2 - ) - self.stackedWidget_4.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel) - self.stackedWidget_4.setFrameShadow(QtWidgets.QFrame.Shadow.Raised) - self.stackedWidget_4.setObjectName("stackedWidget_4") - self.stackedWidget_4Page1 = QtWidgets.QWidget() - self.stackedWidget_4Page1.setObjectName("stackedWidget_4Page1") - self.tabWidget_3 = QtWidgets.QTabWidget(parent=self.stackedWidget_4Page1) - self.tabWidget_3.setGeometry(QtCore.QRect(780, 10, 441, 441)) - self.tabWidget_3.setObjectName("tabWidget_3") - self.tab_6 = QtWidgets.QWidget() - self.tab_6.setObjectName("tab_6") - self.statistics_table = QtWidgets.QTableWidget(parent=self.tab_6) - self.statistics_table.setGeometry(QtCore.QRect(0, 0, 435, 191)) - sizePolicy = QtWidgets.QSizePolicy( - QtWidgets.QSizePolicy.Policy.Fixed, QtWidgets.QSizePolicy.Policy.Fixed - ) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth( - self.statistics_table.sizePolicy().hasHeightForWidth() - ) - self.statistics_table.setSizePolicy(sizePolicy) - self.statistics_table.setMaximumSize(QtCore.QSize(16777215, 191)) - self.statistics_table.setEditTriggers( - QtWidgets.QAbstractItemView.EditTrigger.NoEditTriggers - ) - self.statistics_table.setAlternatingRowColors(True) - self.statistics_table.setObjectName("statistics_table") - self.statistics_table.setColumnCount(3) - self.statistics_table.setRowCount(0) - item = QtWidgets.QTableWidgetItem() - self.statistics_table.setHorizontalHeaderItem(0, item) - item = QtWidgets.QTableWidgetItem() - self.statistics_table.setHorizontalHeaderItem(1, item) - item = QtWidgets.QTableWidgetItem() - self.statistics_table.setHorizontalHeaderItem(2, item) - self.statistics_table.horizontalHeader().setCascadingSectionResizes(False) - self.widget_3 = QtWidgets.QWidget(parent=self.tab_6) - self.widget_3.setGeometry(QtCore.QRect(0, 210, 431, 211)) - self.widget_3.setObjectName("widget_3") - self.tabWidget_3.addTab(self.tab_6, "") - self.tab_7 = QtWidgets.QWidget() - self.tab_7.setObjectName("tab_7") - self.tabWidget_3.addTab(self.tab_7, "") - self.widget = QtWidgets.QWidget(parent=self.stackedWidget_4Page1) - self.widget.setGeometry(QtCore.QRect(10, 10, 761, 441)) - self.widget.setObjectName("widget") - self.horizontalLayoutWidget_3 = QtWidgets.QWidget(parent=self.widget) - self.horizontalLayoutWidget_3.setGeometry(QtCore.QRect(0, 0, 761, 51)) - self.horizontalLayoutWidget_3.setObjectName("horizontalLayoutWidget_3") - self.horizontalLayout_7 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_3) - self.horizontalLayout_7.setContentsMargins(0, 0, 0, 0) - self.horizontalLayout_7.setObjectName("horizontalLayout_7") - self.btn_del_select_apparats = QtWidgets.QPushButton( - parent=self.horizontalLayoutWidget_3 - ) - self.btn_del_select_apparats.setObjectName("btn_del_select_apparats") - self.horizontalLayout_7.addWidget(self.btn_del_select_apparats) - spacerItem7 = QtWidgets.QSpacerItem( - 40, - 20, - QtWidgets.QSizePolicy.Policy.Expanding, - QtWidgets.QSizePolicy.Policy.Minimum, - ) - self.horizontalLayout_7.addItem(spacerItem7) - self.table = QtWidgets.QWidget(parent=self.widget) - self.table.setGeometry(QtCore.QRect(0, 50, 761, 391)) - self.table.setObjectName("table") - self.tableWidget = QtWidgets.QTableWidget(parent=self.table) - self.tableWidget.setGeometry(QtCore.QRect(0, 0, 761, 391)) - self.tableWidget.setEditTriggers( - QtWidgets.QAbstractItemView.EditTrigger.NoEditTriggers - ) - self.tableWidget.setObjectName("tableWidget") - self.tableWidget.setColumnCount(5) - self.tableWidget.setRowCount(0) - item = QtWidgets.QTableWidgetItem() - self.tableWidget.setHorizontalHeaderItem(0, item) - item = QtWidgets.QTableWidgetItem() - self.tableWidget.setHorizontalHeaderItem(1, item) - item = QtWidgets.QTableWidgetItem() - self.tableWidget.setHorizontalHeaderItem(2, item) - item = QtWidgets.QTableWidgetItem() - self.tableWidget.setHorizontalHeaderItem(3, item) - item = QtWidgets.QTableWidgetItem() - self.tableWidget.setHorizontalHeaderItem(4, item) - self.stackedWidget_4.addWidget(self.stackedWidget_4Page1) - self.verticalLayout_3.addWidget(self.stackedWidget_4) - self.tabWidget.addTab(self.tab_2, "") - self.tab_5 = QtWidgets.QWidget() - self.tab_5.setObjectName("tab_5") - self.tabWidget.addTab(self.tab_5, "") - self.gridLayout.addWidget(self.tabWidget, 0, 0, 1, 1) - self.horizontalLayout.addLayout(self.gridLayout) - self.verticalLayout.addLayout(self.horizontalLayout) - self.horizontalLayoutWidget = QtWidgets.QWidget(parent=self.centralwidget) - self.horizontalLayoutWidget.setGeometry(QtCore.QRect(1280, 360, 311, 391)) - self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget") - self.horizontalLayout_6 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget) - self.horizontalLayout_6.setContentsMargins(0, 0, 0, 0) - self.horizontalLayout_6.setObjectName("horizontalLayout_6") - self.frame_creation_progress = QtWidgets.QFrame( - parent=self.horizontalLayoutWidget - ) - self.frame_creation_progress.setObjectName("frame_creation_progress") - self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.frame_creation_progress) - self.verticalLayout_4.setSpacing(6) - self.verticalLayout_4.setObjectName("verticalLayout_4") - self.groupBox_2 = QtWidgets.QGroupBox(parent=self.frame_creation_progress) - self.groupBox_2.setEnabled(True) - sizePolicy = QtWidgets.QSizePolicy( - QtWidgets.QSizePolicy.Policy.Expanding, - QtWidgets.QSizePolicy.Policy.Expanding, - ) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.groupBox_2.sizePolicy().hasHeightForWidth()) - self.groupBox_2.setSizePolicy(sizePolicy) - self.groupBox_2.setObjectName("groupBox_2") - self.appdata_check = QtWidgets.QCheckBox(parent=self.groupBox_2) - self.appdata_check.setGeometry(QtCore.QRect(20, 30, 241, 41)) - font = QtGui.QFont() - font.setPointSize(8) - font.setBold(False) - font.setWeight(50) - self.appdata_check.setFont(font) - self.appdata_check.setObjectName("appdata_check") - self.media_check = QtWidgets.QCheckBox(parent=self.groupBox_2) - self.media_check.setGeometry(QtCore.QRect(20, 70, 241, 41)) - font = QtGui.QFont() - font.setPointSize(8) - font.setBold(False) - font.setWeight(50) - self.media_check.setFont(font) - self.media_check.setObjectName("media_check") - self.ids_check = QtWidgets.QCheckBox(parent=self.groupBox_2) - self.ids_check.setGeometry(QtCore.QRect(20, 140, 241, 41)) - font = QtGui.QFont() - font.setPointSize(8) - font.setBold(False) - font.setWeight(50) - self.ids_check.setFont(font) - self.ids_check.setObjectName("ids_check") - self.verticalLayout_4.addWidget(self.groupBox_2) - self.groupBox = QtWidgets.QGroupBox(parent=self.frame_creation_progress) - sizePolicy = QtWidgets.QSizePolicy( - QtWidgets.QSizePolicy.Policy.Expanding, - QtWidgets.QSizePolicy.Policy.Expanding, - ) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.groupBox.sizePolicy().hasHeightForWidth()) - self.groupBox.setSizePolicy(sizePolicy) - self.groupBox.setObjectName("groupBox") - self.media_checked = QtWidgets.QCheckBox(parent=self.groupBox) - self.media_checked.setGeometry(QtCore.QRect(20, 30, 241, 41)) - font = QtGui.QFont() - font.setPointSize(8) - font.setBold(False) - font.setItal # ic(False) - font.setUnderline(False) - font.setWeight(50) - font.setKerning(True) - font.setStyleStrategy(QtGui.QFont.StyleStrategy.PreferDefault) - self.media_checked.setFont(font) - self.media_checked.setObjectName("media_checked") - self.media_edited_check = QtWidgets.QCheckBox(parent=self.groupBox) - self.media_edited_check.setGeometry(QtCore.QRect(20, 70, 241, 41)) - font = QtGui.QFont() - font.setPointSize(8) - font.setBold(False) - font.setItal # ic(False) - font.setUnderline(False) - font.setWeight(50) - font.setKerning(True) - font.setStyleStrategy(QtGui.QFont.StyleStrategy.PreferDefault) - self.media_edited_check.setFont(font) - self.media_edited_check.setObjectName("media_edited_check") - self.app_created = QtWidgets.QCheckBox(parent=self.groupBox) - self.app_created.setGeometry(QtCore.QRect(20, 110, 161, 41)) - font = QtGui.QFont() - font.setPointSize(8) - font.setBold(False) - font.setItal # ic(False) - font.setUnderline(False) - font.setWeight(50) - font.setKerning(True) - font.setStyleStrategy(QtGui.QFont.StyleStrategy.PreferDefault) - self.app_created.setFont(font) - self.app_created.setObjectName("app_created") - self.btn_copy_adis_command = QtWidgets.QPushButton(parent=self.groupBox) - self.btn_copy_adis_command.setGeometry(QtCore.QRect(170, 120, 101, 23)) - font = QtGui.QFont() - font.setPointSize(8) - font.setBold(False) - font.setItal # ic(False) - font.setUnderline(False) - font.setWeight(50) - font.setKerning(True) - font.setStyleStrategy(QtGui.QFont.StyleStrategy.PreferDefault) - self.btn_copy_adis_command.setFont(font) - self.btn_copy_adis_command.setStatusTip("") - self.btn_copy_adis_command.setWhatsThis("") - self.btn_copy_adis_command.setAccessibleDescription("") - self.btn_copy_adis_command.setAutoFillBackground(False) - icon = QtGui.QIcon() - icon.addPixmap( - QtGui.QPixmap( - "/home/alexander/GitHub/Semesterapparate/ui/sounds/../../../.designer/backup/icons/information.png" - ), - QtGui.QIcon.Mode.Normal, - QtGui.QIcon.State.Off, - ) - self.btn_copy_adis_command.setIcon(icon) - self.btn_copy_adis_command.setCheckable(False) - self.btn_copy_adis_command.setChecked(False) - self.btn_copy_adis_command.setAutoDefault(False) - self.btn_copy_adis_command.setObjectName("btn_copy_adis_command") - self.verticalLayout_4.addWidget(self.groupBox) - self.horizontalLayout_6.addWidget(self.frame_creation_progress) - self.frame_2 = QtWidgets.QFrame(parent=self.centralwidget) - self.frame_2.setGeometry(QtCore.QRect(1280, 10, 301, 341)) - self.frame_2.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel) - self.frame_2.setFrameShadow(QtWidgets.QFrame.Shadow.Raised) - self.frame_2.setObjectName("frame_2") - self.calendarWidget = QtWidgets.QCalendarWidget(parent=self.frame_2) - self.calendarWidget.setGeometry(QtCore.QRect(0, 0, 291, 191)) - self.calendarWidget.setGridVisible(True) - self.calendarWidget.setVerticalHeaderFormat( - QtWidgets.QCalendarWidget.VerticalHeaderFormat.NoVerticalHeader - ) - self.calendarWidget.setObjectName("calendarWidget") - self.message_frame = QtWidgets.QFrame(parent=self.frame_2) - self.message_frame.setGeometry(QtCore.QRect(0, 210, 291, 121)) - self.message_frame.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel) - self.message_frame.setFrameShadow(QtWidgets.QFrame.Shadow.Raised) - self.message_frame.setObjectName("message_frame") - self.label_14 = QtWidgets.QLabel(parent=self.message_frame) - self.label_14.setGeometry(QtCore.QRect(10, 10, 47, 20)) - self.label_14.setObjectName("label_14") - self.line_app_info = QtWidgets.QLineEdit(parent=self.message_frame) - self.line_app_info.setEnabled(True) - self.line_app_info.setGeometry(QtCore.QRect(60, 10, 31, 20)) - self.line_app_info.setObjectName("line_app_info") - self.message_box = QtWidgets.QTextEdit(parent=self.message_frame) - self.message_box.setGeometry(QtCore.QRect(10, 40, 271, 71)) - self.message_box.setObjectName("message_box") - self.btn_delete_message = QtWidgets.QPushButton(parent=self.message_frame) - self.btn_delete_message.setGeometry(QtCore.QRect(130, 10, 75, 23)) - self.btn_delete_message.setObjectName("btn_delete_message") - self.spin_select_message = QtWidgets.QSpinBox(parent=self.message_frame) - self.spin_select_message.setGeometry(QtCore.QRect(210, 10, 42, 22)) - self.spin_select_message.setMinimum(1) - self.spin_select_message.setObjectName("spin_select_message") - self.label_total_day_messages = QtWidgets.QLabel(parent=self.message_frame) - self.label_total_day_messages.setGeometry(QtCore.QRect(260, 10, 21, 22)) - self.label_total_day_messages.setObjectName("label_total_day_messages") - MainWindow.setCentralWidget(self.centralwidget) - self.menubar = QtWidgets.QMenuBar(parent=MainWindow) - self.menubar.setGeometry(QtCore.QRect(0, 0, 1593, 21)) - self.menubar.setObjectName("menubar") - self.menuDatei = QtWidgets.QMenu(parent=self.menubar) - self.menuDatei.setObjectName("menuDatei") - self.menuEinstellungen = QtWidgets.QMenu(parent=self.menubar) - self.menuEinstellungen.setObjectName("menuEinstellungen") - MainWindow.setMenuBar(self.menubar) - self.statusbar = QtWidgets.QStatusBar(parent=MainWindow) - self.statusbar.setObjectName("statusbar") - MainWindow.setStatusBar(self.statusbar) - self.actionBeenden = QtGui.QWidgetAction(parent=MainWindow) - self.actionBeenden.setShortcutVisibleInContextMenu(True) - self.actionBeenden.setObjectName("actionBeenden") - self.actionEinstellungen = QtGui.QWidgetAction(parent=MainWindow) - self.actionEinstellungen.setShortcutVisibleInContextMenu(True) - self.actionEinstellungen.setObjectName("actionEinstellungen") - self.menuDatei.addAction(self.actionBeenden) - self.menuEinstellungen.addAction(self.actionEinstellungen) - self.menubar.addAction(self.menuDatei.menuAction()) - self.menubar.addAction(self.menuEinstellungen.menuAction()) - - self.retranslateUi(MainWindow) - self.tabWidget.setCurrentIndex(1) - self.tabWidget_2.setCurrentIndex(0) - self.tabWidget_3.setCurrentIndex(0) - QtCore.QMetaObject.connectSlotsByName(MainWindow) - MainWindow.setTabOrder(self.drpdwn_app_nr, self.drpdwn_prof_title) - MainWindow.setTabOrder(self.drpdwn_prof_title, self.drpdwn_prof_name) - MainWindow.setTabOrder(self.drpdwn_prof_name, self.prof_mail) - MainWindow.setTabOrder(self.prof_mail, self.prof_tel_nr) - MainWindow.setTabOrder(self.prof_tel_nr, self.app_name) - MainWindow.setTabOrder(self.app_name, self.app_fach) - MainWindow.setTabOrder(self.app_fach, self.sem_winter) - MainWindow.setTabOrder(self.sem_winter, self.sem_sommer) - MainWindow.setTabOrder(self.sem_sommer, self.sem_year) - MainWindow.setTabOrder(self.sem_year, self.check_eternal_app) - MainWindow.setTabOrder(self.check_eternal_app, self.btn_add_document) - MainWindow.setTabOrder(self.btn_add_document, self.btn_open_document) - MainWindow.setTabOrder(self.btn_open_document, self.btn_apparat_save) - MainWindow.setTabOrder(self.btn_apparat_save, self.btn_apparat_apply) - - def retranslateUi(self, MainWindow): - _translate = QtCore.QCoreApplication.translate - MainWindow.setWindowTitle( - _translate("MainWindow", "Semesterapparatsmanagement") - ) - self.load_app.setToolTip( - _translate("MainWindow", "Load the Semesterapparate from the database") - ) - self.load_app.setText(_translate("MainWindow", "App. aufrufen")) - self.create_new_app.setText(_translate("MainWindow", "neu. App anlegen")) - self.cancel_active_selection.setText( - _translate("MainWindow", "Auswahl abbrechen") - ) - self.tableWidget_apparate.setSortingEnabled(True) - item = self.tableWidget_apparate.horizontalHeaderItem(0) - item.setText(_translate("MainWindow", "AppNr")) - item = self.tableWidget_apparate.horizontalHeaderItem(1) - item.setText(_translate("MainWindow", "App Name")) - item = self.tableWidget_apparate.horizontalHeaderItem(2) - item.setText(_translate("MainWindow", "Professor")) - item = self.tableWidget_apparate.horizontalHeaderItem(3) - item.setText(_translate("MainWindow", "gültig bis")) - item = self.tableWidget_apparate.horizontalHeaderItem(4) - item.setText(_translate("MainWindow", "Dauerapparat")) - item = self.tableWidget_apparate.horizontalHeaderItem(5) - item.setText(_translate("MainWindow", "KontoNr")) - self.app_group_box.setTitle(_translate("MainWindow", "Apparatsdetails")) - item = self.dokument_list.horizontalHeaderItem(0) - item.setText(_translate("MainWindow", "Dokumentname")) - item = self.dokument_list.horizontalHeaderItem(1) - item.setText(_translate("MainWindow", "Dateityp")) - item = self.dokument_list.horizontalHeaderItem(2) - item.setText(_translate("MainWindow", "Neu?")) - item = self.dokument_list.horizontalHeaderItem(3) - item.setText(_translate("MainWindow", "path")) - self.label_5.setText(_translate("MainWindow", "Apparatsname")) - self.sem_winter.setText(_translate("MainWindow", "Winter")) - self.label_4.setText(_translate("MainWindow", "Prof. Name")) - self.sem_sommer.setText(_translate("MainWindow", "Sommer")) - self.label_3.setText(_translate("MainWindow", "Prof. Titel")) - self.label_6.setText(_translate("MainWindow", "Semester")) - self.sem_year.setPlaceholderText(_translate("MainWindow", "2023")) - self.label_2.setText(_translate("MainWindow", "Apparatsnummer")) - self.btn_apparat_save.setText(_translate("MainWindow", "Speichern")) - self.btn_apparat_apply.setText(_translate("MainWindow", "Aktualisieren")) - self.check_eternal_app.setText(_translate("MainWindow", "Dauerapparat")) - self.label_8.setText(_translate("MainWindow", "Mail")) - self.label_9.setText(_translate("MainWindow", "Tel")) - self.label_10.setText(_translate("MainWindow", "Fach")) - self.mail_mand.setText(_translate("MainWindow", "*")) - self.telnr_mand.setText(_translate("MainWindow", "*")) - self.profname_mand.setText(_translate("MainWindow", "*")) - self.appname_mand.setText(_translate("MainWindow", "*")) - self.fach_mand.setText(_translate("MainWindow", "*")) - self._mand.setText(_translate("MainWindow", "*")) - self.btn_add_document.setText(_translate("MainWindow", "Dokument hinzufügen")) - self.btn_open_document.setText(_translate("MainWindow", "Dokument öffnen")) - self.check_file.setToolTip( - _translate( - "MainWindow", - "Abhängig von der Anzahl der Medien kann die Suche sehr lange dauern", - ) - ) - self.check_file.setText( - _translate("MainWindow", "Medien aus Dokument\n" " hinzufügen") - ) - self.label_12.setText(_translate("MainWindow", "Prof-ID-aDIS")) - self.label_13.setText(_translate("MainWindow", "Apparat-ID-aDIS")) - self.check_send_mail.setText(_translate("MainWindow", "Mail senden")) - self.tableWidget_apparat_media.setSortingEnabled(True) - item = self.tableWidget_apparat_media.horizontalHeaderItem(0) - item.setText(_translate("MainWindow", "Buchtitel")) - item = self.tableWidget_apparat_media.horizontalHeaderItem(1) - item.setText(_translate("MainWindow", "Signatur")) - item = self.tableWidget_apparat_media.horizontalHeaderItem(2) - item.setText(_translate("MainWindow", "Auflage")) - item = self.tableWidget_apparat_media.horizontalHeaderItem(3) - item.setText(_translate("MainWindow", "Autor")) - item = self.tableWidget_apparat_media.horizontalHeaderItem(4) - item.setText(_translate("MainWindow", "verfügbar?")) - item = self.tableWidget_apparat_media.horizontalHeaderItem(5) - item.setText(_translate("MainWindow", "Vorgemerkt")) - item = self.tableWidget_apparat_media.horizontalHeaderItem(6) - item.setText(_translate("MainWindow", "Link")) - self.label.setText(_translate("MainWindow", " Medienliste")) - self.chkbx_show_del_media.setText( - _translate("MainWindow", "gel. Medien anzeigen") - ) - self.label_info.setText(_translate("MainWindow", "Medien werden hinzugefügt")) - self.progress_label.setText(_translate("MainWindow", "Medium x/y")) - self.btn_reserve.setText(_translate("MainWindow", "Vorgemertk?")) - self.add_medium.setText(_translate("MainWindow", "Medien hinzufügen")) - self.tabWidget.setTabText( - self.tabWidget.indexOf(self.tab), _translate("MainWindow", "Anlegen") - ) - self.btn_search.setText(_translate("MainWindow", "Suchen")) - self.label_7.setText(_translate("MainWindow", "Appnr.:")) - self.label_18.setText(_translate("MainWindow", "Dauerapp:")) - self.label_17.setText(_translate("MainWindow", "Endsemester:")) - self.label_19.setText(_translate("MainWindow", "Erstellsemester:")) - self.label_11.setText(_translate("MainWindow", "Person:")) - self.label_16.setText(_translate("MainWindow", "Fach:")) - self.label_15.setText(_translate("MainWindow", "Löschbar")) - self.tabWidget_2.setTabText( - self.tabWidget_2.indexOf(self.tab_3), _translate("MainWindow", "Statistik") - ) - self.tabWidget_2.setTabText( - self.tabWidget_2.indexOf(self.tab_4), _translate("MainWindow", "Suchen") - ) - item = self.statistics_table.horizontalHeaderItem(0) - item.setText(_translate("MainWindow", "Semester")) - item = self.statistics_table.horizontalHeaderItem(1) - item.setText(_translate("MainWindow", "Zugang")) - item = self.statistics_table.horizontalHeaderItem(2) - item.setText(_translate("MainWindow", "Abgang")) - self.tabWidget_3.setTabText( - self.tabWidget_3.indexOf(self.tab_6), _translate("MainWindow", "Tabelle") - ) - self.tabWidget_3.setTabText( - self.tabWidget_3.indexOf(self.tab_7), - _translate("MainWindow", "Erstellte und gelöschte Semesterapparate"), - ) - self.btn_del_select_apparats.setText( - _translate("MainWindow", "Ausgewählte Löschen") - ) - item = self.tableWidget.horizontalHeaderItem(0) - item.setText(_translate("MainWindow", " ")) - item = self.tableWidget.horizontalHeaderItem(1) - item.setText(_translate("MainWindow", "Apparatsname")) - item = self.tableWidget.horizontalHeaderItem(2) - item.setText(_translate("MainWindow", "Apparatsnummer")) - item = self.tableWidget.horizontalHeaderItem(3) - item.setText(_translate("MainWindow", "Person")) - item = self.tableWidget.horizontalHeaderItem(4) - item.setText(_translate("MainWindow", "Fach")) - self.tabWidget.setTabText( - self.tabWidget.indexOf(self.tab_2), - _translate("MainWindow", "Suchen / Statistik"), - ) - self.tabWidget.setTabText( - self.tabWidget.indexOf(self.tab_5), _translate("MainWindow", "Admin") - ) - self.groupBox_2.setTitle(_translate("MainWindow", "Software")) - self.appdata_check.setText(_translate("MainWindow", "Apparatsdaten eingegeben")) - self.media_check.setText( - _translate("MainWindow", "Medien hinzugefügt / importiert") - ) - self.ids_check.setText( - _translate("MainWindow", "Prof-ID und Apparat-ID eingetragen") - ) - self.groupBox.setTitle(_translate("MainWindow", "aDIS")) - self.media_checked.setText(_translate("MainWindow", "Medien geprüft")) - self.media_edited_check.setText(_translate("MainWindow", "Medien bearbeitet")) - self.app_created.setText(_translate("MainWindow", "Apparat angelegt")) - self.btn_copy_adis_command.setToolTip( - _translate( - "MainWindow", - "Hier klicken, um die aDIS Abfrage in die Zwischenablage zu kopieren", - ) - ) - self.btn_copy_adis_command.setText(_translate("MainWindow", " aDIS Abfrage")) - self.label_14.setText(_translate("MainWindow", "Apparat")) - self.btn_delete_message.setText(_translate("MainWindow", "Löschen")) - self.label_total_day_messages.setText(_translate("MainWindow", "TextLabel")) - self.menuDatei.setTitle(_translate("MainWindow", "Datei")) - self.menuEinstellungen.setTitle(_translate("MainWindow", "Bearbeiten")) - self.actionBeenden.setText(_translate("MainWindow", "Beenden")) - self.actionBeenden.setShortcut(_translate("MainWindow", "Ctrl+Q")) - self.actionEinstellungen.setText(_translate("MainWindow", "Einstellungen")) - self.actionEinstellungen.setShortcut(_translate("MainWindow", "Alt+S")) diff --git a/src/ui/userInterface.py b/src/ui/userInterface.py index 57793cb..e2313d5 100644 --- a/src/ui/userInterface.py +++ b/src/ui/userInterface.py @@ -51,9 +51,9 @@ from src.ui import ( parsed_titles_ui, popus_confirm, reminder_ui, + SearchStatisticPage, ) -from src.ui.widgets.searchPage import SearchStatisticPage - +from src.ui.extensions import ValidatorButton config = OmegaConf.load("config.yaml") @@ -72,12 +72,6 @@ class Medien(medienadder_ui): return self.comboBox.currentText() -class MyComboBox(QtWidgets.QComboBox): - - def __init__(self, parent=None): - super().__init__(parent) - - valid_input = (0, 0, 0, 0, 0, 0) @@ -100,7 +94,7 @@ class Ui(Ui_Semesterapparat): self.btn_check_file_threaded ) # default: self.add_media_from_file self.create_new_app.clicked.connect(self.btn_create_new_apparat) - self.btn_apparat_save.clicked.connect(self.btn_save_apparat) + self.btn_apparat_save.clicked.connect(lambda: self.btn_save_apparat(True)) self.btn_apparat_apply.clicked.connect(self.update_apparat) self.btn_open_document.clicked.connect(self.open_document) self.add_medium.clicked.connect(self.btn_add_medium) @@ -143,19 +137,32 @@ class Ui(Ui_Semesterapparat): ) ) self.prof_tel_nr.setValidator(QtGui.QIntValidator()) - # set the validator for the app name, allow all letters and umlauts - self.app_fach.setValidator( + + # set app_fach validator to allow only entries from the present items in self.app_fach and allow manual text entry + # self.app_fach.setValidator( + # QtGui.QRegularExpressionValidator( + # QtCore.QRegularExpression( + # "|".join([f"{subject[1]}" for subject in self.db.getSubjects()]) + # ) + # ) + # ) + self.app_fach.setValidator( # validator to allow typing in the app_fach field QtGui.QRegularExpressionValidator( - QtCore.QRegularExpression(r"[a-zA-Z\s\W]+") + QtCore.QRegularExpression(r"[a-zA-Z0-9\s\W]+") + ) + ) + self.prof_tel_nr.setValidator( + QtGui.QRegularExpressionValidator( + QtCore.QRegularExpression(r"^\d{3}|^\d{4}-\d{2}|^\+\d{8,}") ) ) - # allow only letters, numbers, whitespaces, symbols for the apparat name self.app_name.setValidator( QtGui.QRegularExpressionValidator( QtCore.QRegularExpression(r"[a-zA-Z0-9\s\W]+") ) ) + self.tableWidget_apparate.addScrollBarWidget( QtWidgets.QScrollBar(), QtCore.Qt.AlignmentFlag.AlignRight ) @@ -243,7 +250,11 @@ class Ui(Ui_Semesterapparat): self.tableWidget_apparat_media.customContextMenuRequested.connect( self.media_context_menu ) + self.table_elsa_list.setContextMenuPolicy( + QtCore.Qt.ContextMenuPolicy.CustomContextMenu + ) + self.table_elsa_list.customContextMenuRequested.connect(self.elsa_context_menu) # elsa buttons self.elsa_add_new.clicked.connect(self.add_new_elsa) self.elsa_cancel_create.clicked.connect(self.cancel_elsa_creation) @@ -269,13 +280,17 @@ class Ui(Ui_Semesterapparat): self.mail_thread = None self.autoGrabber = None + def elsa_context_menu(self, position): + menu = QtWidgets.QMenu() + # TODO: add functions + pass + def toggleButton(self, button): if button.isChecked(): button.setChecked(False) def open_about(self): - about = About() - about.exec() + About().exec() def quit(self): # delete all temporary files @@ -316,7 +331,7 @@ class Ui(Ui_Semesterapparat): or self.elsa_date.text() == "" ): # warning message - self.confirm_popup("Bitte füllen Sie alle Felder aus") + self.confirm_popup("Bitte füllen Sie alle Felder aus", title="Fehler") return prof = self.elsa_prof.currentText() @@ -391,7 +406,7 @@ class Ui(Ui_Semesterapparat): self.table_elsa_list.setItem(0, 1, QtWidgets.QTableWidgetItem(scan[2])) self.table_elsa_list.setItem(0, 2, QtWidgets.QTableWidgetItem(scan[3])) self.table_elsa_list.setItem(0, 3, QtWidgets.QTableWidgetItem(scan[4])) - + self.create_frame_elsa.setEnabled(True) def addDokumentElsa(self): print("Add document") picker = FilePicker() @@ -447,11 +462,15 @@ class Ui(Ui_Semesterapparat): self.table_elsa_list.insertRow(0) ic(row) chapter_title = row[2] + author = row[0] + book_author = row[3] book_title = row[4] signature = row[7] pages = row[6] data = { "chapter": chapter_title, + "book_author": book_author, + "text_author": author, "title": book_title, "signature": signature, "pages": pages, @@ -459,13 +478,17 @@ class Ui(Ui_Semesterapparat): self.table_elsa_list.setItem( 0, 0, QtWidgets.QTableWidgetItem(chapter_title) ) + self.table_elsa_list.setItem(0, 1, QtWidgets.QTableWidgetItem(author)) self.table_elsa_list.setItem( - 0, 1, QtWidgets.QTableWidgetItem(book_title) + 0, 2, QtWidgets.QTableWidgetItem(book_title) ) self.table_elsa_list.setItem( - 0, 2, QtWidgets.QTableWidgetItem(signature) + 0, 3, QtWidgets.QTableWidgetItem(signature) + ) + self.table_elsa_list.setItem(0, 4, QtWidgets.QTableWidgetItem(pages)) + self.table_elsa_list.setItem( + 0, 5, QtWidgets.QTableWidgetItem(book_author) ) - self.table_elsa_list.setItem(0, 3, QtWidgets.QTableWidgetItem(pages)) self.db.addElsaMedia( data, self.db.getElsaId( @@ -506,7 +529,6 @@ class Ui(Ui_Semesterapparat): # documentation.show() def tabW1_changed(self): - if self.tabWidget.currentIndex() == 1: # Statistics stats_layout = self.search_statistics.layout() if stats_layout is not None: @@ -874,16 +896,8 @@ class Ui(Ui_Semesterapparat): popup.exec() return popup.result() - def threads(self): - while True: - self.validate_prof_mail() - self.validate_prof_name() - self.validate_prof_tel() - self.validate_app_name() - self.validate_app_fach() - self.validate_semester() - def thread_check(self): + print("Thread started") self.prof_mail.textChanged.connect(self.validate_prof_mail) self.drpdwn_prof_name.editTextChanged.connect(self.validate_prof_name) self.prof_tel_nr.textChanged.connect(self.validate_prof_tel) @@ -892,84 +906,70 @@ class Ui(Ui_Semesterapparat): self.sem_year.textChanged.connect(self.validate_semester) self.check_eternal_app.stateChanged.connect(self.validate_semester) - def validate_prof_name(self): - if self.app_group_box.isEnabled(): - if "," in self.drpdwn_prof_name.currentText(): - Icon("valid_true", self.valid_check_profname) - self.profname_mand.setText("") - self.change_state(0, 1) - else: - Icon("valid_false", self.valid_check_profname) - self.profname_mand.setText("*") - self.change_state(0, 0) - else: - pass - # self.drpdwn_prof_name.setStyleSheet("border: 1px solid black;") + # else: + # pass + # # self.drpdwn_prof_name.setStyleSheet("border: 1px solid black;") + # Validators + def __setValidState(self, widget, state, mand, index): + if state: + Icon("valid_true", widget) + mand.setText("") + self.change_state(index, 1) + else: + Icon("valid_false", widget) + mand.setText("*") + self.change_state(index, 0) + def validate_prof_name(self): + if ( + self.app_group_box.isEnabled() + and "," in self.drpdwn_prof_name.currentText() + ): + self.__setValidState(self.valid_check_profname, 1, self.profname_mand, 0) + else: + self.__setValidState(self.valid_check_profname, 0, self.profname_mand, 0) def validate_prof_mail(self): if self.app_group_box.isEnabled(): if self.prof_mail.hasAcceptableInput(): - Icon("valid_true", self.valid_check_mail) - self.mail_mand.setText("") - self.change_state(1, 1) + self.__setValidState(self.valid_check_mail, 1, self.mail_mand, 1) else: - Icon("valid_false", self.valid_check_mail) - self.mail_mand.setText("*") - self.change_state(1, 0) - + self.__setValidState(self.valid_check_mail, 0, self.mail_mand, 1) + else: + self.__setValidState(self.valid_check_mail, 0, self.mail_mand, 1) def validate_prof_tel(self): if self.app_group_box.isEnabled(): - if self.prof_tel_nr.text() != "": - Icon("valid_true", self.valid_check_telnr) - self.telnr_mand.setText("") - self.change_state(2, 1) + if self.prof_tel_nr.text() != "" and self.prof_tel_nr.hasAcceptableInput(): + self.__setValidState(self.valid_check_telnr, 1, self.telnr_mand, 2) else: - Icon("valid_false", self.valid_check_telnr) - self.telnr_mand.setText("*") - self.change_state(2, 0) - + self.__setValidState(self.valid_check_telnr, 0, self.telnr_mand, 2) + else: + self.__setValidState(self.valid_check_telnr, 0, self.telnr_mand, 2) def validate_app_name(self): - if self.app_group_box.isEnabled(): - if self.app_name.hasAcceptableInput(): - Icon("valid_true", self.valid_check_appname) - self.appname_mand.setText("") - self.change_state(3, 1) - else: - Icon("valid_false", self.valid_check_appname) - self.appname_mand.setText("*") - self.change_state(3, 0) - + if self.app_group_box.isEnabled() and self.app_name.hasAcceptableInput(): + self.__setValidState(self.valid_check_appname, 1, self.appname_mand, 3) + else: + self.__setValidState(self.valid_check_appname, 0, self.appname_mand, 3) def validate_app_fach(self): - if self.app_group_box.isEnabled(): - if self.app_fach.currentText() != "": - # change color to green to signal that the field is filled - Icon("valid_true", self.valid_check_app_fach) - self.valid_check_app_fach.setToolTip("Fach ist gesetzt") - self.fach_mand.setText("") - self.change_state(4, 1) - else: - # self.app_fach.setStyleSheet("border: 1px solid red;") - Icon("valid_false", self.valid_check_app_fach) - self.valid_check_app_fach.setToolTip("Fach ist nicht gesetzt") - self.fach_mand.setText("*") - self.change_state(4, 0) + if self.app_group_box.isEnabled() and self.app_fach.currentText() != "": + self.__setValidState(self.valid_check_app_fach, 1, self.fach_mand, 4) + else: + self.__setValidState(self.valid_check_app_fach, 0, self.fach_mand, 4) def validate_semester(self): - if self.app_group_box.isEnabled(): - if ( + if ( + self.app_group_box.isEnabled() + and ( (self.sem_sommer.isChecked() or self.sem_winter.isChecked()) and self.sem_year.text() != "" and len(self.sem_year.text()) == 4 - ) or self.check_eternal_app.isChecked(): - self._mand.setText("") - self.change_state(5, 1) - self.check_eternal_app.setEnabled(True) - Icon("valid_true", self.valid_check_semester) - else: - self._mand.setText("*") - self.change_state(5, 0) - Icon("valid_false", self.valid_check_semester) - self.check_eternal_app.setEnabled(False) + ) + or self.check_eternal_app.isChecked() + ): + self.__setValidState(self.valid_check_semester, 1, self._mand, 5) + self.check_eternal_app.setEnabled(True) + else: + self.__setValidState(self.valid_check_semester, 0, self._mand, 5) + self.check_eternal_app.setEnabled(False) def change_state(self, index, state): global valid_input @@ -1227,6 +1227,12 @@ class Ui(Ui_Semesterapparat): for child in self.app_group_box.findChildren(QtWidgets.QLineEdit): child.clear() + self.validate_app_fach() + self.validate_app_name() + self.validate_prof_mail() + self.validate_prof_name() + self.validate_prof_tel() + self.validate_semester() def update_app_media_list(self): deleted = 0 if not self.chkbx_show_del_media.isChecked() else 1 @@ -1630,6 +1636,7 @@ class Ui(Ui_Semesterapparat): apparat=appd.appnr, mail="Information zum Semesterapparat", location="" ) if clear_fields: + print("clearing fields") self.__clear_fields() def send_mail_preview(self): @@ -1930,6 +1937,7 @@ class Ui(Ui_Semesterapparat): profname = pid profname = f"{profname.split(" ")[1]} {profname.split(" ")[0]}" + print(profname, pid) if prof_id: pmail = self.db.getSpecificProfData(prof_id, ["mail"]) else: @@ -1955,10 +1963,7 @@ class Ui(Ui_Semesterapparat): "Bitte erst einen Apparat auswählen!", title="Apparat auswählen" ) return - else: - self.__contact_dialog(apparat, location, mail, pid=pid) - else: - self.__contact_dialog(apparat, mail=mail, pid=pid, location=location) + self.__contact_dialog(apparat, mail=mail, pid=pid, location=location) def delete_apparat(self, position): selected_apparat_id = self.tableWidget_apparate.item( diff --git a/src/ui/widgets/__init__.py b/src/ui/widgets/__init__.py index 319c60a..4945c8d 100644 --- a/src/ui/widgets/__init__.py +++ b/src/ui/widgets/__init__.py @@ -5,3 +5,4 @@ from .graph import DataGraph from .Ui_message_widget import Ui_Form as Message_Widget from .calendar_entry import CalendarEntry from .MessageCalendar import MessageCalendar +from .searchPage import SearchStatisticPage diff --git a/src/ui/widgets/searchPage.py b/src/ui/widgets/searchPage.py index 42e92f2..a13a73b 100644 --- a/src/ui/widgets/searchPage.py +++ b/src/ui/widgets/searchPage.py @@ -4,8 +4,8 @@ from PyQt6.QtCore import pyqtSignal from src.backend import Database, generateSemesterByDate from src.logic import custom_sort from src import MyLogger -from src import Icon -from src.ui import DataGraph, Mail_Dialog, StatusWidget +from src.ui.dialogs import Mail_Dialog +from src.ui.widgets import DataGraph, StatusWidget from natsort import natsorted from icecream import ic @@ -16,6 +16,7 @@ class MyComboBox(QtWidgets.QComboBox): super().__init__(parent) + class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog): apparat_open = pyqtSignal(str) reloadSignal = pyqtSignal() @@ -155,7 +156,6 @@ class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog): return self.tabWidget_3.currentIndex() def gridchange(self): - print("gridchange") if self.check_deletable.isChecked(): self.box_semester.setEnabled(False) self.box_appnrs.setEnabled(False) @@ -266,6 +266,7 @@ class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog): def statistics(self): """Generate the statistics based on the selected filters.""" + self.tableWidget.setRowCount(0) active_semseter = generateSemesterByDate() self.db_err_message.setText("") self.btn_del_select_apparats.setEnabled(True) @@ -312,7 +313,6 @@ class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog): params = { key: value for key, value in params.items() if value != "Alle" } # remove empty lines to prevent errors - print(params) result = self.db.statistic_request(**params) # add QTableWidgetItems to the table # self.tableWidget.setRowCount(len(result)) @@ -326,7 +326,6 @@ class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog): sem_year = int(sem_year.split("/")[0]) else: sem_year = int(sem_year) - print(sem_year) for entry in result: if "deletable" in params.keys(): entry_sem_time = entry[5].split(" ")[0] @@ -345,7 +344,6 @@ class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog): data.append(entry) self.tableWidget.setRowCount(len(data)) for i in range(len(data)): - print("adding", data[i][1]) # set the items 0 = clickable checkbox, 1 = appname, 2 = profname, 3 = fach self.tableWidget.setItem(i, 0, QtWidgets.QTableWidgetItem("")) self.tableWidget.setItem(i, 1, QtWidgets.QTableWidgetItem(data[i][1])) @@ -368,7 +366,6 @@ class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog): ) # # remove empty rows for row in range(self.tableWidget.rowCount()): - print(row, self.tableWidget.item(row, 1)) if self.tableWidget.item(row, 1) is None: self.tableWidget.removeRow(row) diff --git a/src/ui/widgets/widget_sources/Ui_search_statistic_page.py b/src/ui/widgets/widget_sources/Ui_search_statistic_page.py index 809b3b5..625d76f 100644 --- a/src/ui/widgets/widget_sources/Ui_search_statistic_page.py +++ b/src/ui/widgets/widget_sources/Ui_search_statistic_page.py @@ -12,7 +12,7 @@ from PyQt6 import QtCore, QtGui, QtWidgets class Ui_Dialog(object): def setupUi(self, Dialog): Dialog.setObjectName("Dialog") - Dialog.resize(1244, 756) + Dialog.resize(1244, 767) self.verticalLayout = QtWidgets.QVBoxLayout(Dialog) self.verticalLayout.setObjectName("verticalLayout") self.tabWidget_2 = QtWidgets.QTabWidget(parent=Dialog) @@ -98,31 +98,40 @@ class Ui_Dialog(object): self.tabWidget_2.addTab(self.tab_3, "") self.tab_4 = QtWidgets.QWidget() self.tab_4.setObjectName("tab_4") - self.formLayoutWidget = QtWidgets.QWidget(parent=self.tab_4) - self.formLayoutWidget.setGeometry(QtCore.QRect(10, 10, 451, 121)) - self.formLayoutWidget.setObjectName("formLayoutWidget") - self.formLayout_6 = QtWidgets.QFormLayout(self.formLayoutWidget) - self.formLayout_6.setContentsMargins(0, 0, 0, 0) - self.formLayout_6.setObjectName("formLayout_6") - self.label_25 = QtWidgets.QLabel(parent=self.formLayoutWidget) + self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.tab_4) + self.horizontalLayout_3.setObjectName("horizontalLayout_3") + self.gridLayout = QtWidgets.QGridLayout() + self.gridLayout.setObjectName("gridLayout") + self.label_25 = QtWidgets.QLabel(parent=self.tab_4) self.label_25.setObjectName("label_25") - self.formLayout_6.setWidget(0, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_25) - self.seach_by_signature = QtWidgets.QLineEdit(parent=self.formLayoutWidget) - self.seach_by_signature.setClearButtonEnabled(True) - self.seach_by_signature.setObjectName("seach_by_signature") - self.formLayout_6.setWidget(0, QtWidgets.QFormLayout.ItemRole.FieldRole, self.seach_by_signature) - self.label_26 = QtWidgets.QLabel(parent=self.formLayoutWidget) + self.gridLayout.addWidget(self.label_25, 0, 0, 1, 1) + self.label_26 = QtWidgets.QLabel(parent=self.tab_4) self.label_26.setObjectName("label_26") - self.formLayout_6.setWidget(1, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_26) - self.search_by_title = QtWidgets.QLineEdit(parent=self.formLayoutWidget) + self.gridLayout.addWidget(self.label_26, 1, 0, 1, 1) + self.search_by_title = QtWidgets.QLineEdit(parent=self.tab_4) + self.search_by_title.setFocusPolicy(QtCore.Qt.FocusPolicy.ClickFocus) self.search_by_title.setClearButtonEnabled(True) self.search_by_title.setObjectName("search_by_title") - self.formLayout_6.setWidget(1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.search_by_title) - spacerItem2 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding) - self.formLayout_6.setItem(2, QtWidgets.QFormLayout.ItemRole.LabelRole, spacerItem2) + self.gridLayout.addWidget(self.search_by_title, 1, 1, 1, 1) self.book_search = QtWidgets.QPushButton(parent=self.tab_4) - self.book_search.setGeometry(QtCore.QRect(10, 180, 75, 23)) self.book_search.setObjectName("book_search") + self.gridLayout.addWidget(self.book_search, 3, 0, 1, 1) + self.seach_by_signature = QtWidgets.QLineEdit(parent=self.tab_4) + self.seach_by_signature.setFocusPolicy(QtCore.Qt.FocusPolicy.ClickFocus) + self.seach_by_signature.setClearButtonEnabled(True) + self.seach_by_signature.setObjectName("seach_by_signature") + self.gridLayout.addWidget(self.seach_by_signature, 0, 1, 1, 1) + spacerItem2 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding) + self.gridLayout.addItem(spacerItem2, 2, 0, 1, 1) + self.gridLayout.setRowMinimumHeight(0, 1) + self.gridLayout.setRowMinimumHeight(1, 1) + self.gridLayout.setRowMinimumHeight(2, 1) + self.gridLayout.setRowMinimumHeight(3, 1) + self.horizontalLayout_3.addLayout(self.gridLayout) + spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum) + self.horizontalLayout_3.addItem(spacerItem3) + self.horizontalLayout_3.setStretch(0, 30) + self.horizontalLayout_3.setStretch(1, 70) self.tabWidget_2.addTab(self.tab_4, "") self.verticalLayout.addWidget(self.tabWidget_2) self.verticalLayout_3 = QtWidgets.QVBoxLayout() @@ -155,8 +164,8 @@ class Ui_Dialog(object): self.btn_notify_for_deletion = QtWidgets.QPushButton(parent=self.apparatResult) self.btn_notify_for_deletion.setObjectName("btn_notify_for_deletion") self.horizontalLayout_7.addWidget(self.btn_notify_for_deletion) - spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum) - self.horizontalLayout_7.addItem(spacerItem3) + spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum) + self.horizontalLayout_7.addItem(spacerItem4) self.verticalLayout_4.addLayout(self.horizontalLayout_7) self.tableWidget = QtWidgets.QTableWidget(parent=self.apparatResult) self.tableWidget.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus) @@ -208,7 +217,7 @@ class Ui_Dialog(object): self.statistics_table.horizontalHeader().setDefaultSectionSize(80) self.statistics_table.horizontalHeader().setMinimumSectionSize(40) self.statistics_table.horizontalHeader().setSortIndicatorShown(True) - self.statistics_table.horizontalHeader().setStretchLastSection(True) + self.statistics_table.horizontalHeader().setStretchLastSection(False) self.statistics_table.verticalHeader().setStretchLastSection(True) self.verticalLayout_6.addWidget(self.statistics_table) self.dataLayout = QtWidgets.QHBoxLayout() @@ -297,6 +306,7 @@ class Ui_Dialog(object): self.label_25.setText(_translate("Dialog", "Signatur")) self.label_26.setText(_translate("Dialog", "Titel")) self.book_search.setText(_translate("Dialog", "Suchen")) + self.seach_by_signature.setStatusTip(_translate("Dialog", "Trunkierung mit * am Ende unterstützt")) self.tabWidget_2.setTabText(self.tabWidget_2.indexOf(self.tab_4), _translate("Dialog", "Suchen")) self.btn_del_select_apparats.setText(_translate("Dialog", "Ausgewählte Löschen")) self.btn_notify_for_deletion.setStatusTip(_translate("Dialog", "Zeigt für jeden ausgewählten Apparat eine eMail-Vorlage an")) diff --git a/src/ui/widgets/widget_sources/search_statistic_page.ui b/src/ui/widgets/widget_sources/search_statistic_page.ui index 56cd8df..c936d18 100644 --- a/src/ui/widgets/widget_sources/search_statistic_page.ui +++ b/src/ui/widgets/widget_sources/search_statistic_page.ui @@ -7,7 +7,7 @@ 0 0 1244 - 756 + 767 @@ -207,78 +207,88 @@ Suchen - - - - 10 - 10 - 451 - 121 - - - - - - - Signatur - - - seach_by_signature - - - - - - - true - - - - - - - Titel - - - search_by_title - - - - - - - true - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - 10 - 180 - 75 - 23 - - - - Suchen - - + + + + + + + Signatur + + + seach_by_signature + + + + + + + Titel + + + search_by_title + + + + + + + Qt::ClickFocus + + + true + + + + + + + Suchen + + + + + + + Qt::ClickFocus + + + Trunkierung mit * am Ende unterstützt + + + true + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + @@ -443,7 +453,7 @@ true - true + false true