add files
This commit is contained in:
47
src/ui/Ui_plotdata.py
Normal file
47
src/ui/Ui_plotdata.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\plotdata.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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, QtWidgets
|
||||
|
||||
|
||||
class Ui_MainWindow(object):
|
||||
def setupUi(self, MainWindow):
|
||||
MainWindow.setObjectName("MainWindow")
|
||||
MainWindow.resize(640, 480)
|
||||
self.centralwidget = QtWidgets.QWidget(MainWindow)
|
||||
self.centralwidget.setObjectName("centralwidget")
|
||||
self.graphicsView = QtWidgets.QGraphicsView(self.centralwidget)
|
||||
self.graphicsView.setGeometry(QtCore.QRect(330, 10, 256, 192))
|
||||
self.graphicsView.setObjectName("graphicsView")
|
||||
self.widget = QtWidgets.QWidget(self.centralwidget)
|
||||
self.widget.setGeometry(QtCore.QRect(10, 0, 251, 271))
|
||||
self.widget.setObjectName("widget")
|
||||
self.stackedWidget = QtWidgets.QStackedWidget(self.centralwidget)
|
||||
self.stackedWidget.setGeometry(QtCore.QRect(300, 220, 291, 201))
|
||||
self.stackedWidget.setObjectName("stackedWidget")
|
||||
self.page = QtWidgets.QWidget()
|
||||
self.page.setObjectName("page")
|
||||
self.stackedWidget.addWidget(self.page)
|
||||
self.page_2 = QtWidgets.QWidget()
|
||||
self.page_2.setObjectName("page_2")
|
||||
self.stackedWidget.addWidget(self.page_2)
|
||||
MainWindow.setCentralWidget(self.centralwidget)
|
||||
self.menubar = QtWidgets.QMenuBar(MainWindow)
|
||||
self.menubar.setGeometry(QtCore.QRect(0, 0, 640, 21))
|
||||
self.menubar.setObjectName("menubar")
|
||||
MainWindow.setMenuBar(self.menubar)
|
||||
self.statusbar = QtWidgets.QStatusBar(MainWindow)
|
||||
self.statusbar.setObjectName("statusbar")
|
||||
MainWindow.setStatusBar(self.statusbar)
|
||||
|
||||
self.retranslateUi(MainWindow)
|
||||
QtCore.QMetaObject.connectSlotsByName(MainWindow)
|
||||
|
||||
def retranslateUi(self, MainWindow):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
|
||||
1445
src/ui/Ui_semesterapparat_ui.py
Normal file
1445
src/ui/Ui_semesterapparat_ui.py
Normal file
File diff suppressed because it is too large
Load Diff
232
src/ui/Ui_semesterapparat_ui.ts
Normal file
232
src/ui/Ui_semesterapparat_ui.ts
Normal file
@@ -0,0 +1,232 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE TS>
|
||||
<TS version="2.1" language="de_DE" sourcelanguage="de_DE">
|
||||
<context>
|
||||
<name>MainWindow</name>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="543"/>
|
||||
<source>MainWindow</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="544"/>
|
||||
<source>Load the Semesterapparate from the database</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="545"/>
|
||||
<source>App. aufrufen</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="546"/>
|
||||
<source>neu. App anlegen</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="547"/>
|
||||
<source>Auswahl abbrechen</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="550"/>
|
||||
<source>AppNr</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="552"/>
|
||||
<source>App Name</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="554"/>
|
||||
<source>Professor</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="556"/>
|
||||
<source>gültig bis</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="580"/>
|
||||
<source>Dauerapparat</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="560"/>
|
||||
<source>KontoNr</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="561"/>
|
||||
<source>Apparatsdetails</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="563"/>
|
||||
<source>Dokumentname</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="565"/>
|
||||
<source>Dateityp</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="567"/>
|
||||
<source>Neu?</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="569"/>
|
||||
<source>path</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="570"/>
|
||||
<source>Apparatsname</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="571"/>
|
||||
<source>Winter</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="572"/>
|
||||
<source>Prof. Name</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="573"/>
|
||||
<source>Sommer</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="574"/>
|
||||
<source>Prof. Titel</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="575"/>
|
||||
<source>Semester</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="576"/>
|
||||
<source>2023</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="577"/>
|
||||
<source>Apparatsnummer</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="578"/>
|
||||
<source>Speichern</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="579"/>
|
||||
<source>Aktualisieren</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="581"/>
|
||||
<source>Mail</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="582"/>
|
||||
<source>Tel</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="583"/>
|
||||
<source>Fach</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="589"/>
|
||||
<source>*</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="590"/>
|
||||
<source>Dokument hinzufügen</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="591"/>
|
||||
<source>Dokument öffnen</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="594"/>
|
||||
<source>Buchtitel</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="596"/>
|
||||
<source>Signatur</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="598"/>
|
||||
<source>Auflage</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="600"/>
|
||||
<source>Autor</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="602"/>
|
||||
<source>Link</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="603"/>
|
||||
<source> Medienliste</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="604"/>
|
||||
<source>gel. Medien anzeigen</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="605"/>
|
||||
<source>Medien hinzufügen</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="606"/>
|
||||
<source>Tab 1</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="607"/>
|
||||
<source>Tab 2</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="608"/>
|
||||
<source>Datei</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="609"/>
|
||||
<source>Einstellungen</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="Ui_semesterapparat_ui.py" line="610"/>
|
||||
<source>Beenden</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
71
src/ui/Ui_setupwizard.py
Normal file
71
src/ui/Ui_setupwizard.py
Normal file
@@ -0,0 +1,71 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\setupwizard.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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_Wizard(object):
|
||||
def setupUi(self, Wizard):
|
||||
Wizard.setObjectName("Wizard")
|
||||
Wizard.resize(640, 480)
|
||||
Wizard.setMaximumSize(QtCore.QSize(640, 480))
|
||||
self.wizardPage1 = QtWidgets.QWizardPage()
|
||||
self.wizardPage1.setObjectName("wizardPage1")
|
||||
self.textBrowser = QtWidgets.QTextBrowser(self.wizardPage1)
|
||||
self.textBrowser.setGeometry(QtCore.QRect(200, 10, 256, 192))
|
||||
self.textBrowser.setObjectName("textBrowser")
|
||||
Wizard.addPage(self.wizardPage1)
|
||||
self.wizardPage2 = QtWidgets.QWizardPage()
|
||||
self.wizardPage2.setObjectName("wizardPage2")
|
||||
self.label = QtWidgets.QLabel(self.wizardPage2)
|
||||
self.label.setGeometry(QtCore.QRect(10, 0, 131, 16))
|
||||
self.label.setObjectName("label")
|
||||
self.label_2 = QtWidgets.QLabel(self.wizardPage2)
|
||||
self.label_2.setGeometry(QtCore.QRect(10, 40, 71, 16))
|
||||
self.label_2.setObjectName("label_2")
|
||||
self.default_apps = QtWidgets.QCheckBox(self.wizardPage2)
|
||||
self.default_apps.setGeometry(QtCore.QRect(100, 40, 70, 17))
|
||||
self.default_apps.setText("")
|
||||
self.default_apps.setObjectName("default_apps")
|
||||
self.label_3 = QtWidgets.QLabel(self.wizardPage2)
|
||||
self.label_3.setGeometry(QtCore.QRect(10, 70, 61, 16))
|
||||
self.label_3.setObjectName("label_3")
|
||||
self.custom_applications = QtWidgets.QFrame(self.wizardPage2)
|
||||
self.custom_applications.setGeometry(QtCore.QRect(280, 10, 331, 361))
|
||||
self.custom_applications.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
|
||||
self.custom_applications.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
|
||||
self.custom_applications.setObjectName("custom_applications")
|
||||
self.save_path = QtWidgets.QLineEdit(self.wizardPage2)
|
||||
self.save_path.setGeometry(QtCore.QRect(80, 70, 113, 20))
|
||||
self.save_path.setObjectName("save_path")
|
||||
self.btn_save_path_select = QtWidgets.QToolButton(self.wizardPage2)
|
||||
self.btn_save_path_select.setGeometry(QtCore.QRect(200, 70, 25, 19))
|
||||
self.btn_save_path_select.setObjectName("btn_save_path_select")
|
||||
Wizard.addPage(self.wizardPage2)
|
||||
|
||||
self.retranslateUi(Wizard)
|
||||
QtCore.QMetaObject.connectSlotsByName(Wizard)
|
||||
|
||||
def retranslateUi(self, Wizard):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Wizard.setWindowTitle(_translate("Wizard", "Wizard"))
|
||||
self.textBrowser.setHtml(_translate("Wizard", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
|
||||
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
|
||||
"p, li { white-space: pre-wrap; }\n"
|
||||
"</style></head><body style=\" font-family:\'MS Shell Dlg 2\'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
|
||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Setup für das Semesterapparatsprogram.</p>\n"
|
||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><br /></p>\n"
|
||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Im Anschluss werden wichtige Einstellungen gesetzt, welche auch im späteren Verlauf verändert werden können.</p>\n"
|
||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><br /></p></body></html>"))
|
||||
self.label.setText(_translate("Wizard", "Grundeinstellungen"))
|
||||
self.label_2.setToolTip(_translate("Wizard", "Opens the downloaded files with the default applications set in the OS"))
|
||||
self.label_2.setText(_translate("Wizard", "Default Apps"))
|
||||
self.label_3.setToolTip(_translate("Wizard", "Path where the downloaded files are stored. Defaults to ~/Desktop/SemapFiles"))
|
||||
self.label_3.setText(_translate("Wizard", "Save Path"))
|
||||
self.save_path.setPlaceholderText(_translate("Wizard", "~/Desktop/SemapFiles"))
|
||||
self.btn_save_path_select.setText(_translate("Wizard", "..."))
|
||||
29
src/ui/__init__.py
Normal file
29
src/ui/__init__.py
Normal file
@@ -0,0 +1,29 @@
|
||||
import pathlib
|
||||
|
||||
from .dialogs import (
|
||||
App_Ext_Dialog,
|
||||
Mail_Dialog,
|
||||
Settings,
|
||||
edit_bookdata_ui,
|
||||
fileparser_ui,
|
||||
login_ui,
|
||||
medienadder_ui,
|
||||
parsed_titles_ui,
|
||||
popus_confirm,
|
||||
reminder_ui,
|
||||
settings_ui,
|
||||
new_subject_ui,
|
||||
)
|
||||
from .Ui_semesterapparat_ui import Ui_MainWindow as Ui_Semesterapparat
|
||||
from .Ui_setupwizard import Ui_Wizard as SetupWizard
|
||||
from .widgets import (
|
||||
FilePicker,
|
||||
GraphWidget,
|
||||
Message_Widget,
|
||||
StatusWidget,
|
||||
)
|
||||
|
||||
path = pathlib.Path(__file__).parent.absolute()
|
||||
# from .mainwindow import Ui_MainWindow as Ui_MainWindow
|
||||
# from .sap import Ui_MainWindow as MainWindow_SAP
|
||||
__all__ = ["mainwindow", "sap", "dialogs", "widgets"]
|
||||
157
src/ui/dialogs/Ui_edit_bookdata.py
Normal file
157
src/ui/dialogs/Ui_edit_bookdata.py
Normal file
@@ -0,0 +1,157 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\dialogs\edit_bookdata.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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
|
||||
|
||||
from src.logic.dataclass import BookData
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
def setupUi(self, Dialog):
|
||||
Dialog.setObjectName("Metadaten")
|
||||
Dialog.resize(448, 572)
|
||||
self.buttonBox = QtWidgets.QDialogButtonBox(Dialog)
|
||||
self.buttonBox.setGeometry(QtCore.QRect(260, 530, 161, 32))
|
||||
self.buttonBox.setOrientation(QtCore.Qt.Orientation.Horizontal)
|
||||
self.buttonBox.setStandardButtons(
|
||||
QtWidgets.QDialogButtonBox.StandardButton.Cancel
|
||||
| QtWidgets.QDialogButtonBox.StandardButton.Ok
|
||||
)
|
||||
self.buttonBox.setObjectName("buttonBox")
|
||||
self.gridLayoutWidget = QtWidgets.QWidget(Dialog)
|
||||
self.gridLayoutWidget.setGeometry(QtCore.QRect(0, 0, 441, 531))
|
||||
self.gridLayoutWidget.setObjectName("gridLayoutWidget")
|
||||
self.gridLayout = QtWidgets.QGridLayout(self.gridLayoutWidget)
|
||||
self.gridLayout.setSizeConstraint(
|
||||
QtWidgets.QLayout.SizeConstraint.SetDefaultConstraint
|
||||
)
|
||||
self.gridLayout.setContentsMargins(0, 0, 0, 0)
|
||||
self.gridLayout.setObjectName("gridLayout")
|
||||
self.label_10 = QtWidgets.QLabel(self.gridLayoutWidget)
|
||||
self.label_10.setObjectName("label_10")
|
||||
self.gridLayout.addWidget(self.label_10, 10, 1, 1, 1)
|
||||
self.label = QtWidgets.QLabel(self.gridLayoutWidget)
|
||||
self.label.setObjectName("label")
|
||||
self.gridLayout.addWidget(self.label, 0, 1, 1, 1)
|
||||
self.label_9 = QtWidgets.QLabel(self.gridLayoutWidget)
|
||||
self.label_9.setObjectName("label_9")
|
||||
self.gridLayout.addWidget(self.label_9, 9, 1, 1, 1)
|
||||
self.label_8 = QtWidgets.QLabel(self.gridLayoutWidget)
|
||||
self.label_8.setObjectName("label_8")
|
||||
self.gridLayout.addWidget(self.label_8, 8, 1, 1, 1)
|
||||
self.label_12 = QtWidgets.QLabel(self.gridLayoutWidget)
|
||||
self.label_12.setObjectName("label_12")
|
||||
self.gridLayout.addWidget(self.label_12, 6, 1, 1, 1)
|
||||
self.line_edition = QtWidgets.QLineEdit(self.gridLayoutWidget)
|
||||
self.line_edition.setObjectName("line_edition")
|
||||
self.gridLayout.addWidget(self.line_edition, 2, 2, 1, 1)
|
||||
self.label_3 = QtWidgets.QLabel(self.gridLayoutWidget)
|
||||
self.label_3.setObjectName("label_3")
|
||||
self.gridLayout.addWidget(self.label_3, 2, 1, 1, 1)
|
||||
self.label_4 = QtWidgets.QLabel(self.gridLayoutWidget)
|
||||
self.label_4.setObjectName("label_4")
|
||||
self.gridLayout.addWidget(self.label_4, 3, 1, 1, 1)
|
||||
self.line_link = QtWidgets.QLineEdit(self.gridLayoutWidget)
|
||||
self.line_link.setCursor(QtGui.QCursor(QtCore.Qt.CursorShape.ArrowCursor))
|
||||
self.line_link.setReadOnly(True)
|
||||
self.line_link.setObjectName("line_link")
|
||||
self.gridLayout.addWidget(self.line_link, 6, 2, 1, 1)
|
||||
self.label_5 = QtWidgets.QLabel(self.gridLayoutWidget)
|
||||
self.label_5.setObjectName("label_5")
|
||||
self.gridLayout.addWidget(self.label_5, 4, 1, 1, 1)
|
||||
self.label_7 = QtWidgets.QLabel(self.gridLayoutWidget)
|
||||
self.label_7.setObjectName("label_7")
|
||||
self.gridLayout.addWidget(self.label_7, 7, 1, 1, 1)
|
||||
self.label_6 = QtWidgets.QLabel(self.gridLayoutWidget)
|
||||
self.label_6.setObjectName("label_6")
|
||||
self.gridLayout.addWidget(self.label_6, 5, 1, 1, 1)
|
||||
self.label_2 = QtWidgets.QLabel(self.gridLayoutWidget)
|
||||
self.label_2.setObjectName("label_2")
|
||||
self.gridLayout.addWidget(self.label_2, 1, 1, 1, 1)
|
||||
spacerItem = QtWidgets.QSpacerItem(
|
||||
5,
|
||||
20,
|
||||
QtWidgets.QSizePolicy.Policy.Fixed,
|
||||
QtWidgets.QSizePolicy.Policy.Minimum,
|
||||
)
|
||||
self.gridLayout.addItem(spacerItem, 8, 0, 1, 1)
|
||||
self.line_title = QtWidgets.QLineEdit(self.gridLayoutWidget)
|
||||
self.line_title.setObjectName("line_title")
|
||||
self.gridLayout.addWidget(self.line_title, 0, 2, 1, 1)
|
||||
self.line_signature = QtWidgets.QLineEdit(self.gridLayoutWidget)
|
||||
self.line_signature.setObjectName("line_signature")
|
||||
self.gridLayout.addWidget(self.line_signature, 1, 2, 1, 1)
|
||||
self.line_author = QtWidgets.QLineEdit(self.gridLayoutWidget)
|
||||
self.line_author.setObjectName("line_author")
|
||||
self.gridLayout.addWidget(self.line_author, 3, 2, 1, 1)
|
||||
self.line_lang = QtWidgets.QLineEdit(self.gridLayoutWidget)
|
||||
self.line_lang.setObjectName("line_lang")
|
||||
self.gridLayout.addWidget(self.line_lang, 8, 2, 1, 1)
|
||||
self.line_ppn = QtWidgets.QLineEdit(self.gridLayoutWidget)
|
||||
self.line_ppn.setObjectName("line_ppn")
|
||||
self.gridLayout.addWidget(self.line_ppn, 5, 2, 1, 1)
|
||||
self.line_isbn = QtWidgets.QLineEdit(self.gridLayoutWidget)
|
||||
self.line_isbn.setObjectName("line_isbn")
|
||||
self.gridLayout.addWidget(self.line_isbn, 7, 2, 1, 1)
|
||||
self.line_year = QtWidgets.QLineEdit(self.gridLayoutWidget)
|
||||
self.line_year.setObjectName("line_year")
|
||||
self.gridLayout.addWidget(self.line_year, 9, 2, 1, 1)
|
||||
self.line_pages = QtWidgets.QLineEdit(self.gridLayoutWidget)
|
||||
self.line_pages.setObjectName("line_pages")
|
||||
self.gridLayout.addWidget(self.line_pages, 10, 2, 1, 1)
|
||||
self.line_publisher = QtWidgets.QLineEdit(self.gridLayoutWidget)
|
||||
self.line_publisher.setObjectName("line_publisher")
|
||||
self.gridLayout.addWidget(self.line_publisher, 4, 2, 1, 1)
|
||||
|
||||
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.label_10.setText(_translate("Dialog", "Seiten"))
|
||||
self.label.setText(_translate("Dialog", "Titel"))
|
||||
self.label_9.setText(_translate("Dialog", "Jahr"))
|
||||
self.label_8.setText(_translate("Dialog", "Sprache"))
|
||||
self.label_12.setText(_translate("Dialog", "Link"))
|
||||
self.label_3.setText(_translate("Dialog", "Auflage"))
|
||||
self.label_4.setText(_translate("Dialog", "Autor"))
|
||||
self.label_5.setText(_translate("Dialog", "Herausgeber"))
|
||||
self.label_7.setText(_translate("Dialog", "ISBN(s)"))
|
||||
self.label_6.setText(_translate("Dialog", "PPN"))
|
||||
self.label_2.setText(_translate("Dialog", "Signatur"))
|
||||
|
||||
def populate_fields(self, data: BookData):
|
||||
self.line_author.setText(data.author)
|
||||
self.line_edition.setText(data.edition)
|
||||
self.line_isbn.setText(", ".join(data.isbn))
|
||||
self.line_lang.setText(data.language)
|
||||
self.line_link.setText(data.link)
|
||||
self.line_pages.setText(data.pages)
|
||||
self.line_ppn.setText(data.ppn)
|
||||
self.line_publisher.setText(data.publisher)
|
||||
self.line_signature.setText(data.signature)
|
||||
self.line_title.setText(data.title)
|
||||
self.line_year.setText(data.year)
|
||||
|
||||
def get_data(self) -> BookData:
|
||||
return BookData(
|
||||
ppn=self.line_ppn.text().strip(),
|
||||
title=self.line_title.text().strip(),
|
||||
signature=self.line_signature.text().strip(),
|
||||
edition=self.line_edition.text().strip(),
|
||||
link=self.line_link.text().strip(),
|
||||
isbn=self.line_isbn.text().split(","),
|
||||
author=self.line_author.text().strip(),
|
||||
language=self.line_lang.text().strip(),
|
||||
publisher=self.line_publisher.text().strip(),
|
||||
year=self.line_year.text().strip(),
|
||||
pages=self.line_pages.text().strip(),
|
||||
)
|
||||
109
src/ui/dialogs/Ui_fileparser.py
Normal file
109
src/ui/dialogs/Ui_fileparser.py
Normal file
@@ -0,0 +1,109 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\dialogs\fileparser.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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
|
||||
|
||||
from src.logic.webrequest import BibTextTransformer, WebRequest
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
def setupUi(self, Dialog):
|
||||
Dialog.setObjectName("Dialog")
|
||||
Dialog.resize(402, 301)
|
||||
self.progressBar = QtWidgets.QProgressBar(Dialog)
|
||||
self.progressBar.setGeometry(QtCore.QRect(10, 60, 381, 23))
|
||||
self.progressBar.setProperty("value", 24)
|
||||
self.progressBar.setObjectName("progressBar")
|
||||
self.frame = QtWidgets.QFrame(Dialog)
|
||||
self.frame.setGeometry(QtCore.QRect(10, 10, 381, 41))
|
||||
self.frame.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
|
||||
self.frame.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
|
||||
self.frame.setObjectName("frame")
|
||||
self.horizontalLayoutWidget = QtWidgets.QWidget(self.frame)
|
||||
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 381, 41))
|
||||
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
|
||||
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
|
||||
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
|
||||
self.horizontalLayout.setObjectName("horizontalLayout")
|
||||
self.label = QtWidgets.QLabel(self.horizontalLayoutWidget)
|
||||
self.label.setObjectName("label")
|
||||
self.horizontalLayout.addWidget(self.label)
|
||||
self.count = QtWidgets.QLabel(self.horizontalLayoutWidget)
|
||||
font = QtGui.QFont()
|
||||
font.setBold(True)
|
||||
font.setWeight(75)
|
||||
self.count.setFont(font)
|
||||
self.count.setTextFormat(QtCore.Qt.TextFormat.PlainText)
|
||||
self.count.setObjectName("count")
|
||||
self.horizontalLayout.addWidget(self.count)
|
||||
self.label_2 = QtWidgets.QLabel(self.horizontalLayoutWidget)
|
||||
self.label_2.setObjectName("label_2")
|
||||
self.horizontalLayout.addWidget(self.label_2)
|
||||
spacerItem = QtWidgets.QSpacerItem(
|
||||
40,
|
||||
20,
|
||||
QtWidgets.QSizePolicy.Policy.Expanding,
|
||||
QtWidgets.QSizePolicy.Policy.Minimum,
|
||||
)
|
||||
self.horizontalLayout.addItem(spacerItem)
|
||||
self.frame_2 = QtWidgets.QFrame(Dialog)
|
||||
self.frame_2.setGeometry(QtCore.QRect(10, 100, 381, 201))
|
||||
self.frame_2.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
|
||||
self.frame_2.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
|
||||
self.frame_2.setObjectName("frame_2")
|
||||
self.listWidget = QtWidgets.QListWidget(self.frame_2)
|
||||
self.listWidget.setGeometry(QtCore.QRect(0, 0, 381, 191))
|
||||
self.listWidget.setObjectName("listWidget")
|
||||
self.signatures = []
|
||||
self.returned = []
|
||||
# self.data_gathering_complete = QtCore.pyqtSignal()
|
||||
self.retranslateUi(Dialog)
|
||||
QtCore.QMetaObject.connectSlotsByName(Dialog)
|
||||
|
||||
def retranslateUi(self, Dialog):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
|
||||
self.label.setText(_translate("Dialog", "Es wurden"))
|
||||
self.count.setText(_translate("Dialog", "0"))
|
||||
self.label_2.setText(_translate("Dialog", "Signaturen gefunden."))
|
||||
|
||||
def moveToThread(self, thread):
|
||||
self.progressBar.moveToThread(thread)
|
||||
self.frame.moveToThread(thread)
|
||||
self.horizontalLayoutWidget.moveToThread(thread)
|
||||
self.horizontalLayout.moveToThread(thread)
|
||||
self.label.moveToThread(thread)
|
||||
self.count.moveToThread(thread)
|
||||
self.label_2.moveToThread(thread)
|
||||
self.frame_2.moveToThread(thread)
|
||||
self.listWidget.moveToThread(thread)
|
||||
|
||||
def run(self):
|
||||
for signature in self.signatures:
|
||||
self.count.setText(str(self.signatures.index(signature) + 1))
|
||||
self.listWidget.addItem(signature)
|
||||
webdata = WebRequest().get_ppn(signature).get_data()
|
||||
bookdata = BibTextTransformer("ARRAY").get_data(webdata).return_data()
|
||||
self.returned.append(bookdata)
|
||||
self.progressBar.setValue(self.signatures.index(signature) + 1)
|
||||
# self.data_gathering_complete.emit()
|
||||
|
||||
def deleteLater(self):
|
||||
self.progressBar.deleteLater()
|
||||
self.frame.deleteLater()
|
||||
self.horizontalLayoutWidget.deleteLater()
|
||||
self.horizontalLayout.deleteLater()
|
||||
self.label.deleteLater()
|
||||
self.count.deleteLater()
|
||||
self.label_2.deleteLater()
|
||||
self.frame_2.deleteLater()
|
||||
self.listWidget.deleteLater()
|
||||
self.signatures = []
|
||||
self.returned = []
|
||||
self.retranslateUi.deleteLater()
|
||||
super().deleteLater()
|
||||
113
src/ui/dialogs/Ui_login.py
Normal file
113
src/ui/dialogs/Ui_login.py
Normal file
@@ -0,0 +1,113 @@
|
||||
# Form implementation generated from reading ui file '/home/alexander/GitHub/Semesterapparate/ui/dialogs/login.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.
|
||||
|
||||
|
||||
import hashlib
|
||||
|
||||
from PyQt6 import QtCore, QtWidgets
|
||||
|
||||
from src.backend.database import Database
|
||||
from src.backend.admin_console import AdminCommands
|
||||
|
||||
class Ui_Dialog(object):
|
||||
def setupUi(self, Dialog):
|
||||
Dialog.setObjectName("Dialog")
|
||||
Dialog.resize(218, 190)
|
||||
self.dialog = Dialog
|
||||
self.login_button = QtWidgets.QPushButton(parent=Dialog)
|
||||
self.login_button.setGeometry(QtCore.QRect(30, 140, 76, 32))
|
||||
self.login_button.setObjectName("login_button")
|
||||
self.login_button.setText("Login")
|
||||
self.login_button.setFocusPolicy(QtCore.Qt.FocusPolicy.ClickFocus)
|
||||
self.cancel_button = QtWidgets.QPushButton(parent=Dialog)
|
||||
self.cancel_button.setGeometry(QtCore.QRect(120, 140, 76, 32))
|
||||
self.cancel_button.setObjectName("cancel_button")
|
||||
self.cancel_button.setText("Cancel")
|
||||
self.cancel_button.setFocusPolicy(QtCore.Qt.FocusPolicy.ClickFocus)
|
||||
self.cancel_button.clicked.connect(self.cancel_buttonfn)
|
||||
self.label = QtWidgets.QLabel(parent=Dialog)
|
||||
self.label.setGeometry(QtCore.QRect(20, 40, 71, 21))
|
||||
self.label.setObjectName("label")
|
||||
self.lineEdit = QtWidgets.QLineEdit(parent=Dialog)
|
||||
self.lineEdit.setGeometry(QtCore.QRect(80, 40, 113, 21))
|
||||
self.lineEdit.setObjectName("lineEdit")
|
||||
# set strong focus to lineEdit
|
||||
self.lineEdit.setFocusPolicy(QtCore.Qt.FocusPolicy.StrongFocus)
|
||||
self.label_2 = QtWidgets.QLabel(parent=Dialog)
|
||||
self.label_2.setGeometry(QtCore.QRect(20, 80, 71, 21))
|
||||
self.label_2.setObjectName("label_2")
|
||||
self.lineEdit_2 = QtWidgets.QLineEdit(parent=Dialog)
|
||||
self.lineEdit_2.setGeometry(QtCore.QRect(80, 80, 113, 21))
|
||||
self.lineEdit_2.setInputMethodHints(QtCore.Qt.InputMethodHint.ImhSensitiveData)
|
||||
# set echo mode to password
|
||||
self.lineEdit_2.setEchoMode(QtWidgets.QLineEdit.EchoMode.Password)
|
||||
self.lineEdit_2.setClearButtonEnabled(True)
|
||||
self.lineEdit_2.setObjectName("lineEdit_2")
|
||||
|
||||
self.retranslateUi(Dialog)
|
||||
# if buttonbox accepted is clicked, launch login test
|
||||
self.login_button.clicked.connect(self.login)
|
||||
self.lresult = -1
|
||||
self.lusername = ""
|
||||
QtCore.QMetaObject.connectSlotsByName(Dialog)
|
||||
|
||||
def retranslateUi(self, Dialog):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
|
||||
self.label.setText(_translate("Dialog", "Username"))
|
||||
self.label_2.setText(_translate("Dialog", "Password"))
|
||||
|
||||
def login(self):
|
||||
username = self.lineEdit.text()
|
||||
password = self.lineEdit_2.text()
|
||||
print(type(username), password)
|
||||
# Assuming 'Database' is a class to interact with your database
|
||||
db = Database()
|
||||
|
||||
hashed_password = hashlib.sha256(
|
||||
password.encode()
|
||||
).hexdigest()
|
||||
if len(db.get_users()) == 0:
|
||||
AdminCommands().create_admin()
|
||||
self.lresult = 1 # Indicate successful login
|
||||
self.lusername = username
|
||||
self.dialog.accept()
|
||||
if db.login(username, hashed_password):
|
||||
self.lresult = 1 # Indicate successful login
|
||||
self.lusername = username
|
||||
self.dialog.accept()
|
||||
db.close()
|
||||
else:
|
||||
# Credentials are invalid, display a warning
|
||||
if username == "" or password == "":
|
||||
warning_dialog = QtWidgets.QMessageBox()
|
||||
warning_dialog.setIcon(QtWidgets.QMessageBox.Icon.Warning)
|
||||
warning_dialog.setText("Please enter a username and password.")
|
||||
warning_dialog.setWindowTitle("Login Failed")
|
||||
warning_dialog.exec()
|
||||
else:
|
||||
warning_dialog = QtWidgets.QMessageBox()
|
||||
warning_dialog.setIcon(QtWidgets.QMessageBox.Icon.Warning)
|
||||
warning_dialog.setText(
|
||||
"Invalid username or password. Please try again."
|
||||
)
|
||||
warning_dialog.setWindowTitle("Login Failed")
|
||||
warning_dialog.exec()
|
||||
|
||||
def cancel_buttonfn(self):
|
||||
self.dialog.reject()
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
Dialog = QtWidgets.QDialog()
|
||||
ui = Ui_Dialog()
|
||||
ui.setupUi(Dialog)
|
||||
Dialog.show()
|
||||
sys.exit(app.exec())
|
||||
240
src/ui/dialogs/Ui_medianadder.py
Normal file
240
src/ui/dialogs/Ui_medianadder.py
Normal file
@@ -0,0 +1,240 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\dialogs\medianadder.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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(637, 491)
|
||||
self.label = QtWidgets.QLabel(Dialog)
|
||||
self.label.setGeometry(QtCore.QRect(20, 10, 47, 21))
|
||||
self.label.setObjectName("label")
|
||||
self.label_2 = QtWidgets.QLabel(Dialog)
|
||||
self.label_2.setGeometry(QtCore.QRect(20, 40, 47, 21))
|
||||
self.label_2.setObjectName("label_2")
|
||||
self.comboBox = QtWidgets.QComboBox(Dialog)
|
||||
self.comboBox.setGeometry(QtCore.QRect(70, 40, 69, 22))
|
||||
self.comboBox.setObjectName("comboBox")
|
||||
self.comboBox.addItem("")
|
||||
self.comboBox.addItem("")
|
||||
self.comboBox.addItem("")
|
||||
self.comboBox.addItem("")
|
||||
self.lineEdit = QtWidgets.QLineEdit(Dialog)
|
||||
self.lineEdit.setGeometry(QtCore.QRect(70, 10, 113, 20))
|
||||
self.lineEdit.setObjectName("lineEdit")
|
||||
self.label_3 = QtWidgets.QLabel(Dialog)
|
||||
self.label_3.setGeometry(QtCore.QRect(20, 70, 47, 21))
|
||||
self.label_3.setObjectName("label_3")
|
||||
self.widget = QtWidgets.QWidget(Dialog)
|
||||
self.widget.setGeometry(QtCore.QRect(330, 90, 301, 341))
|
||||
self.widget.setObjectName("widget")
|
||||
self.treeWidget = QtWidgets.QTreeWidget(self.widget)
|
||||
self.treeWidget.setEnabled(True)
|
||||
self.treeWidget.setGeometry(QtCore.QRect(0, 0, 301, 341))
|
||||
self.treeWidget.setAutoFillBackground(False)
|
||||
self.treeWidget.setLineWidth(0)
|
||||
self.treeWidget.setMidLineWidth(0)
|
||||
self.treeWidget.setVerticalScrollBarPolicy(
|
||||
QtCore.Qt.ScrollBarPolicy.ScrollBarAlwaysOff
|
||||
)
|
||||
self.treeWidget.setHorizontalScrollBarPolicy(
|
||||
QtCore.Qt.ScrollBarPolicy.ScrollBarAlwaysOff
|
||||
)
|
||||
self.treeWidget.setSizeAdjustPolicy(
|
||||
QtWidgets.QAbstractScrollArea.SizeAdjustPolicy.AdjustToContents
|
||||
)
|
||||
self.treeWidget.setEditTriggers(
|
||||
QtWidgets.QAbstractItemView.EditTrigger.NoEditTriggers
|
||||
)
|
||||
self.treeWidget.setAlternatingRowColors(True)
|
||||
self.treeWidget.setSelectionMode(
|
||||
QtWidgets.QAbstractItemView.SelectionMode.NoSelection
|
||||
)
|
||||
self.treeWidget.setTextElideMode(QtCore.Qt.TextElideMode.ElideMiddle)
|
||||
self.treeWidget.setUniformRowHeights(True)
|
||||
self.treeWidget.setItemsExpandable(False)
|
||||
self.treeWidget.setExpandsOnDoubleClick(False)
|
||||
self.treeWidget.setObjectName("treeWidget")
|
||||
font = QtGui.QFont()
|
||||
font.setPointSize(7)
|
||||
self.treeWidget.headerItem().setFont(0, font)
|
||||
item_0 = QtWidgets.QTreeWidgetItem(self.treeWidget)
|
||||
brush = QtGui.QBrush(QtGui.QColor(255, 0, 0))
|
||||
brush.setStyle(QtCore.Qt.BrushStyle.SolidPattern)
|
||||
item_0.setBackground(2, brush)
|
||||
item_0 = QtWidgets.QTreeWidgetItem(self.treeWidget)
|
||||
brush = QtGui.QBrush(QtGui.QColor(0, 255, 0))
|
||||
brush.setStyle(QtCore.Qt.BrushStyle.SolidPattern)
|
||||
item_0.setBackground(2, brush)
|
||||
item_0 = QtWidgets.QTreeWidgetItem(self.treeWidget)
|
||||
item_0 = QtWidgets.QTreeWidgetItem(self.treeWidget)
|
||||
item_0 = QtWidgets.QTreeWidgetItem(self.treeWidget)
|
||||
item_0 = QtWidgets.QTreeWidgetItem(self.treeWidget)
|
||||
item_0 = QtWidgets.QTreeWidgetItem(self.treeWidget)
|
||||
item_0 = QtWidgets.QTreeWidgetItem(self.treeWidget)
|
||||
item_0 = QtWidgets.QTreeWidgetItem(self.treeWidget)
|
||||
item_0 = QtWidgets.QTreeWidgetItem(self.treeWidget)
|
||||
item_0 = QtWidgets.QTreeWidgetItem(self.treeWidget)
|
||||
self.treeWidget.header().setCascadingSectionResizes(False)
|
||||
self.treeWidget.header().setDefaultSectionSize(60)
|
||||
self.treeWidget.header().setHighlightSections(False)
|
||||
self.treeWidget.header().setMinimumSectionSize(20)
|
||||
self.listWidget = QtWidgets.QListWidget(Dialog)
|
||||
self.listWidget.setGeometry(QtCore.QRect(10, 90, 281, 341))
|
||||
self.listWidget.setContextMenuPolicy(
|
||||
QtCore.Qt.ContextMenuPolicy.CustomContextMenu
|
||||
)
|
||||
self.listWidget.setObjectName("listWidget")
|
||||
self.label_4 = QtWidgets.QLabel(Dialog)
|
||||
self.label_4.setGeometry(QtCore.QRect(330, 50, 181, 21))
|
||||
self.label_4.setObjectName("label_4")
|
||||
self.label_5 = QtWidgets.QLabel(Dialog)
|
||||
self.label_5.setGeometry(QtCore.QRect(200, 70, 41, 21))
|
||||
self.label_5.setObjectName("label_5")
|
||||
self.list_amount = QtWidgets.QLabel(Dialog)
|
||||
self.list_amount.setGeometry(QtCore.QRect(240, 70, 47, 21))
|
||||
self.list_amount.setObjectName("list_amount")
|
||||
self.buttonBox = QtWidgets.QDialogButtonBox(Dialog)
|
||||
self.buttonBox.setGeometry(QtCore.QRect(10, 450, 156, 23))
|
||||
self.buttonBox.setStandardButtons(
|
||||
QtWidgets.QDialogButtonBox.StandardButton.Cancel
|
||||
| QtWidgets.QDialogButtonBox.StandardButton.Ok
|
||||
)
|
||||
self.buttonBox.setCenterButtons(False)
|
||||
self.buttonBox.setObjectName("buttonBox")
|
||||
self.buttonBox.setFocusPolicy(QtCore.Qt.FocusPolicy.ClickFocus)
|
||||
# self.buttonBox.accepted.disconnect()
|
||||
# set the activation action for the buttonBox to be shift enter
|
||||
self.buttonBox.setFocusPolicy(QtCore.Qt.FocusPolicy.StrongFocus)
|
||||
self.buttonBox.accepted.connect(Dialog.accept) # type: ignore
|
||||
self.buttonBox.rejected.connect(Dialog.reject) # type: ignore
|
||||
|
||||
self.lineEdit.returnPressed.connect(self.add_to_list)
|
||||
self.retranslateUi(Dialog)
|
||||
QtCore.QMetaObject.connectSlotsByName(Dialog)
|
||||
|
||||
def retranslateUi(self, Dialog):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
|
||||
self.label.setText(_translate("Dialog", "Signatur"))
|
||||
self.label_2.setText(_translate("Dialog", "Modus"))
|
||||
self.comboBox.setItemText(0, _translate("Dialog", "ARRAY"))
|
||||
self.comboBox.setItemText(1, _translate("Dialog", "BibTeX"))
|
||||
self.comboBox.setItemText(2, _translate("Dialog", "COinS"))
|
||||
self.comboBox.setItemText(3, _translate("Dialog", "RIS"))
|
||||
self.lineEdit.setPlaceholderText(_translate("Dialog", "Signatur / ISBN"))
|
||||
self.label_3.setText(_translate("Dialog", "Queue"))
|
||||
self.treeWidget.headerItem().setText(
|
||||
0, _translate("Dialog", "Datensatz\\Metadata")
|
||||
)
|
||||
self.treeWidget.headerItem().setText(1, _translate("Dialog", "Array"))
|
||||
self.treeWidget.headerItem().setText(2, _translate("Dialog", "BibTeX"))
|
||||
self.treeWidget.headerItem().setText(3, _translate("Dialog", "COinS"))
|
||||
self.treeWidget.headerItem().setText(4, _translate("Dialog", "RIS"))
|
||||
__sortingEnabled = self.treeWidget.isSortingEnabled()
|
||||
self.treeWidget.setSortingEnabled(False)
|
||||
self.treeWidget.topLevelItem(0).setText(0, _translate("Dialog", "PPN"))
|
||||
self.treeWidget.topLevelItem(0).setText(1, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(0).setText(2, _translate("Dialog", "0"))
|
||||
self.treeWidget.topLevelItem(0).setText(3, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(0).setText(4, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(1).setText(0, _translate("Dialog", "Signatur"))
|
||||
self.treeWidget.topLevelItem(1).setText(1, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(1).setText(2, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(1).setText(3, _translate("Dialog", "0"))
|
||||
self.treeWidget.topLevelItem(1).setText(4, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(2).setText(0, _translate("Dialog", "Autor"))
|
||||
self.treeWidget.topLevelItem(2).setText(1, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(2).setText(2, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(2).setText(3, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(2).setText(4, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(3).setText(0, _translate("Dialog", "ISBN"))
|
||||
self.treeWidget.topLevelItem(3).setText(1, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(3).setText(2, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(3).setText(3, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(3).setText(4, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(4).setText(0, _translate("Dialog", "Jahr"))
|
||||
self.treeWidget.topLevelItem(4).setText(1, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(4).setText(2, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(4).setText(3, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(4).setText(4, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(5).setText(0, _translate("Dialog", "Auflage"))
|
||||
self.treeWidget.topLevelItem(5).setText(1, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(5).setText(2, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(5).setText(3, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(5).setText(4, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(6).setText(0, _translate("Dialog", "Sprache"))
|
||||
self.treeWidget.topLevelItem(6).setText(1, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(6).setText(2, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(6).setText(3, _translate("Dialog", "0"))
|
||||
self.treeWidget.topLevelItem(6).setText(4, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(7).setText(0, _translate("Dialog", "Herausgeber"))
|
||||
self.treeWidget.topLevelItem(7).setText(1, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(7).setText(2, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(7).setText(3, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(7).setText(4, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(8).setText(0, _translate("Dialog", "Seiten"))
|
||||
self.treeWidget.topLevelItem(8).setText(1, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(8).setText(2, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(8).setText(3, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(8).setText(4, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(9).setText(0, _translate("Dialog", "Titel"))
|
||||
self.treeWidget.topLevelItem(9).setText(1, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(9).setText(2, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(9).setText(3, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(9).setText(4, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(10).setText(0, _translate("Dialog", "Link"))
|
||||
self.treeWidget.topLevelItem(10).setText(1, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(10).setText(2, _translate("Dialog", "0"))
|
||||
self.treeWidget.topLevelItem(10).setText(3, _translate("Dialog", "1"))
|
||||
self.treeWidget.topLevelItem(10).setText(4, _translate("Dialog", "1"))
|
||||
self.treeWidget.setSortingEnabled(__sortingEnabled)
|
||||
self.label_4.setText(_translate("Dialog", "Belegbare Felder per Anbieter"))
|
||||
self.label_5.setText(_translate("Dialog", "Anzahl:"))
|
||||
self.list_amount.setText(_translate("Dialog", "0"))
|
||||
self.recolorize()
|
||||
self.listWidget.customContextMenuRequested.connect(self.custom_context_menu)
|
||||
|
||||
def add_to_list(self):
|
||||
text = self.lineEdit.text().strip()
|
||||
if text == "":
|
||||
return
|
||||
else:
|
||||
self.listWidget.addItem(text)
|
||||
self.list_amount.setText(str(self.listWidget.count()))
|
||||
self.lineEdit.clear()
|
||||
|
||||
def recolorize(self):
|
||||
# set the color of the cells of the treeWidget to red if the field is not supported by the provider
|
||||
# else set it to green
|
||||
for i in range(self.treeWidget.topLevelItemCount()):
|
||||
for j in range(1, self.treeWidget.columnCount()):
|
||||
if self.treeWidget.topLevelItem(i).text(j) == "0":
|
||||
self.treeWidget.topLevelItem(i).setBackground(
|
||||
j, QtGui.QColor(255, 0, 0)
|
||||
)
|
||||
else:
|
||||
self.treeWidget.topLevelItem(i).setBackground(
|
||||
j, QtGui.QColor(0, 255, 0)
|
||||
)
|
||||
# remove the text from the cells
|
||||
self.treeWidget.topLevelItem(i).setText(j, "")
|
||||
|
||||
def custom_context_menu(self):
|
||||
menu = QtWidgets.QMenu()
|
||||
menu.addAction("Remove")
|
||||
|
||||
action = menu.exec(QtGui.QCursor.pos())
|
||||
if action.text() == "Remove":
|
||||
self.remove_from_list()
|
||||
|
||||
def remove_from_list(self):
|
||||
self.listWidget.takeItem(self.listWidget.currentRow())
|
||||
self.list_amount.setText(str(self.listWidget.count()))
|
||||
4
src/ui/dialogs/Ui_medianadder.ts
Normal file
4
src/ui/dialogs/Ui_medianadder.ts
Normal file
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE TS>
|
||||
<TS version="2.1">
|
||||
</TS>
|
||||
63
src/ui/dialogs/Ui_new_subject.py
Normal file
63
src/ui/dialogs/Ui_new_subject.py
Normal file
@@ -0,0 +1,63 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\dialogs\new_subject.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
def setupUi(self, Dialog):
|
||||
Dialog.setObjectName("Dialog")
|
||||
Dialog.resize(448, 165)
|
||||
self.verticalLayout_2 = QtWidgets.QVBoxLayout(Dialog)
|
||||
self.verticalLayout_2.setObjectName("verticalLayout_2")
|
||||
self.verticalLayout = QtWidgets.QVBoxLayout()
|
||||
self.verticalLayout.setObjectName("verticalLayout")
|
||||
self.label = QtWidgets.QLabel(Dialog)
|
||||
self.label.setObjectName("label")
|
||||
self.verticalLayout.addWidget(self.label)
|
||||
self.gridLayout = QtWidgets.QGridLayout()
|
||||
self.gridLayout.setObjectName("gridLayout")
|
||||
spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
|
||||
self.gridLayout.addItem(spacerItem, 0, 1, 1, 1)
|
||||
self.checkBox = QtWidgets.QCheckBox(Dialog)
|
||||
self.checkBox.setObjectName("checkBox")
|
||||
self.gridLayout.addWidget(self.checkBox, 0, 0, 1, 1)
|
||||
self.verticalLayout.addLayout(self.gridLayout)
|
||||
self.verticalLayout_2.addLayout(self.verticalLayout)
|
||||
self.frame = QtWidgets.QFrame(Dialog)
|
||||
self.frame.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
|
||||
self.frame.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
|
||||
self.frame.setObjectName("frame")
|
||||
self.label_2 = QtWidgets.QLabel(self.frame)
|
||||
self.label_2.setGeometry(QtCore.QRect(0, 10, 141, 16))
|
||||
self.label_2.setObjectName("label_2")
|
||||
self.lineEdit = QtWidgets.QLineEdit(self.frame)
|
||||
self.lineEdit.setGeometry(QtCore.QRect(0, 30, 141, 20))
|
||||
self.lineEdit.setObjectName("lineEdit")
|
||||
self.verticalLayout_2.addWidget(self.frame)
|
||||
self.buttonBox = QtWidgets.QDialogButtonBox(Dialog)
|
||||
self.buttonBox.setOrientation(QtCore.Qt.Orientation.Horizontal)
|
||||
self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.StandardButton.Cancel|QtWidgets.QDialogButtonBox.StandardButton.Ok)
|
||||
self.buttonBox.setObjectName("buttonBox")
|
||||
self.verticalLayout_2.addWidget(self.buttonBox)
|
||||
self.frame.setVisible(False)
|
||||
self.checkBox.stateChanged.connect(lambda: self.frame.setVisible(self.checkBox.isChecked()))
|
||||
|
||||
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.label.setText(_translate("Dialog", "Das eingegebene Fach wurde nicht in der Datenbank gefunden. Soll es angelegt werden?"))
|
||||
self.checkBox.setText(_translate("Dialog", "Ja"))
|
||||
self.label_2.setText(_translate("Dialog", "Name des Neuen Faches:"))
|
||||
def return_state(self):
|
||||
return self.lineEdit.text()
|
||||
158
src/ui/dialogs/Ui_parsed_titles.py
Normal file
158
src/ui/dialogs/Ui_parsed_titles.py
Normal file
@@ -0,0 +1,158 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\dialogs\parsed_titles.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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
|
||||
|
||||
from log import MyLogger
|
||||
from src.logic.threads import AutoAdder
|
||||
|
||||
logger = MyLogger("AutoTitleAdder")
|
||||
|
||||
|
||||
class Ui_Form(object):
|
||||
def setupUi(self, Form):
|
||||
Form.setObjectName("Form")
|
||||
Form.resize(402, 316)
|
||||
self.frame = QtWidgets.QFrame(Form)
|
||||
self.frame.setGeometry(QtCore.QRect(10, 10, 381, 41))
|
||||
self.frame.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
|
||||
self.frame.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
|
||||
self.frame.setObjectName("frame")
|
||||
self.horizontalLayoutWidget = QtWidgets.QWidget(self.frame)
|
||||
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 381, 41))
|
||||
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
|
||||
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
|
||||
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
|
||||
self.horizontalLayout.setObjectName("horizontalLayout")
|
||||
self.label = QtWidgets.QLabel(self.horizontalLayoutWidget)
|
||||
self.label.setObjectName("label")
|
||||
self.horizontalLayout.addWidget(self.label)
|
||||
self.count = QtWidgets.QLabel(self.horizontalLayoutWidget)
|
||||
font = QtGui.QFont()
|
||||
font.setBold(True)
|
||||
font.setWeight(75)
|
||||
self.count.setFont(font)
|
||||
self.count.setTextFormat(QtCore.Qt.TextFormat.PlainText)
|
||||
self.count.setObjectName("count")
|
||||
self.horizontalLayout.addWidget(self.count)
|
||||
self.label_2 = QtWidgets.QLabel(self.horizontalLayoutWidget)
|
||||
self.label_2.setObjectName("label_2")
|
||||
self.horizontalLayout.addWidget(self.label_2)
|
||||
spacerItem = QtWidgets.QSpacerItem(
|
||||
40,
|
||||
20,
|
||||
QtWidgets.QSizePolicy.Policy.Expanding,
|
||||
QtWidgets.QSizePolicy.Policy.Minimum,
|
||||
)
|
||||
self.horizontalLayout.addItem(spacerItem)
|
||||
self.frame_2 = QtWidgets.QFrame(Form)
|
||||
self.frame_2.setGeometry(QtCore.QRect(10, 80, 381, 201))
|
||||
self.frame_2.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
|
||||
self.frame_2.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
|
||||
self.frame_2.setObjectName("frame_2")
|
||||
self.horizontalLayoutWidget_2 = QtWidgets.QWidget(self.frame_2)
|
||||
self.horizontalLayoutWidget_2.setGeometry(QtCore.QRect(0, 10, 381, 191))
|
||||
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.listWidget = QtWidgets.QListWidget(self.horizontalLayoutWidget_2)
|
||||
self.listWidget.setObjectName("listWidget")
|
||||
self.horizontalLayout_2.addWidget(self.listWidget)
|
||||
self.listWidget_done = QtWidgets.QListWidget(self.horizontalLayoutWidget_2)
|
||||
self.listWidget_done.setObjectName("listWidget_done")
|
||||
self.horizontalLayout_2.addWidget(self.listWidget_done)
|
||||
self.progressBar = QtWidgets.QProgressBar(Form)
|
||||
self.progressBar.setGeometry(QtCore.QRect(10, 60, 381, 23))
|
||||
self.progressBar.setProperty("value", 24)
|
||||
self.progressBar.setObjectName("progressBar")
|
||||
self.buttonBox = QtWidgets.QDialogButtonBox(Form)
|
||||
self.buttonBox.setGeometry(QtCore.QRect(230, 290, 156, 23))
|
||||
self.buttonBox.setStandardButtons(
|
||||
QtWidgets.QDialogButtonBox.StandardButton.Cancel
|
||||
| QtWidgets.QDialogButtonBox.StandardButton.Ok
|
||||
)
|
||||
self.buttonBox.setObjectName("buttonBox")
|
||||
self.toolButton = QtWidgets.QToolButton(Form)
|
||||
self.toolButton.setGeometry(QtCore.QRect(20, 290, 25, 19))
|
||||
self.toolButton.setObjectName("toolButton")
|
||||
self.signatures = []
|
||||
self.prof_id = None
|
||||
self.app_id = None
|
||||
self.thread = QtCore.QThread()
|
||||
self.toolButton.hide()
|
||||
self.retranslateUi(Form)
|
||||
QtCore.QMetaObject.connectSlotsByName(Form)
|
||||
self.toolButton.clicked.connect(self.start)
|
||||
# if cancel is clicked, terminate the thread
|
||||
self.buttonBox.rejected.connect(self.thread_quit)
|
||||
|
||||
def retranslateUi(self, Form):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Form.setWindowTitle(_translate("Form", "Form"))
|
||||
self.label.setText(_translate("Form", "Es wurden"))
|
||||
self.count.setText(_translate("Form", "0"))
|
||||
self.label_2.setText(_translate("Form", "Signaturen gefunden."))
|
||||
self.toolButton.setText(_translate("Form", "..."))
|
||||
|
||||
def populate_table(self):
|
||||
for i in range(len(self.signatures)):
|
||||
self.listWidget.addItem(QtWidgets.QListWidgetItem())
|
||||
self.listWidget.item(i).setText(self.signatures[i])
|
||||
self.listWidget.item(i).setToolTip("Daten werden gesammelt")
|
||||
|
||||
def update_progress_bar(self, value: int):
|
||||
self.progressBar.setValue(value)
|
||||
|
||||
def thread_quit(self):
|
||||
print("Terminating thread")
|
||||
self.thread.terminate()
|
||||
self.thread.quit()
|
||||
self.thread.deleteLater()
|
||||
self.thread = None
|
||||
|
||||
def start(self):
|
||||
logger.log_info("Starting AutoAdder")
|
||||
|
||||
self.thread = AutoAdder(
|
||||
data=self.signatures,
|
||||
app_id=self.app_id,
|
||||
prof_id=self.prof_id,
|
||||
)
|
||||
self.thread.finished.connect(self.on_completion)
|
||||
self.thread.updateSignal.connect(self.update_progress_bar)
|
||||
self.thread.setTextSignal.connect(self.update_lists)
|
||||
self.thread.progress.connect(self.determine_progress)
|
||||
self.thread.finished.connect(self.thread.quit)
|
||||
self.thread.finished.connect(self.thread.deleteLater)
|
||||
# self.thread.updateSignal.connect(self.update_progress_label)
|
||||
# worker.finished.connect(worker.deleteLater)
|
||||
|
||||
self.thread.start()
|
||||
|
||||
def on_completion(self):
|
||||
logger.log_info("AutoAdder finished")
|
||||
logger.log_info("Returning data")
|
||||
|
||||
# create a function that closes the dialog
|
||||
|
||||
def determine_progress(self, signal):
|
||||
# check length of listWidget
|
||||
length = self.listWidget.count()
|
||||
print(f"Length of listWidget: {length}")
|
||||
if length == 0:
|
||||
logger.log_info("AutoAdder finished")
|
||||
self.buttonBox.accepted.emit()
|
||||
|
||||
def update_lists(self, signal):
|
||||
# get text of first entry in listWidget
|
||||
text = self.listWidget.item(0).text()
|
||||
# remove first entry
|
||||
self.listWidget.takeItem(0)
|
||||
# add first entry to listWidget_done
|
||||
self.listWidget_done.addItem(text)
|
||||
52
src/ui/dialogs/Ui_reminder.py
Normal file
52
src/ui/dialogs/Ui_reminder.py
Normal file
@@ -0,0 +1,52 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\dialogs\reminder.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
def setupUi(self, Dialog):
|
||||
Dialog.setObjectName("Dialog")
|
||||
Dialog.resize(369, 308)
|
||||
self.buttonBox = QtWidgets.QDialogButtonBox(Dialog)
|
||||
self.buttonBox.setGeometry(QtCore.QRect(190, 270, 161, 32))
|
||||
self.buttonBox.setOrientation(QtCore.Qt.Orientation.Horizontal)
|
||||
self.buttonBox.setStandardButtons(
|
||||
QtWidgets.QDialogButtonBox.StandardButton.Cancel
|
||||
| QtWidgets.QDialogButtonBox.StandardButton.Ok
|
||||
)
|
||||
self.buttonBox.setObjectName("buttonBox")
|
||||
self.message_box = QtWidgets.QTextEdit(Dialog)
|
||||
self.message_box.setGeometry(QtCore.QRect(10, 60, 341, 201))
|
||||
self.message_box.setObjectName("message_box")
|
||||
self.label = QtWidgets.QLabel(Dialog)
|
||||
self.label.setGeometry(QtCore.QRect(10, 30, 61, 21))
|
||||
self.label.setObjectName("label")
|
||||
self.label_2 = QtWidgets.QLabel(Dialog)
|
||||
self.label_2.setGeometry(QtCore.QRect(150, 30, 81, 21))
|
||||
self.label_2.setObjectName("label_2")
|
||||
self.dateEdit = QtWidgets.QDateEdit(Dialog)
|
||||
self.dateEdit.setGeometry(QtCore.QRect(240, 30, 110, 22))
|
||||
self.dateEdit.setObjectName("dateEdit")
|
||||
self.dateEdit.setDateTime(QtCore.QDateTime.currentDateTime())
|
||||
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.label.setText(_translate("Dialog", "Nachricht:"))
|
||||
self.label_2.setText(_translate("Dialog", "Erinnerung am:"))
|
||||
|
||||
def return_message(self) -> dict:
|
||||
return {
|
||||
"message": self.message_box.toPlainText(),
|
||||
"remind_at": self.dateEdit.date().toString("yyyy-MM-dd"),
|
||||
}
|
||||
202
src/ui/dialogs/Ui_settings.py
Normal file
202
src/ui/dialogs/Ui_settings.py
Normal file
@@ -0,0 +1,202 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\dialogs\settings.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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 omegaconf import OmegaConf
|
||||
from PyQt6 import QtCore, QtWidgets
|
||||
|
||||
config = OmegaConf.load("config.yaml")
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
def setupUi(self, Dialog):
|
||||
Dialog.setObjectName("Dialog")
|
||||
Dialog.resize(743, 576)
|
||||
self.buttonBox = QtWidgets.QDialogButtonBox(Dialog)
|
||||
self.buttonBox.setGeometry(QtCore.QRect(120, 540, 621, 32))
|
||||
self.buttonBox.setOrientation(QtCore.Qt.Orientation.Horizontal)
|
||||
self.buttonBox.setStandardButtons(
|
||||
QtWidgets.QDialogButtonBox.StandardButton.Cancel
|
||||
| QtWidgets.QDialogButtonBox.StandardButton.Ok
|
||||
)
|
||||
self.buttonBox.setObjectName("buttonBox")
|
||||
self.frame = QtWidgets.QFrame(Dialog)
|
||||
self.frame.setGeometry(QtCore.QRect(0, 0, 741, 541))
|
||||
self.frame.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
|
||||
self.frame.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
|
||||
self.frame.setObjectName("frame")
|
||||
self.label = QtWidgets.QLabel(self.frame)
|
||||
self.label.setGeometry(QtCore.QRect(400, 30, 161, 21))
|
||||
self.label.setObjectName("label")
|
||||
self.line = QtWidgets.QFrame(self.frame)
|
||||
self.line.setGeometry(QtCore.QRect(370, 0, 20, 541))
|
||||
self.line.setFrameShadow(QtWidgets.QFrame.Shadow.Plain)
|
||||
self.line.setLineWidth(1)
|
||||
self.line.setMidLineWidth(0)
|
||||
self.line.setFrameShape(QtWidgets.QFrame.Shape.VLine)
|
||||
self.line.setObjectName("line")
|
||||
self.textBrowser = QtWidgets.QTextBrowser(self.frame)
|
||||
self.textBrowser.setGeometry(QtCore.QRect(400, 50, 311, 51))
|
||||
self.textBrowser.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
|
||||
self.textBrowser.setInputMethodHints(QtCore.Qt.InputMethodHint.ImhNone)
|
||||
self.textBrowser.setObjectName("textBrowser")
|
||||
self.label_2 = QtWidgets.QLabel(self.frame)
|
||||
self.label_2.setGeometry(QtCore.QRect(10, 20, 161, 21))
|
||||
self.label_2.setObjectName("label_2")
|
||||
self.os_apps = QtWidgets.QCheckBox(self.frame)
|
||||
self.os_apps.setGeometry(QtCore.QRect(410, 110, 161, 17))
|
||||
self.os_apps.setObjectName("os_apps")
|
||||
self.formLayoutWidget = QtWidgets.QWidget(self.frame)
|
||||
self.formLayoutWidget.setGeometry(QtCore.QRect(10, 50, 361, 491))
|
||||
self.formLayoutWidget.setObjectName("formLayoutWidget")
|
||||
self.gridLayout = QtWidgets.QGridLayout(self.formLayoutWidget)
|
||||
self.gridLayout.setContentsMargins(0, 0, 0, 0)
|
||||
self.gridLayout.setObjectName("gridLayout")
|
||||
self.label_3 = QtWidgets.QLabel(self.formLayoutWidget)
|
||||
self.label_3.setObjectName("label_3")
|
||||
self.gridLayout.addWidget(self.label_3, 0, 0, 1, 1)
|
||||
self.label_5 = QtWidgets.QLabel(self.formLayoutWidget)
|
||||
self.label_5.setObjectName("label_5")
|
||||
self.gridLayout.addWidget(self.label_5, 2, 0, 1, 1)
|
||||
self.db_path = QtWidgets.QLineEdit(self.formLayoutWidget)
|
||||
self.db_path.setEnabled(False)
|
||||
self.db_path.setObjectName("db_path")
|
||||
self.gridLayout.addWidget(self.db_path, 1, 1, 1, 1)
|
||||
self.save_path = QtWidgets.QLineEdit(self.formLayoutWidget)
|
||||
self.save_path.setObjectName("save_path")
|
||||
self.gridLayout.addWidget(self.save_path, 2, 1, 1, 1)
|
||||
self.label_4 = QtWidgets.QLabel(self.formLayoutWidget)
|
||||
self.label_4.setObjectName("label_4")
|
||||
self.gridLayout.addWidget(self.label_4, 1, 0, 1, 1)
|
||||
self.db_name = QtWidgets.QLineEdit(self.formLayoutWidget)
|
||||
self.db_name.setObjectName("db_name")
|
||||
self.gridLayout.addWidget(self.db_name, 0, 1, 1, 1)
|
||||
self.tb_set_save_path = QtWidgets.QToolButton(self.formLayoutWidget)
|
||||
self.tb_set_save_path.setObjectName("tb_set_save_path")
|
||||
self.gridLayout.addWidget(self.tb_set_save_path, 2, 2, 1, 1)
|
||||
spacerItem = QtWidgets.QSpacerItem(
|
||||
20,
|
||||
40,
|
||||
QtWidgets.QSizePolicy.Policy.Minimum,
|
||||
QtWidgets.QSizePolicy.Policy.Expanding,
|
||||
)
|
||||
self.gridLayout.addItem(spacerItem, 3, 1, 1, 1)
|
||||
self.tb_select_db = QtWidgets.QToolButton(self.formLayoutWidget)
|
||||
self.tb_select_db.setObjectName("tb_select_db")
|
||||
self.gridLayout.addWidget(self.tb_select_db, 0, 2, 1, 1)
|
||||
self.scrollArea = QtWidgets.QScrollArea(self.frame)
|
||||
self.scrollArea.setGeometry(QtCore.QRect(400, 130, 331, 411))
|
||||
self.scrollArea.setWidgetResizable(True)
|
||||
self.scrollArea.setObjectName("scrollArea")
|
||||
self.scrollAreaWidgetContents = QtWidgets.QWidget()
|
||||
self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 329, 409))
|
||||
self.scrollAreaWidgetContents.setObjectName("scrollAreaWidgetContents")
|
||||
self.treeWidget = QtWidgets.QTreeWidget(self.scrollAreaWidgetContents)
|
||||
self.treeWidget.setGeometry(QtCore.QRect(0, 0, 331, 411))
|
||||
self.treeWidget.setObjectName("treeWidget")
|
||||
self.treeWidget.setContextMenuPolicy(
|
||||
QtCore.Qt.ContextMenuPolicy.ActionsContextMenu
|
||||
)
|
||||
self.scrollArea.setWidget(self.scrollAreaWidgetContents)
|
||||
self.label_3.setBuddy(self.db_name)
|
||||
self.label_5.setBuddy(self.save_path)
|
||||
self.label_4.setBuddy(self.db_path)
|
||||
self.tb_select_db.clicked.connect(self.select_db)
|
||||
self.tb_set_save_path.clicked.connect(self.set_save_path)
|
||||
self.retranslateUi(Dialog)
|
||||
self.buttonBox.accepted.connect(Dialog.accept) # type: ignore
|
||||
self.buttonBox.rejected.connect(Dialog.reject) # type: ignore
|
||||
QtCore.QMetaObject.connectSlotsByName(Dialog)
|
||||
Dialog.setTabOrder(self.db_name, self.db_path)
|
||||
Dialog.setTabOrder(self.db_path, self.save_path)
|
||||
Dialog.setTabOrder(self.save_path, self.os_apps)
|
||||
Dialog.setTabOrder(self.os_apps, self.textBrowser)
|
||||
|
||||
def retranslateUi(self, Dialog):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
|
||||
self.label.setText(_translate("Dialog", "Dateispezifische Einstellungen"))
|
||||
self.textBrowser.setHtml(
|
||||
_translate(
|
||||
"Dialog",
|
||||
'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">\n'
|
||||
'<html><head><meta name="qrichtext" content="1" /><style type="text/css">\n'
|
||||
"p, li { white-space: pre-wrap; }\n"
|
||||
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
|
||||
'<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Hier können Einstellungen f<>r bestehende Dateiformate geändert, oder neue Dateiformate eingefügt werden</p>\n'
|
||||
'<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p></body></html>',
|
||||
)
|
||||
)
|
||||
self.label_2.setText(_translate("Dialog", "Allgemeine Einstellungen"))
|
||||
self.os_apps.setToolTip(
|
||||
_translate(
|
||||
"Dialog",
|
||||
"Verwendet im Betriebssystem festgelegte Anwendungen um Dateien zu öffnen",
|
||||
)
|
||||
)
|
||||
self.os_apps.setText(_translate("Dialog", "Standard-Apps verwenden"))
|
||||
self.label_3.setToolTip(
|
||||
_translate(
|
||||
"Dialog",
|
||||
'<html><head/><body><p>Name der Datenbank, welche verwendet werden soll. <span style=" font-weight:600;">Muss</span> auf .db enden</p></body></html>',
|
||||
)
|
||||
)
|
||||
self.label_3.setText(_translate("Dialog", "Datenbankname"))
|
||||
self.label_5.setToolTip(
|
||||
_translate(
|
||||
"Dialog",
|
||||
"Pfad, an dem heruntergeladene Dateien gespeichert werden sollen",
|
||||
)
|
||||
)
|
||||
self.label_5.setText(_translate("Dialog", "Speicherpfad"))
|
||||
self.label_4.setText(_translate("Dialog", "Datenbankpfad"))
|
||||
self.db_name.setText(_translate("Dialog", "sap.db"))
|
||||
self.tb_set_save_path.setText(_translate("Dialog", "..."))
|
||||
self.tb_select_db.setText(_translate("Dialog", "..."))
|
||||
self.load_config()
|
||||
|
||||
def load_config(self):
|
||||
self.db_name.setText(config.database.name)
|
||||
self.db_path.setText(config.database.path)
|
||||
self.save_path.setText(config.save_path)
|
||||
self.os_apps.setChecked(config.default_apps)
|
||||
applications = config.custom_applications
|
||||
for application in applications:
|
||||
name = application.application
|
||||
file_type = application.extensions
|
||||
display_name = application.name
|
||||
print(name, file_type, display_name) #
|
||||
# create new item
|
||||
item = QtWidgets.QTreeWidgetItem(self.treeWidget)
|
||||
item.setText(0, display_name)
|
||||
|
||||
def select_db(self):
|
||||
# open file dialog, limit to .db files
|
||||
file_dialog = QtWidgets.QFileDialog()
|
||||
file_dialog.setFileMode(QtWidgets.QFileDialog.FileMode.AnyFile)
|
||||
file_dialog.setNameFilter("Datenbank (*.db)")
|
||||
file_dialog.setViewMode(QtWidgets.QFileDialog.ViewMode.Detail)
|
||||
if file_dialog.exec():
|
||||
self.db_name.setText(file_dialog.selectedFiles()[0].split("/")[-1])
|
||||
self.db_path.setText(
|
||||
file_dialog.selectedFiles()[0].split(self.db_name.text())[0]
|
||||
)
|
||||
|
||||
def set_save_path(self):
|
||||
# open file dialog, limit to .db files
|
||||
file_dialog = QtWidgets.QFileDialog()
|
||||
file_dialog.setFileMode(QtWidgets.QFileDialog.FileMode.Directory)
|
||||
file_dialog.setViewMode(QtWidgets.QFileDialog.ViewMode.Detail)
|
||||
if file_dialog.exec():
|
||||
self.save_path.setText(file_dialog.selectedFiles()[0])
|
||||
|
||||
def return_data(self):
|
||||
config.database.name = self.db_name.text()
|
||||
config.database.path = self.db_path.text()
|
||||
config.save_path = self.save_path.text()
|
||||
config.default_apps = self.os_apps.isChecked()
|
||||
return config
|
||||
4
src/ui/dialogs/Ui_settings.ts
Normal file
4
src/ui/dialogs/Ui_settings.ts
Normal file
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE TS>
|
||||
<TS version="2.1">
|
||||
</TS>
|
||||
24
src/ui/dialogs/__init__.py
Normal file
24
src/ui/dialogs/__init__.py
Normal file
@@ -0,0 +1,24 @@
|
||||
from .app_ext import Ui_Dialog as App_Ext_Dialog
|
||||
from .ext_app import Ui_Frame as App_Ext_Window
|
||||
from .mail import Mail_Dialog
|
||||
from .popup_confirm import Ui_extend_confirm as popus_confirm
|
||||
from .settings import Settings
|
||||
from .Ui_edit_bookdata import Ui_Dialog as edit_bookdata_ui
|
||||
from .Ui_fileparser import Ui_Dialog as fileparser_ui
|
||||
from .Ui_login import Ui_Dialog as login_ui
|
||||
from .Ui_medianadder import Ui_Dialog as medienadder_ui
|
||||
from .Ui_parsed_titles import Ui_Form as parsed_titles_ui
|
||||
from .Ui_reminder import Ui_Dialog as reminder_ui
|
||||
from .Ui_settings import Ui_Dialog as settings_ui
|
||||
from .Ui_new_subject import Ui_Dialog as new_subject_ui
|
||||
|
||||
__all__ = [
|
||||
"ext_app",
|
||||
"app_ext",
|
||||
"Mail_Dialog",
|
||||
"medianadder_ui",
|
||||
"popup_confirm",
|
||||
"edit_bookdata_ui",
|
||||
"settings_ui",
|
||||
"parsed_titles_ui",
|
||||
]
|
||||
90
src/ui/dialogs/add_media.ui
Normal file
90
src/ui/dialogs/add_media.ui
Normal file
@@ -0,0 +1,90 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Dialog</class>
|
||||
<widget class="QDialog" name="Dialog">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>400</width>
|
||||
<height>300</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Dialog</string>
|
||||
</property>
|
||||
<widget class="QDialogButtonBox" name="buttonBox">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>30</x>
|
||||
<y>260</y>
|
||||
<width>341</width>
|
||||
<height>32</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="standardButtons">
|
||||
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QWidget" name="gridLayoutWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>10</y>
|
||||
<width>381</width>
|
||||
<height>241</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Signatur</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QLineEdit" name="lineEdit"/>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>accepted()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>accept()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>248</x>
|
||||
<y>254</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>157</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>rejected()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>reject()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>316</x>
|
||||
<y>260</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>286</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
</connections>
|
||||
</ui>
|
||||
114
src/ui/dialogs/app_ext.py
Normal file
114
src/ui/dialogs/app_ext.py
Normal file
@@ -0,0 +1,114 @@
|
||||
# Form implementation generated from reading ui file 'ui\dialogs\apparat_extend.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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(388, 103)
|
||||
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.setMinimumSize(QtCore.QSize(388, 103))
|
||||
Dialog.setMaximumSize(QtCore.QSize(388, 103))
|
||||
self.buttonBox = QtWidgets.QDialogButtonBox(Dialog)
|
||||
self.buttonBox.setGeometry(QtCore.QRect(290, 30, 81, 241))
|
||||
self.buttonBox.setOrientation(QtCore.Qt.Orientation.Vertical)
|
||||
self.buttonBox.setStandardButtons(
|
||||
QtWidgets.QDialogButtonBox.StandardButton.Abort
|
||||
| QtWidgets.QDialogButtonBox.StandardButton.Save
|
||||
)
|
||||
self.buttonBox.setObjectName("buttonBox")
|
||||
self.label = QtWidgets.QLabel(Dialog)
|
||||
self.label.setGeometry(QtCore.QRect(10, 0, 281, 31))
|
||||
sizePolicy = QtWidgets.QSizePolicy(
|
||||
QtWidgets.QSizePolicy.Policy.Fixed, QtWidgets.QSizePolicy.Policy.Fixed
|
||||
)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.label.sizePolicy().hasHeightForWidth())
|
||||
self.label.setSizePolicy(sizePolicy)
|
||||
font = QtGui.QFont()
|
||||
font.setPointSize(10)
|
||||
self.label.setFont(font)
|
||||
self.label.setObjectName("label")
|
||||
self.frame = QtWidgets.QFrame(Dialog)
|
||||
self.frame.setGeometry(QtCore.QRect(10, 30, 241, 41))
|
||||
self.frame.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
|
||||
self.frame.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
|
||||
self.frame.setObjectName("frame")
|
||||
self.line = QtWidgets.QFrame(self.frame)
|
||||
self.line.setGeometry(QtCore.QRect(120, 0, 3, 61))
|
||||
self.line.setFrameShape(QtWidgets.QFrame.Shape.VLine)
|
||||
self.line.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
|
||||
self.line.setObjectName("line")
|
||||
self.rad_sommer = QtWidgets.QRadioButton(self.frame)
|
||||
self.rad_sommer.setGeometry(QtCore.QRect(10, 10, 82, 21))
|
||||
self.rad_sommer.setObjectName("rad_sommer")
|
||||
self.rad_winter = QtWidgets.QRadioButton(self.frame)
|
||||
self.rad_winter.setGeometry(QtCore.QRect(140, 10, 82, 21))
|
||||
self.rad_winter.setObjectName("rad_winter")
|
||||
self.sem_year = QtWidgets.QLineEdit(Dialog)
|
||||
self.sem_year.setGeometry(QtCore.QRect(10, 70, 121, 20))
|
||||
self.sem_year.setObjectName("sem_year")
|
||||
self.dauerapp = QtWidgets.QCheckBox(Dialog)
|
||||
self.dauerapp.setGeometry(QtCore.QRect(150, 70, 91, 21))
|
||||
self.dauerapp.setObjectName("dauerapp")
|
||||
|
||||
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.label.setText(
|
||||
_translate("Dialog", "Bis wann soll der Apparat verlängert werden?")
|
||||
)
|
||||
self.rad_sommer.setText(_translate("Dialog", "Sommer"))
|
||||
self.rad_winter.setText(_translate("Dialog", "Winter"))
|
||||
self.sem_year.setPlaceholderText(_translate("Dialog", "2023"))
|
||||
self.dauerapp.setText(_translate("Dialog", "Dauerapparat"))
|
||||
|
||||
def get_data(self):
|
||||
# def __select_sem_state():
|
||||
# curr_month=QtCore.QDate.currentDate().month()
|
||||
# if curr_month>=4 and curr_month<=9:
|
||||
# return "SoSe"
|
||||
# else:
|
||||
# return "WiSe"
|
||||
# if __select_sem_state()=="SoSe":
|
||||
# self.rad_sommer.setChecked(True)
|
||||
# else:
|
||||
# self.rad_winter.setChecked(True)
|
||||
return {
|
||||
"semester": f"SoSe {int(self.sem_year.text()[-2:])}"
|
||||
if self.rad_sommer.isChecked()
|
||||
else f"WiSe {int(self.sem_year.text()[-2:])}/{int(self.sem_year.text()[-2:])+1}",
|
||||
"dauerapp": self.dauerapp.isChecked()
|
||||
if self.dauerapp.isChecked()
|
||||
else False,
|
||||
}
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
Dialog = QtWidgets.QDialog()
|
||||
ui = Ui_Dialog()
|
||||
ui.setupUi(Dialog)
|
||||
Dialog.show()
|
||||
sys.exit(app.exec())
|
||||
19
src/ui/dialogs/app_status.ui
Normal file
19
src/ui/dialogs/app_status.ui
Normal file
@@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Form</class>
|
||||
<widget class="QWidget" name="Form">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>300</width>
|
||||
<height>500</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Form</string>
|
||||
</property>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
191
src/ui/dialogs/apparat_extend.ui
Normal file
191
src/ui/dialogs/apparat_extend.ui
Normal file
@@ -0,0 +1,191 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Dialog</class>
|
||||
<widget class="QDialog" name="Dialog">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>388</width>
|
||||
<height>103</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>388</width>
|
||||
<height>103</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>388</width>
|
||||
<height>103</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Dialog</string>
|
||||
</property>
|
||||
<widget class="QDialogButtonBox" name="buttonBox">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>290</x>
|
||||
<y>30</y>
|
||||
<width>81</width>
|
||||
<height>241</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="standardButtons">
|
||||
<set>QDialogButtonBox::Abort|QDialogButtonBox::Save</set>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>0</y>
|
||||
<width>281</width>
|
||||
<height>31</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>10</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Bis wann soll der Apparat verlängert werden?</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QFrame" name="frame">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>30</y>
|
||||
<width>241</width>
|
||||
<height>41</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::StyledPanel</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<widget class="Line" name="line">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>120</x>
|
||||
<y>0</y>
|
||||
<width>3</width>
|
||||
<height>61</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QRadioButton" name="rad_sommer">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>10</y>
|
||||
<width>82</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Sommer</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QRadioButton" name="rad_winter">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>140</x>
|
||||
<y>10</y>
|
||||
<width>82</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Winter</string>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QLineEdit" name="sem_year">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>70</y>
|
||||
<width>121</width>
|
||||
<height>20</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="placeholderText">
|
||||
<string>2023</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QCheckBox" name="dauerapp">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>150</x>
|
||||
<y>70</y>
|
||||
<width>91</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Dauerapparat</string>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>accepted()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>accept()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>248</x>
|
||||
<y>254</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>157</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>rejected()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>reject()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>316</x>
|
||||
<y>260</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>286</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
</connections>
|
||||
</ui>
|
||||
83
src/ui/dialogs/apparat_extend_ui.py
Normal file
83
src/ui/dialogs/apparat_extend_ui.py
Normal file
@@ -0,0 +1,83 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
################################################################################
|
||||
## Form generated from reading UI file 'apparat_extend.ui'
|
||||
##
|
||||
## Created by: Qt User Interface Compiler version 6.4.0
|
||||
##
|
||||
## WARNING! All changes made in this file will be lost when recompiling UI file!
|
||||
################################################################################
|
||||
|
||||
from PySide6.QtCore import (QCoreApplication, QDate, QDateTime, QLocale,
|
||||
QMetaObject, QObject, QPoint, QRect,
|
||||
QSize, QTime, QUrl, Qt)
|
||||
from PySide6.QtGui import (QBrush, QColor, QConicalGradient, QCursor,
|
||||
QFont, QFontDatabase, QGradient, QIcon,
|
||||
QImage, QKeySequence, QLinearGradient, QPainter,
|
||||
QPalette, QPixmap, QRadialGradient, QTransform)
|
||||
from PySide6.QtWidgets import (QAbstractButton, QApplication, QCheckBox, QDialog,
|
||||
QDialogButtonBox, QFrame, QLabel, QLineEdit,
|
||||
QRadioButton, QSizePolicy, QWidget)
|
||||
|
||||
class Ui_Dialog(object):
|
||||
def setupUi(self, Dialog):
|
||||
if not Dialog.objectName():
|
||||
Dialog.setObjectName(u"Dialog")
|
||||
Dialog.resize(388, 103)
|
||||
sizePolicy = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(Dialog.sizePolicy().hasHeightForWidth())
|
||||
Dialog.setSizePolicy(sizePolicy)
|
||||
Dialog.setMinimumSize(QSize(388, 103))
|
||||
Dialog.setMaximumSize(QSize(388, 103))
|
||||
self.buttonBox = QDialogButtonBox(Dialog)
|
||||
self.buttonBox.setObjectName(u"buttonBox")
|
||||
self.buttonBox.setGeometry(QRect(290, 30, 81, 241))
|
||||
self.buttonBox.setOrientation(Qt.Vertical)
|
||||
self.buttonBox.setStandardButtons(QDialogButtonBox.Abort|QDialogButtonBox.Save)
|
||||
self.label = QLabel(Dialog)
|
||||
self.label.setObjectName(u"label")
|
||||
self.label.setGeometry(QRect(10, 0, 281, 31))
|
||||
font = QFont()
|
||||
font.setPointSize(10)
|
||||
self.label.setFont(font)
|
||||
self.frame = QFrame(Dialog)
|
||||
self.frame.setObjectName(u"frame")
|
||||
self.frame.setGeometry(QRect(10, 30, 241, 41))
|
||||
self.frame.setFrameShape(QFrame.StyledPanel)
|
||||
self.frame.setFrameShadow(QFrame.Raised)
|
||||
self.line = QFrame(self.frame)
|
||||
self.line.setObjectName(u"line")
|
||||
self.line.setGeometry(QRect(120, 0, 3, 61))
|
||||
self.line.setFrameShape(QFrame.VLine)
|
||||
self.line.setFrameShadow(QFrame.Sunken)
|
||||
self.rad_sommer = QRadioButton(self.frame)
|
||||
self.rad_sommer.setObjectName(u"rad_sommer")
|
||||
self.rad_sommer.setGeometry(QRect(10, 10, 82, 21))
|
||||
self.rad_winter = QRadioButton(self.frame)
|
||||
self.rad_winter.setObjectName(u"rad_winter")
|
||||
self.rad_winter.setGeometry(QRect(140, 10, 82, 21))
|
||||
self.sem_year = QLineEdit(Dialog)
|
||||
self.sem_year.setObjectName(u"sem_year")
|
||||
self.sem_year.setGeometry(QRect(10, 70, 121, 20))
|
||||
self.checkBox = QCheckBox(Dialog)
|
||||
self.checkBox.setObjectName(u"checkBox")
|
||||
self.checkBox.setGeometry(QRect(150, 70, 91, 21))
|
||||
|
||||
self.retranslateUi(Dialog)
|
||||
self.buttonBox.accepted.connect(Dialog.accept)
|
||||
self.buttonBox.rejected.connect(Dialog.reject)
|
||||
|
||||
QMetaObject.connectSlotsByName(Dialog)
|
||||
# setupUi
|
||||
|
||||
def retranslateUi(self, Dialog):
|
||||
Dialog.setWindowTitle(QCoreApplication.translate("Dialog", u"Dialog", None))
|
||||
self.label.setText(QCoreApplication.translate("Dialog", u"Bis wann soll der Apparat verl\u00e4ngert werden?", None))
|
||||
self.rad_sommer.setText(QCoreApplication.translate("Dialog", u"Sommer", None))
|
||||
self.rad_winter.setText(QCoreApplication.translate("Dialog", u"Winter", None))
|
||||
self.sem_year.setPlaceholderText(QCoreApplication.translate("Dialog", u"2023", None))
|
||||
self.checkBox.setText(QCoreApplication.translate("Dialog", u"Dauerapparat", None))
|
||||
# retranslateUi
|
||||
|
||||
78
src/ui/dialogs/confirm_extend.ui
Normal file
78
src/ui/dialogs/confirm_extend.ui
Normal file
@@ -0,0 +1,78 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>extend_confirm</class>
|
||||
<widget class="QDialog" name="extend_confirm">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>380</width>
|
||||
<height>97</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Dialog</string>
|
||||
</property>
|
||||
<widget class="QDialogButtonBox" name="buttonBox">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>290</x>
|
||||
<y>20</y>
|
||||
<width>81</width>
|
||||
<height>241</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="standardButtons">
|
||||
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QTextEdit" name="textEdit">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>10</y>
|
||||
<width>271</width>
|
||||
<height>81</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>accepted()</signal>
|
||||
<receiver>extend_confirm</receiver>
|
||||
<slot>accept()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>248</x>
|
||||
<y>254</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>157</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>rejected()</signal>
|
||||
<receiver>extend_confirm</receiver>
|
||||
<slot>reject()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>316</x>
|
||||
<y>260</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>286</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
</connections>
|
||||
</ui>
|
||||
45
src/ui/dialogs/confirm_extend_ui.py
Normal file
45
src/ui/dialogs/confirm_extend_ui.py
Normal file
@@ -0,0 +1,45 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
################################################################################
|
||||
## Form generated from reading UI file 'confirm_extend.ui'
|
||||
##
|
||||
## Created by: Qt User Interface Compiler version 6.4.0
|
||||
##
|
||||
## WARNING! All changes made in this file will be lost when recompiling UI file!
|
||||
################################################################################
|
||||
|
||||
from PySide6.QtCore import (QCoreApplication, QDate, QDateTime, QLocale,
|
||||
QMetaObject, QObject, QPoint, QRect,
|
||||
QSize, QTime, QUrl, Qt)
|
||||
from PySide6.QtGui import (QBrush, QColor, QConicalGradient, QCursor,
|
||||
QFont, QFontDatabase, QGradient, QIcon,
|
||||
QImage, QKeySequence, QLinearGradient, QPainter,
|
||||
QPalette, QPixmap, QRadialGradient, QTransform)
|
||||
from PySide6.QtWidgets import (QAbstractButton, QApplication, QDialog, QDialogButtonBox,
|
||||
QSizePolicy, QTextEdit, QWidget)
|
||||
|
||||
class Ui_extend_confirm(object):
|
||||
def setupUi(self, extend_confirm):
|
||||
if not extend_confirm.objectName():
|
||||
extend_confirm.setObjectName(u"extend_confirm")
|
||||
extend_confirm.resize(380, 97)
|
||||
self.buttonBox = QDialogButtonBox(extend_confirm)
|
||||
self.buttonBox.setObjectName(u"buttonBox")
|
||||
self.buttonBox.setGeometry(QRect(290, 20, 81, 241))
|
||||
self.buttonBox.setOrientation(Qt.Vertical)
|
||||
self.buttonBox.setStandardButtons(QDialogButtonBox.Cancel|QDialogButtonBox.Ok)
|
||||
self.textEdit = QTextEdit(extend_confirm)
|
||||
self.textEdit.setObjectName(u"textEdit")
|
||||
self.textEdit.setGeometry(QRect(10, 10, 271, 81))
|
||||
|
||||
self.retranslateUi(extend_confirm)
|
||||
self.buttonBox.accepted.connect(extend_confirm.accept)
|
||||
self.buttonBox.rejected.connect(extend_confirm.reject)
|
||||
|
||||
QMetaObject.connectSlotsByName(extend_confirm)
|
||||
# setupUi
|
||||
|
||||
def retranslateUi(self, extend_confirm):
|
||||
extend_confirm.setWindowTitle(QCoreApplication.translate("extend_confirm", u"Dialog", None))
|
||||
# retranslateUi
|
||||
|
||||
216
src/ui/dialogs/edit_bookdata.ui
Normal file
216
src/ui/dialogs/edit_bookdata.ui
Normal file
@@ -0,0 +1,216 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Dialog</class>
|
||||
<widget class="QDialog" name="Dialog">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>448</width>
|
||||
<height>572</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Dialog</string>
|
||||
</property>
|
||||
<widget class="QDialogButtonBox" name="buttonBox">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>260</x>
|
||||
<y>530</y>
|
||||
<width>161</width>
|
||||
<height>32</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="standardButtons">
|
||||
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QWidget" name="gridLayoutWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>441</width>
|
||||
<height>531</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<property name="sizeConstraint">
|
||||
<enum>QLayout::SetDefaultConstraint</enum>
|
||||
</property>
|
||||
<item row="10" column="1">
|
||||
<widget class="QLabel" name="label_10">
|
||||
<property name="text">
|
||||
<string>Seiten</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Titel</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="9" column="1">
|
||||
<widget class="QLabel" name="label_9">
|
||||
<property name="text">
|
||||
<string>Jahr</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="8" column="1">
|
||||
<widget class="QLabel" name="label_8">
|
||||
<property name="text">
|
||||
<string>Sprache</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="1">
|
||||
<widget class="QLabel" name="label_12">
|
||||
<property name="text">
|
||||
<string>Link</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="2">
|
||||
<widget class="QLineEdit" name="line_edition"/>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Auflage</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="1">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>Autor</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="2">
|
||||
<widget class="QLineEdit" name="line_link">
|
||||
<property name="cursor">
|
||||
<cursorShape>ArrowCursor</cursorShape>
|
||||
</property>
|
||||
<property name="readOnly">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string>Herausgeber</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="1">
|
||||
<widget class="QLabel" name="label_7">
|
||||
<property name="text">
|
||||
<string>ISBN(s)</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="1">
|
||||
<widget class="QLabel" name="label_6">
|
||||
<property name="text">
|
||||
<string>PPN</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Signatur</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="8" column="0">
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>5</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<widget class="QLineEdit" name="line_title"/>
|
||||
</item>
|
||||
<item row="1" column="2">
|
||||
<widget class="QLineEdit" name="line_signature"/>
|
||||
</item>
|
||||
<item row="3" column="2">
|
||||
<widget class="QLineEdit" name="line_author"/>
|
||||
</item>
|
||||
<item row="8" column="2">
|
||||
<widget class="QLineEdit" name="line_lang"/>
|
||||
</item>
|
||||
<item row="5" column="2">
|
||||
<widget class="QLineEdit" name="line_ppn"/>
|
||||
</item>
|
||||
<item row="7" column="2">
|
||||
<widget class="QLineEdit" name="line_isbn"/>
|
||||
</item>
|
||||
<item row="9" column="2">
|
||||
<widget class="QLineEdit" name="line_year"/>
|
||||
</item>
|
||||
<item row="10" column="2">
|
||||
<widget class="QLineEdit" name="line_pages"/>
|
||||
</item>
|
||||
<item row="4" column="2">
|
||||
<widget class="QLineEdit" name="line_publisher"/>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>accepted()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>accept()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>248</x>
|
||||
<y>254</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>157</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>rejected()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>reject()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>316</x>
|
||||
<y>260</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>286</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
</connections>
|
||||
</ui>
|
||||
51
src/ui/dialogs/ext_app.py
Normal file
51
src/ui/dialogs/ext_app.py
Normal file
@@ -0,0 +1,51 @@
|
||||
# Form implementation generated from reading ui file 'ui/dialogs/extend_apparat.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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_Frame(object):
|
||||
def setupUi(self, Frame):
|
||||
Frame.setObjectName("Frame")
|
||||
Frame.resize(317, 126)
|
||||
self.label = QtWidgets.QLabel(Frame)
|
||||
self.label.setGeometry(QtCore.QRect(60, 20, 231, 16))
|
||||
self.label.setObjectName("label")
|
||||
self.buttonBox = QtWidgets.QDialogButtonBox(Frame)
|
||||
self.buttonBox.setGeometry(QtCore.QRect(90, 90, 156, 23))
|
||||
self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.StandardButton.Cancel|QtWidgets.QDialogButtonBox.StandardButton.Ok)
|
||||
self.buttonBox.setObjectName("buttonBox")
|
||||
self.sem_winter = QtWidgets.QRadioButton(Frame)
|
||||
self.sem_winter.setGeometry(QtCore.QRect(60, 40, 82, 17))
|
||||
self.sem_winter.setObjectName("sem_winter")
|
||||
self.sem_sommer = QtWidgets.QRadioButton(Frame)
|
||||
self.sem_sommer.setGeometry(QtCore.QRect(60, 60, 82, 17))
|
||||
self.sem_sommer.setObjectName("sem_sommer")
|
||||
self.sem_year = QtWidgets.QLineEdit(Frame)
|
||||
self.sem_year.setGeometry(QtCore.QRect(160, 50, 113, 20))
|
||||
self.sem_year.setObjectName("sem_year")
|
||||
|
||||
self.retranslateUi(Frame)
|
||||
QtCore.QMetaObject.connectSlotsByName(Frame)
|
||||
|
||||
def retranslateUi(self, Frame):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Frame.setWindowTitle(_translate("Frame", "Frame"))
|
||||
self.label.setText(_translate("Frame", "Bis wann soll der Apparat verlängert werden?"))
|
||||
self.sem_winter.setText(_translate("Frame", "Winter"))
|
||||
self.sem_sommer.setText(_translate("Frame", "Sommer"))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
Frame = QtWidgets.QFrame()
|
||||
ui = Ui_Frame()
|
||||
ui.setupUi(Frame)
|
||||
Frame.show()
|
||||
sys.exit(app.exec())
|
||||
81
src/ui/dialogs/extend_apparat.ui
Normal file
81
src/ui/dialogs/extend_apparat.ui
Normal file
@@ -0,0 +1,81 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Frame</class>
|
||||
<widget class="QFrame" name="Frame">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>317</width>
|
||||
<height>126</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Frame</string>
|
||||
</property>
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>60</x>
|
||||
<y>20</y>
|
||||
<width>231</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Bis wann soll der Apparat verlängert werden?</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QDialogButtonBox" name="buttonBox">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>90</x>
|
||||
<y>90</y>
|
||||
<width>156</width>
|
||||
<height>23</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="standardButtons">
|
||||
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QRadioButton" name="sem_winter">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>60</x>
|
||||
<y>40</y>
|
||||
<width>82</width>
|
||||
<height>17</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Winter</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QRadioButton" name="sem_sommer">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>60</x>
|
||||
<y>60</y>
|
||||
<width>82</width>
|
||||
<height>17</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Sommer</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLineEdit" name="sem_year">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>160</x>
|
||||
<y>50</y>
|
||||
<width>113</width>
|
||||
<height>20</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
129
src/ui/dialogs/fileparser.ui
Normal file
129
src/ui/dialogs/fileparser.ui
Normal file
@@ -0,0 +1,129 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Dialog</class>
|
||||
<widget class="QDialog" name="Dialog">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>402</width>
|
||||
<height>301</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Dialog</string>
|
||||
</property>
|
||||
<widget class="QProgressBar" name="progressBar">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>60</y>
|
||||
<width>381</width>
|
||||
<height>23</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>24</number>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QFrame" name="frame">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>10</y>
|
||||
<width>381</width>
|
||||
<height>41</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::StyledPanel</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<widget class="QWidget" name="horizontalLayoutWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>381</width>
|
||||
<height>41</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Es wurden</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="count">
|
||||
<property name="font">
|
||||
<font>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>0</string>
|
||||
</property>
|
||||
<property name="textFormat">
|
||||
<enum>Qt::PlainText</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Signaturen gefunden.</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QFrame" name="frame_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>100</y>
|
||||
<width>381</width>
|
||||
<height>201</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::StyledPanel</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<widget class="QListWidget" name="listWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>381</width>
|
||||
<height>191</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
120
src/ui/dialogs/login.ui
Normal file
120
src/ui/dialogs/login.ui
Normal file
@@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Dialog</class>
|
||||
<widget class="QDialog" name="Dialog">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>218</width>
|
||||
<height>190</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Dialog</string>
|
||||
</property>
|
||||
<widget class="QDialogButtonBox" name="buttonBox">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>30</x>
|
||||
<y>140</y>
|
||||
<width>161</width>
|
||||
<height>32</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="standardButtons">
|
||||
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>20</x>
|
||||
<y>40</y>
|
||||
<width>71</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Username</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLineEdit" name="lineEdit">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>80</x>
|
||||
<y>40</y>
|
||||
<width>113</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>20</x>
|
||||
<y>80</y>
|
||||
<width>71</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Password</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLineEdit" name="lineEdit_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>80</x>
|
||||
<y>80</y>
|
||||
<width>113</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="inputMethodHints">
|
||||
<set>Qt::ImhSensitiveData</set>
|
||||
</property>
|
||||
<property name="clearButtonEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>accepted()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>accept()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>248</x>
|
||||
<y>254</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>157</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>rejected()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>reject()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>316</x>
|
||||
<y>260</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>286</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
</connections>
|
||||
</ui>
|
||||
69
src/ui/dialogs/mail.py
Normal file
69
src/ui/dialogs/mail.py
Normal file
@@ -0,0 +1,69 @@
|
||||
import subprocess
|
||||
import tempfile
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
from src.ui.dialogs.mail_preview import Ui_Dialog
|
||||
|
||||
|
||||
class Mail_Dialog(QtWidgets.QDialog, Ui_Dialog):
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
self.setupUi(self)
|
||||
self.appid = ""
|
||||
self.mail_data = ""
|
||||
self.data = None
|
||||
self.buttonBox.accepted.connect(self.save_mail)
|
||||
|
||||
def set_data(self, data: dict):
|
||||
self.prof_name.setText(data["prof_name"])
|
||||
self.mail_name.setText(data["mail_name"])
|
||||
# assign data["general"] to self.data
|
||||
self.data = data["general"]
|
||||
|
||||
def set_mail(self):
|
||||
email_template = self.comboBox.currentText()
|
||||
with open(f"mail_vorlagen/{email_template}", "r", encoding="utf-8") as f:
|
||||
mail_template = f.read()
|
||||
email_header = email_template.split(".eml")[0]
|
||||
if "{AppNr}" in email_template:
|
||||
email_header = email_template.split(".eml")[0].format(AppNr=self.appid)
|
||||
self.mail_header.setText(email_header)
|
||||
self.mail_data = mail_template.split("<html>")[0]
|
||||
mail_html = mail_template.split("<html>")[1]
|
||||
mail_html = "<html>" + mail_html
|
||||
print(self.data)
|
||||
Appname = self.data["Appname"]
|
||||
mail_html = mail_html.format(
|
||||
Profname=self.prof_name.text().split(" ")[-1], Appname=Appname
|
||||
)
|
||||
|
||||
self.mail_body.setHtml(mail_html)
|
||||
|
||||
def save_mail(self):
|
||||
# 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}")
|
||||
with tempfile.NamedTemporaryFile(
|
||||
mode="w", delete=False, suffix=".eml", encoding="utf-8", dir="mails"
|
||||
) as f:
|
||||
f.write(mail)
|
||||
self.mail_path = f.name
|
||||
print(self.mail_path)
|
||||
# open the file using thunderbird
|
||||
subprocess.Popen(["thunderbird", f"{self.mail_path}"])
|
||||
# delete the file
|
||||
# os.remove(self.mail_path)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
Dialog = QtWidgets.QDialog()
|
||||
ui = Mail_Dialog()
|
||||
ui.setupUi(Dialog)
|
||||
Dialog.show()
|
||||
sys.exit(app.exec())
|
||||
81
src/ui/dialogs/mail_preview.py
Normal file
81
src/ui/dialogs/mail_preview.py
Normal file
@@ -0,0 +1,81 @@
|
||||
# Form implementation generated from reading ui file 'ui\dialogs\mail_preview.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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(676, 676)
|
||||
self.buttonBox = QtWidgets.QDialogButtonBox(Dialog)
|
||||
self.buttonBox.setGeometry(QtCore.QRect(310, 630, 341, 32))
|
||||
self.buttonBox.setOrientation(QtCore.Qt.Orientation.Horizontal)
|
||||
self.buttonBox.setStandardButtons(
|
||||
QtWidgets.QDialogButtonBox.StandardButton.Cancel
|
||||
| QtWidgets.QDialogButtonBox.StandardButton.Ok
|
||||
)
|
||||
self.buttonBox.setObjectName("buttonBox")
|
||||
self.gridLayoutWidget = QtWidgets.QWidget(Dialog)
|
||||
self.gridLayoutWidget.setGeometry(QtCore.QRect(10, 10, 661, 621))
|
||||
self.gridLayoutWidget.setObjectName("gridLayoutWidget")
|
||||
self.gridLayout = QtWidgets.QGridLayout(self.gridLayoutWidget)
|
||||
self.gridLayout.setContentsMargins(0, 0, 0, 0)
|
||||
self.gridLayout.setObjectName("gridLayout")
|
||||
self.prof_name = QtWidgets.QLineEdit(self.gridLayoutWidget)
|
||||
self.prof_name.setObjectName("prof_name")
|
||||
self.gridLayout.addWidget(self.prof_name, 2, 2, 1, 1)
|
||||
self.label_3 = QtWidgets.QLabel(self.gridLayoutWidget)
|
||||
self.label_3.setAlignment(
|
||||
QtCore.Qt.AlignmentFlag.AlignLeading
|
||||
| QtCore.Qt.AlignmentFlag.AlignLeft
|
||||
| QtCore.Qt.AlignmentFlag.AlignTop
|
||||
)
|
||||
self.label_3.setObjectName("label_3")
|
||||
self.gridLayout.addWidget(self.label_3, 4, 0, 1, 1)
|
||||
self.label_2 = QtWidgets.QLabel(self.gridLayoutWidget)
|
||||
self.label_2.setObjectName("label_2")
|
||||
self.gridLayout.addWidget(self.label_2, 2, 0, 1, 1)
|
||||
self.label_4 = QtWidgets.QLabel(self.gridLayoutWidget)
|
||||
self.label_4.setObjectName("label_4")
|
||||
self.gridLayout.addWidget(self.label_4, 3, 0, 1, 1)
|
||||
self.mail_header = QtWidgets.QLineEdit(self.gridLayoutWidget)
|
||||
self.mail_header.setObjectName("mail_header")
|
||||
self.gridLayout.addWidget(self.mail_header, 3, 2, 1, 1)
|
||||
self.mail_name = QtWidgets.QLineEdit(self.gridLayoutWidget)
|
||||
self.mail_name.setObjectName("mail_name")
|
||||
self.gridLayout.addWidget(self.mail_name, 1, 2, 1, 1)
|
||||
self.mail_body = QtWidgets.QTextEdit(self.gridLayoutWidget)
|
||||
self.mail_body.setObjectName("mail_body")
|
||||
self.gridLayout.addWidget(self.mail_body, 4, 2, 1, 1)
|
||||
self.label = QtWidgets.QLabel(self.gridLayoutWidget)
|
||||
self.label.setObjectName("label")
|
||||
self.gridLayout.addWidget(self.label, 1, 0, 1, 1)
|
||||
self.comboBox = QtWidgets.QComboBox(self.gridLayoutWidget)
|
||||
self.comboBox.setObjectName("comboBox")
|
||||
self.gridLayout.addWidget(self.comboBox, 0, 2, 1, 1)
|
||||
self.label_5 = QtWidgets.QLabel(self.gridLayoutWidget)
|
||||
self.label_5.setObjectName("label_5")
|
||||
self.gridLayout.addWidget(self.label_5, 0, 0, 1, 1)
|
||||
# at selection change, load mail text
|
||||
|
||||
self.comboBox.currentIndexChanged.connect(self.set_mail)
|
||||
self.retranslateUi(Dialog)
|
||||
self.buttonBox.accepted.connect(Dialog.accept) # type: ignore
|
||||
self.buttonBox.rejected.connect(Dialog.reject) # type: ignore
|
||||
# if the dialog is accepted, save the mail and send it
|
||||
QtCore.QMetaObject.connectSlotsByName(Dialog)
|
||||
|
||||
def retranslateUi(self, Dialog):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
|
||||
self.label_3.setText(_translate("Dialog", "Mail"))
|
||||
self.label_2.setText(_translate("Dialog", "Prof"))
|
||||
self.label_4.setText(_translate("Dialog", "Betreff"))
|
||||
self.label.setText(_translate("Dialog", "eMail"))
|
||||
self.label_5.setText(_translate("Dialog", "Art"))
|
||||
133
src/ui/dialogs/mail_preview.ui
Normal file
133
src/ui/dialogs/mail_preview.ui
Normal file
@@ -0,0 +1,133 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Dialog</class>
|
||||
<widget class="QDialog" name="Dialog">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>676</width>
|
||||
<height>676</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Dialog</string>
|
||||
</property>
|
||||
<widget class="QDialogButtonBox" name="buttonBox">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>310</x>
|
||||
<y>630</y>
|
||||
<width>341</width>
|
||||
<height>32</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="standardButtons">
|
||||
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QWidget" name="gridLayoutWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>10</y>
|
||||
<width>661</width>
|
||||
<height>621</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<item row="2" column="2">
|
||||
<widget class="QLineEdit" name="prof_name"/>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Mail</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Prof</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>Betreff</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="2">
|
||||
<widget class="QLineEdit" name="mail_header"/>
|
||||
</item>
|
||||
<item row="1" column="2">
|
||||
<widget class="QLineEdit" name="mail_name"/>
|
||||
</item>
|
||||
<item row="4" column="2">
|
||||
<widget class="QTextEdit" name="mail_body"/>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>eMail</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<widget class="QComboBox" name="comboBox"/>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string>Art</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>accepted()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>accept()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>248</x>
|
||||
<y>254</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>157</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>rejected()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>reject()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>316</x>
|
||||
<y>260</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>286</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
</connections>
|
||||
</ui>
|
||||
557
src/ui/dialogs/medianadder.ui
Normal file
557
src/ui/dialogs/medianadder.ui
Normal file
@@ -0,0 +1,557 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Dialog</class>
|
||||
<widget class="QDialog" name="Dialog">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>637</width>
|
||||
<height>491</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Dialog</string>
|
||||
</property>
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>20</x>
|
||||
<y>10</y>
|
||||
<width>47</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Signatur</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>20</x>
|
||||
<y>40</y>
|
||||
<width>47</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Modus</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QComboBox" name="comboBox">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>70</x>
|
||||
<y>40</y>
|
||||
<width>69</width>
|
||||
<height>22</height>
|
||||
</rect>
|
||||
</property>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>ARRAY</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>BibTeX</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>COinS</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>RIS</string>
|
||||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
<widget class="QLineEdit" name="lineEdit">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>70</x>
|
||||
<y>10</y>
|
||||
<width>113</width>
|
||||
<height>20</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="placeholderText">
|
||||
<string>Signatur / ISBN</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>20</x>
|
||||
<y>70</y>
|
||||
<width>47</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Queue</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QWidget" name="widget" native="true">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>330</x>
|
||||
<y>90</y>
|
||||
<width>301</width>
|
||||
<height>341</height>
|
||||
</rect>
|
||||
</property>
|
||||
<widget class="QTreeWidget" name="treeWidget">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>301</width>
|
||||
<height>341</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="focusPolicy">
|
||||
<enum>Qt::NoFocus</enum>
|
||||
</property>
|
||||
<property name="autoFillBackground">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="lineWidth">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="midLineWidth">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="verticalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="horizontalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="sizeAdjustPolicy">
|
||||
<enum>QAbstractScrollArea::AdjustToContents</enum>
|
||||
</property>
|
||||
<property name="editTriggers">
|
||||
<set>QAbstractItemView::NoEditTriggers</set>
|
||||
</property>
|
||||
<property name="alternatingRowColors">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="selectionMode">
|
||||
<enum>QAbstractItemView::NoSelection</enum>
|
||||
</property>
|
||||
<property name="textElideMode">
|
||||
<enum>Qt::ElideMiddle</enum>
|
||||
</property>
|
||||
<property name="uniformRowHeights">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="itemsExpandable">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="expandsOnDoubleClick">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<attribute name="headerCascadingSectionResizes">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<attribute name="headerDefaultSectionSize">
|
||||
<number>96</number>
|
||||
</attribute>
|
||||
<attribute name="headerHighlightSections">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<attribute name="headerMinimumSectionSize">
|
||||
<number>20</number>
|
||||
</attribute>
|
||||
<attribute name="headerStretchLastSection">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Datensatz\Metadata</string>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>7</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Array</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>BibTeX</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>COinS</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>RIS</string>
|
||||
</property>
|
||||
</column>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>PPN</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>0</string>
|
||||
</property>
|
||||
<property name="background">
|
||||
<brush brushstyle="SolidPattern">
|
||||
<color alpha="255">
|
||||
<red>255</red>
|
||||
<green>0</green>
|
||||
<blue>0</blue>
|
||||
</color>
|
||||
</brush>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Signatur</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="background">
|
||||
<brush brushstyle="SolidPattern">
|
||||
<color alpha="255">
|
||||
<red>0</red>
|
||||
<green>255</green>
|
||||
<blue>0</blue>
|
||||
</color>
|
||||
</brush>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>0</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Autor</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>ISBN</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Jahr</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Auflage</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Sprache</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>0</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Herausgeber</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Seiten</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Titel</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Link</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>0</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QListWidget" name="listWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>90</y>
|
||||
<width>281</width>
|
||||
<height>341</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="contextMenuPolicy">
|
||||
<enum>Qt::CustomContextMenu</enum>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>330</x>
|
||||
<y>50</y>
|
||||
<width>181</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Belegbare Felder per Anbieter</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>200</x>
|
||||
<y>70</y>
|
||||
<width>41</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Anzahl:</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="list_amount">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>240</x>
|
||||
<y>70</y>
|
||||
<width>47</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>0</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QDialogButtonBox" name="buttonBox">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>450</y>
|
||||
<width>156</width>
|
||||
<height>23</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="focusPolicy">
|
||||
<enum>Qt::NoFocus</enum>
|
||||
</property>
|
||||
<property name="standardButtons">
|
||||
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
|
||||
</property>
|
||||
<property name="centerButtons">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="l_add">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>190</x>
|
||||
<y>10</y>
|
||||
<width>21</width>
|
||||
<height>23</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="focusPolicy">
|
||||
<enum>Qt::ClickFocus</enum>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Clicken oder Shift Enter drücken um den Eintrag hinzuzufügen</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset resource="../resources.qrc">
|
||||
<normaloff>:/information/icons/information.png</normaloff>:/information/icons/information.png</iconset>
|
||||
</property>
|
||||
<property name="shortcut">
|
||||
<string>Shift+Return</string>
|
||||
</property>
|
||||
<property name="autoDefault">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<tabstops>
|
||||
<tabstop>lineEdit</tabstop>
|
||||
<tabstop>comboBox</tabstop>
|
||||
<tabstop>listWidget</tabstop>
|
||||
<tabstop>treeWidget</tabstop>
|
||||
</tabstops>
|
||||
<resources>
|
||||
<include location="../resources.qrc"/>
|
||||
</resources>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>accepted()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>accept()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>87</x>
|
||||
<y>461</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>318</x>
|
||||
<y>245</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>rejected()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>reject()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>87</x>
|
||||
<y>461</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>318</x>
|
||||
<y>245</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
</connections>
|
||||
</ui>
|
||||
47
src/ui/dialogs/medianadder_ui.ts
Normal file
47
src/ui/dialogs/medianadder_ui.ts
Normal file
@@ -0,0 +1,47 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE TS>
|
||||
<TS version="2.1">
|
||||
<context>
|
||||
<name>Dialog</name>
|
||||
<message>
|
||||
<location filename="medianadder_ui.py" line="60"/>
|
||||
<source>Dialog</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="medianadder_ui.py" line="61"/>
|
||||
<source>Signatur</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="medianadder_ui.py" line="62"/>
|
||||
<source>Modus</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="medianadder_ui.py" line="63"/>
|
||||
<source>ARRAY</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="medianadder_ui.py" line="64"/>
|
||||
<source>BibTeX</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="medianadder_ui.py" line="65"/>
|
||||
<source>COinS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="medianadder_ui.py" line="66"/>
|
||||
<source>RIS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="medianadder_ui.py" line="68"/>
|
||||
<source>Queue</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
82
src/ui/dialogs/medienadder.py
Normal file
82
src/ui/dialogs/medienadder.py
Normal file
@@ -0,0 +1,82 @@
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
from .Ui_medianadder import Ui_Dialog
|
||||
|
||||
|
||||
class MedienAdder(QtWidgets.QDialog):
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
self.ui = Ui_Dialog()
|
||||
self.ui.setupUi(self)
|
||||
|
||||
# Connect signals and slots for your custom functionality
|
||||
self.ui.buttonBox.accepted.connect(self.accept)
|
||||
self.ui.buttonBox.rejected.connect(self.reject)
|
||||
self.ui.l_add.clicked.connect(self.add_to_list)
|
||||
self.ui.l_add.setShortcut("Shift+Return")
|
||||
# Initialize data variables to store the results
|
||||
self.result_data = []
|
||||
|
||||
self.recolorize()
|
||||
|
||||
def add_to_list(self):
|
||||
text = self.ui.lineEdit.text().strip()
|
||||
if text == "":
|
||||
return
|
||||
else:
|
||||
self.ui.listWidget.addItem(text)
|
||||
self.ui.list_amount.setText(str(self.ui.listWidget.count()))
|
||||
self.ui.lineEdit.clear()
|
||||
|
||||
def recolorize(self):
|
||||
# set the color of the cells of the treeWidget to red if the field is not supported by the provider
|
||||
# else set it to green
|
||||
for i in range(self.ui.treeWidget.topLevelItemCount()):
|
||||
for j in range(1, self.ui.treeWidget.columnCount()):
|
||||
if self.ui.treeWidget.topLevelItem(i).text(j) == "0":
|
||||
self.ui.treeWidget.topLevelItem(i).setBackground(
|
||||
j, QtGui.QColor(255, 0, 0)
|
||||
)
|
||||
else:
|
||||
self.ui.treeWidget.topLevelItem(i).setBackground(
|
||||
j, QtGui.QColor(0, 255, 0)
|
||||
)
|
||||
# remove the text from the cells
|
||||
self.ui.treeWidget.topLevelItem(i).setText(j, "")
|
||||
|
||||
def custom_context_menu(self):
|
||||
menu = QtWidgets.QMenu()
|
||||
menu.addAction("Remove")
|
||||
|
||||
action = menu.exec(QtGui.QCursor.pos())
|
||||
if action.text() == "Remove":
|
||||
self.remove_from_list()
|
||||
|
||||
def remove_from_list(self):
|
||||
self.ui.listWidget.takeItem(self.ui.listWidget.currentRow())
|
||||
self.ui.list_amount.setText(str(self.ui.listWidget.count()))
|
||||
|
||||
def add_to_list(self):
|
||||
text = self.ui.lineEdit.text().strip()
|
||||
if text:
|
||||
self.ui.listWidget.addItem(text)
|
||||
self.ui.list_amount.setText(str(self.ui.listWidget.count()))
|
||||
self.ui.lineEdit.clear()
|
||||
|
||||
def accept(self):
|
||||
# Gather and store the data you want to return
|
||||
self.result_data = [
|
||||
self.ui.listWidget.item(i).text() for i in range(self.ui.listWidget.count())
|
||||
]
|
||||
super().accept()
|
||||
|
||||
def keyPressEvent(self, event):
|
||||
if (
|
||||
event.key() == QtCore.Qt.Key.Key_Return
|
||||
or event.key() == QtCore.Qt.Key.Key_Enter
|
||||
):
|
||||
# Handle the Return key press as needed (e.g., add to list)
|
||||
self.add_to_list()
|
||||
event.accept()
|
||||
else:
|
||||
super().keyPressEvent(event)
|
||||
132
src/ui/dialogs/new_subject.ui
Normal file
132
src/ui/dialogs/new_subject.ui
Normal file
@@ -0,0 +1,132 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Dialog</class>
|
||||
<widget class="QDialog" name="Dialog">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>448</width>
|
||||
<height>165</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Dialog</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Das eingegebene Fach wurde nicht in der Datenbank gefunden. Soll es angelegt werden?</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<item row="0" column="1">
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="QCheckBox" name="checkBox">
|
||||
<property name="text">
|
||||
<string>Ja</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QFrame" name="frame">
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::StyledPanel</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>10</y>
|
||||
<width>141</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Name des Neuen Faches:</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLineEdit" name="lineEdit">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>30</y>
|
||||
<width>141</width>
|
||||
<height>20</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QDialogButtonBox" name="buttonBox">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="standardButtons">
|
||||
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>accepted()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>accept()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>248</x>
|
||||
<y>254</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>157</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>rejected()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>reject()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>316</x>
|
||||
<y>260</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>286</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
</connections>
|
||||
</ui>
|
||||
59
src/ui/dialogs/new_subject_ui.py
Normal file
59
src/ui/dialogs/new_subject_ui.py
Normal file
@@ -0,0 +1,59 @@
|
||||
# Form implementation generated from reading ui file '/home/alexander/GitHub/Semesterapparate/ui/dialogs/new_subject.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_Dialog(object):
|
||||
def setupUi(self, Dialog):
|
||||
Dialog.setObjectName("Dialog")
|
||||
Dialog.resize(448, 165)
|
||||
self.verticalLayout_2 = QtWidgets.QVBoxLayout(Dialog)
|
||||
self.verticalLayout_2.setObjectName("verticalLayout_2")
|
||||
self.verticalLayout = QtWidgets.QVBoxLayout()
|
||||
self.verticalLayout.setObjectName("verticalLayout")
|
||||
self.label = QtWidgets.QLabel(parent=Dialog)
|
||||
self.label.setObjectName("label")
|
||||
self.verticalLayout.addWidget(self.label)
|
||||
self.gridLayout = QtWidgets.QGridLayout()
|
||||
self.gridLayout.setObjectName("gridLayout")
|
||||
spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
|
||||
self.gridLayout.addItem(spacerItem, 0, 1, 1, 1)
|
||||
self.checkBox = QtWidgets.QCheckBox(parent=Dialog)
|
||||
self.checkBox.setObjectName("checkBox")
|
||||
self.gridLayout.addWidget(self.checkBox, 0, 0, 1, 1)
|
||||
self.verticalLayout.addLayout(self.gridLayout)
|
||||
self.verticalLayout_2.addLayout(self.verticalLayout)
|
||||
self.frame = QtWidgets.QFrame(parent=Dialog)
|
||||
self.frame.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
|
||||
self.frame.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
|
||||
self.frame.setObjectName("frame")
|
||||
self.label_2 = QtWidgets.QLabel(parent=self.frame)
|
||||
self.label_2.setGeometry(QtCore.QRect(0, 10, 141, 16))
|
||||
self.label_2.setObjectName("label_2")
|
||||
self.lineEdit = QtWidgets.QLineEdit(parent=self.frame)
|
||||
self.lineEdit.setGeometry(QtCore.QRect(0, 30, 141, 20))
|
||||
self.lineEdit.setObjectName("lineEdit")
|
||||
self.verticalLayout_2.addWidget(self.frame)
|
||||
self.buttonBox = QtWidgets.QDialogButtonBox(parent=Dialog)
|
||||
self.buttonBox.setOrientation(QtCore.Qt.Orientation.Horizontal)
|
||||
self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.StandardButton.Cancel|QtWidgets.QDialogButtonBox.StandardButton.Ok)
|
||||
self.buttonBox.setObjectName("buttonBox")
|
||||
self.verticalLayout_2.addWidget(self.buttonBox)
|
||||
|
||||
self.retranslateUi(Dialog)
|
||||
self.buttonBox.accepted.connect(Dialog.accept) # type: ignore
|
||||
self.buttonBox.rejected.connect(Dialog.reject) # type: ignore
|
||||
QtCore.QMetaObject.connectSlotsByName(Dialog)
|
||||
|
||||
def retranslateUi(self, Dialog):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
|
||||
self.label.setText(_translate("Dialog", "Das eingegebene Fach wurde nicht in der Datenbank gefunden. Soll es angelegt werden?"))
|
||||
self.checkBox.setText(_translate("Dialog", "Ja"))
|
||||
self.label_2.setText(_translate("Dialog", "Name des Neuen Faches:"))
|
||||
163
src/ui/dialogs/parsed_titles.ui
Normal file
163
src/ui/dialogs/parsed_titles.ui
Normal file
@@ -0,0 +1,163 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Form</class>
|
||||
<widget class="QWidget" name="Form">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>402</width>
|
||||
<height>316</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Form</string>
|
||||
</property>
|
||||
<widget class="QFrame" name="frame">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>10</y>
|
||||
<width>381</width>
|
||||
<height>41</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::StyledPanel</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<widget class="QWidget" name="horizontalLayoutWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>381</width>
|
||||
<height>41</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Es wurden</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="count">
|
||||
<property name="font">
|
||||
<font>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>0</string>
|
||||
</property>
|
||||
<property name="textFormat">
|
||||
<enum>Qt::PlainText</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Signaturen gefunden.</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QFrame" name="frame_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>80</y>
|
||||
<width>381</width>
|
||||
<height>201</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::StyledPanel</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<widget class="QWidget" name="horizontalLayoutWidget_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>10</y>
|
||||
<width>381</width>
|
||||
<height>191</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||
<item>
|
||||
<widget class="QListWidget" name="listWidget"/>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QListWidget" name="listWidget_done"/>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QProgressBar" name="progressBar">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>60</y>
|
||||
<width>381</width>
|
||||
<height>23</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>24</number>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QDialogButtonBox" name="buttonBox">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>230</x>
|
||||
<y>290</y>
|
||||
<width>156</width>
|
||||
<height>23</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="standardButtons">
|
||||
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QToolButton" name="toolButton">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>20</x>
|
||||
<y>290</y>
|
||||
<width>25</width>
|
||||
<height>19</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>...</string>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
81
src/ui/dialogs/parsed_titles_ui.py
Normal file
81
src/ui/dialogs/parsed_titles_ui.py
Normal file
@@ -0,0 +1,81 @@
|
||||
# Form implementation generated from reading ui file '/home/alexander/GitHub/Semesterapparate/ui/dialogs/parsed_titles.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_Form(object):
|
||||
def setupUi(self, Form):
|
||||
Form.setObjectName("Form")
|
||||
Form.resize(402, 316)
|
||||
self.frame = QtWidgets.QFrame(parent=Form)
|
||||
self.frame.setGeometry(QtCore.QRect(10, 10, 381, 41))
|
||||
self.frame.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
|
||||
self.frame.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
|
||||
self.frame.setObjectName("frame")
|
||||
self.horizontalLayoutWidget = QtWidgets.QWidget(parent=self.frame)
|
||||
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 381, 41))
|
||||
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
|
||||
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
|
||||
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
|
||||
self.horizontalLayout.setObjectName("horizontalLayout")
|
||||
self.label = QtWidgets.QLabel(parent=self.horizontalLayoutWidget)
|
||||
self.label.setObjectName("label")
|
||||
self.horizontalLayout.addWidget(self.label)
|
||||
self.count = QtWidgets.QLabel(parent=self.horizontalLayoutWidget)
|
||||
font = QtGui.QFont()
|
||||
font.setBold(True)
|
||||
font.setWeight(75)
|
||||
self.count.setFont(font)
|
||||
self.count.setTextFormat(QtCore.Qt.TextFormat.PlainText)
|
||||
self.count.setObjectName("count")
|
||||
self.horizontalLayout.addWidget(self.count)
|
||||
self.label_2 = QtWidgets.QLabel(parent=self.horizontalLayoutWidget)
|
||||
self.label_2.setObjectName("label_2")
|
||||
self.horizontalLayout.addWidget(self.label_2)
|
||||
spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
|
||||
self.horizontalLayout.addItem(spacerItem)
|
||||
self.frame_2 = QtWidgets.QFrame(parent=Form)
|
||||
self.frame_2.setGeometry(QtCore.QRect(10, 80, 381, 201))
|
||||
self.frame_2.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
|
||||
self.frame_2.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
|
||||
self.frame_2.setObjectName("frame_2")
|
||||
self.horizontalLayoutWidget_2 = QtWidgets.QWidget(parent=self.frame_2)
|
||||
self.horizontalLayoutWidget_2.setGeometry(QtCore.QRect(0, 10, 381, 191))
|
||||
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.listWidget = QtWidgets.QListWidget(parent=self.horizontalLayoutWidget_2)
|
||||
self.listWidget.setObjectName("listWidget")
|
||||
self.horizontalLayout_2.addWidget(self.listWidget)
|
||||
self.listWidget_done = QtWidgets.QListWidget(parent=self.horizontalLayoutWidget_2)
|
||||
self.listWidget_done.setObjectName("listWidget_done")
|
||||
self.horizontalLayout_2.addWidget(self.listWidget_done)
|
||||
self.progressBar = QtWidgets.QProgressBar(parent=Form)
|
||||
self.progressBar.setGeometry(QtCore.QRect(10, 60, 381, 23))
|
||||
self.progressBar.setProperty("value", 24)
|
||||
self.progressBar.setObjectName("progressBar")
|
||||
self.buttonBox = QtWidgets.QDialogButtonBox(parent=Form)
|
||||
self.buttonBox.setGeometry(QtCore.QRect(230, 290, 156, 23))
|
||||
self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.StandardButton.Cancel|QtWidgets.QDialogButtonBox.StandardButton.Ok)
|
||||
self.buttonBox.setObjectName("buttonBox")
|
||||
self.toolButton = QtWidgets.QToolButton(parent=Form)
|
||||
self.toolButton.setGeometry(QtCore.QRect(20, 290, 25, 19))
|
||||
self.toolButton.setObjectName("toolButton")
|
||||
|
||||
self.retranslateUi(Form)
|
||||
QtCore.QMetaObject.connectSlotsByName(Form)
|
||||
|
||||
def retranslateUi(self, Form):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Form.setWindowTitle(_translate("Form", "Form"))
|
||||
self.label.setText(_translate("Form", "Es wurden"))
|
||||
self.count.setText(_translate("Form", "0"))
|
||||
self.label_2.setText(_translate("Form", "Signaturen gefunden."))
|
||||
self.toolButton.setText(_translate("Form", "..."))
|
||||
48
src/ui/dialogs/popup_confirm.py
Normal file
48
src/ui/dialogs/popup_confirm.py
Normal file
@@ -0,0 +1,48 @@
|
||||
# Form implementation generated from reading ui file 'ui\dialogs\confirm_extend.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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_extend_confirm(object):
|
||||
def setupUi(self, extend_confirm):
|
||||
extend_confirm.setObjectName("extend_confirm")
|
||||
extend_confirm.resize(380, 97)
|
||||
# icon=QtGui.QIcon(f"ui/icons/{icon}.png")
|
||||
# extend_confirm.setWindowIcon(icon)
|
||||
self.buttonBox = QtWidgets.QDialogButtonBox(extend_confirm)
|
||||
self.buttonBox.setGeometry(QtCore.QRect(290, 20, 81, 241))
|
||||
self.buttonBox.setOrientation(QtCore.Qt.Orientation.Vertical)
|
||||
self.buttonBox.setStandardButtons(
|
||||
QtWidgets.QDialogButtonBox.StandardButton.Cancel
|
||||
| QtWidgets.QDialogButtonBox.StandardButton.Ok
|
||||
)
|
||||
self.buttonBox.setObjectName("buttonBox")
|
||||
self.textEdit = QtWidgets.QTextEdit(extend_confirm)
|
||||
self.textEdit.setGeometry(QtCore.QRect(10, 10, 271, 81))
|
||||
self.textEdit.setObjectName("textEdit")
|
||||
|
||||
self.retranslateUi(extend_confirm)
|
||||
self.buttonBox.accepted.connect(extend_confirm.accept) # type: ignore
|
||||
self.buttonBox.rejected.connect(extend_confirm.reject) # type: ignore
|
||||
QtCore.QMetaObject.connectSlotsByName(extend_confirm)
|
||||
|
||||
def retranslateUi(self, extend_confirm):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
extend_confirm.setWindowTitle(_translate("extend_confirm", "Dialog"))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
extend_confirm = QtWidgets.QDialog()
|
||||
ui = Ui_extend_confirm()
|
||||
ui.setupUi(extend_confirm)
|
||||
extend_confirm.show()
|
||||
sys.exit(app.exec())
|
||||
114
src/ui/dialogs/reminder.ui
Normal file
114
src/ui/dialogs/reminder.ui
Normal file
@@ -0,0 +1,114 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Dialog</class>
|
||||
<widget class="QDialog" name="Dialog">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>369</width>
|
||||
<height>308</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Dialog</string>
|
||||
</property>
|
||||
<widget class="QDialogButtonBox" name="buttonBox">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>190</x>
|
||||
<y>270</y>
|
||||
<width>161</width>
|
||||
<height>32</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="standardButtons">
|
||||
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QTextEdit" name="message_box">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>60</y>
|
||||
<width>341</width>
|
||||
<height>201</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>30</y>
|
||||
<width>61</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Nachricht:</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>150</x>
|
||||
<y>30</y>
|
||||
<width>81</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Erinnerung am:</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QDateEdit" name="dateEdit">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>240</x>
|
||||
<y>30</y>
|
||||
<width>110</width>
|
||||
<height>22</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>accepted()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>accept()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>248</x>
|
||||
<y>254</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>157</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>rejected()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>reject()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>316</x>
|
||||
<y>260</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>286</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
</connections>
|
||||
</ui>
|
||||
0
src/ui/dialogs/resources.qrc
Normal file
0
src/ui/dialogs/resources.qrc
Normal file
48
src/ui/dialogs/settings.py
Normal file
48
src/ui/dialogs/settings.py
Normal file
@@ -0,0 +1,48 @@
|
||||
from omegaconf import OmegaConf
|
||||
from PyQt6 import QtWidgets
|
||||
|
||||
from src.ui.dialogs.Ui_settings import Ui_Dialog as _settings
|
||||
|
||||
config = OmegaConf.load("config.yaml")
|
||||
|
||||
|
||||
class Settings(_settings):
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
self.setupUi(self)
|
||||
self.retranslateUi(self)
|
||||
self.load_config()
|
||||
|
||||
def load_config(self):
|
||||
self.db_name.setText(config.database.name)
|
||||
self.db_path.setText(config.database.path)
|
||||
self.save_path.setText(config.save_path)
|
||||
self.os_apps.setChecked(config.default_apps)
|
||||
|
||||
def select_db(self):
|
||||
# open file dialog, limit to .db files
|
||||
file_dialog = QtWidgets.QFileDialog()
|
||||
file_dialog.setFileMode(QtWidgets.QFileDialog.FileMode.AnyFile)
|
||||
file_dialog.setNameFilter("Datenbank (*.db)")
|
||||
file_dialog.setViewMode(QtWidgets.QFileDialog.ViewMode.Detail)
|
||||
if file_dialog.exec():
|
||||
self.db_name.setText(file_dialog.selectedFiles()[0].split("/")[-1])
|
||||
self.db_path.setText(
|
||||
file_dialog.selectedFiles()[0].split(self.db_name.text())[0]
|
||||
)
|
||||
|
||||
def set_save_path(self):
|
||||
# open file dialog, limit to .db files
|
||||
file_dialog = QtWidgets.QFileDialog()
|
||||
file_dialog.setFileMode(QtWidgets.QFileDialog.FileMode.Directory)
|
||||
file_dialog.setViewMode(QtWidgets.QFileDialog.ViewMode.Detail)
|
||||
if file_dialog.exec():
|
||||
self.save_path.setText(file_dialog.selectedFiles()[0])
|
||||
|
||||
def return_data(self):
|
||||
config.database.name = self.db_name.text()
|
||||
config.database.path = self.db_path.text()
|
||||
config.save_path = self.save_path.text()
|
||||
config.default_apps = self.os_apps.isChecked()
|
||||
|
||||
return config
|
||||
308
src/ui/dialogs/settings.ui
Normal file
308
src/ui/dialogs/settings.ui
Normal file
@@ -0,0 +1,308 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Dialog</class>
|
||||
<widget class="QDialog" name="Dialog">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>743</width>
|
||||
<height>576</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Dialog</string>
|
||||
</property>
|
||||
<widget class="QDialogButtonBox" name="buttonBox">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>120</x>
|
||||
<y>540</y>
|
||||
<width>621</width>
|
||||
<height>32</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="standardButtons">
|
||||
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QFrame" name="frame">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>741</width>
|
||||
<height>541</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::StyledPanel</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>400</x>
|
||||
<y>30</y>
|
||||
<width>161</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Dateispezifische Einstellungen</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="Line" name="line">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>370</x>
|
||||
<y>0</y>
|
||||
<width>20</width>
|
||||
<height>541</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Plain</enum>
|
||||
</property>
|
||||
<property name="lineWidth">
|
||||
<number>1</number>
|
||||
</property>
|
||||
<property name="midLineWidth">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QTextBrowser" name="textBrowser">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>400</x>
|
||||
<y>50</y>
|
||||
<width>311</width>
|
||||
<height>51</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="focusPolicy">
|
||||
<enum>Qt::NoFocus</enum>
|
||||
</property>
|
||||
<property name="inputMethodHints">
|
||||
<set>Qt::ImhNone</set>
|
||||
</property>
|
||||
<property name="html">
|
||||
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Hier können Einstellungen für bestehende Dateiformate geändert, oder neue Dateiformate eingefügt werden.</p></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>20</y>
|
||||
<width>161</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Allgemeine Einstellungen</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QCheckBox" name="os_apps">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>410</x>
|
||||
<y>110</y>
|
||||
<width>161</width>
|
||||
<height>17</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Verwendet im Betriebssystem festgelegte Anwendungen um Dateien zu öffnen</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Standard-Apps verwenden</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QWidget" name="formLayoutWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>50</y>
|
||||
<width>361</width>
|
||||
<height>491</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="toolTip">
|
||||
<string><html><head/><body><p>Name der Datenbank, welche verwendet werden soll. <span style=" font-weight:600;">Muss</span> auf .db enden</p></body></html></string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Datenbankname</string>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>db_name</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="toolTip">
|
||||
<string>Pfad, an dem heruntergeladene Dateien gespeichert werden sollen</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Speicherpfad</string>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>save_path</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLineEdit" name="db_path">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="QLineEdit" name="save_path"/>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>Datenbankpfad</string>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>db_path</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QLineEdit" name="db_name">
|
||||
<property name="text">
|
||||
<string>sap.db</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="2">
|
||||
<widget class="QToolButton" name="tb_set_save_path">
|
||||
<property name="text">
|
||||
<string>...</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="1">
|
||||
<spacer name="verticalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<widget class="QToolButton" name="tb_select_db">
|
||||
<property name="text">
|
||||
<string>...</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QScrollArea" name="scrollArea">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>400</x>
|
||||
<y>130</y>
|
||||
<width>331</width>
|
||||
<height>381</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="widgetResizable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<widget class="QWidget" name="scrollAreaWidgetContents">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>329</width>
|
||||
<height>379</height>
|
||||
</rect>
|
||||
</property>
|
||||
<widget class="QTreeWidget" name="treeWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>331</width>
|
||||
<height>381</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="contextMenuPolicy">
|
||||
<enum>Qt::ActionsContextMenu</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
<tabstops>
|
||||
<tabstop>db_name</tabstop>
|
||||
<tabstop>db_path</tabstop>
|
||||
<tabstop>save_path</tabstop>
|
||||
<tabstop>os_apps</tabstop>
|
||||
<tabstop>textBrowser</tabstop>
|
||||
</tabstops>
|
||||
<resources>
|
||||
<include location="../resources.qrc"/>
|
||||
</resources>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>accepted()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>accept()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>358</x>
|
||||
<y>540</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>157</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>rejected()</signal>
|
||||
<receiver>Dialog</receiver>
|
||||
<slot>reject()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>426</x>
|
||||
<y>540</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>286</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
</connections>
|
||||
</ui>
|
||||
0
src/ui/extensions/__init__.py
Normal file
0
src/ui/extensions/__init__.py
Normal file
BIN
src/ui/icons/critical.png
Normal file
BIN
src/ui/icons/critical.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 252 B |
BIN
src/ui/icons/information.png
Normal file
BIN
src/ui/icons/information.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 245 B |
BIN
src/ui/icons/logo_SAP.ico
Normal file
BIN
src/ui/icons/logo_SAP.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 126 KiB |
BIN
src/ui/icons/logo_SAP.png
Normal file
BIN
src/ui/icons/logo_SAP.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 273 KiB |
BIN
src/ui/icons/question.png
Normal file
BIN
src/ui/icons/question.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 252 B |
BIN
src/ui/icons/warning.png
Normal file
BIN
src/ui/icons/warning.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 222 B |
360
src/ui/mainwindow.py
Normal file
360
src/ui/mainwindow.py
Normal file
@@ -0,0 +1,360 @@
|
||||
# Form implementation generated from reading ui file 'untitled.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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_MainWindow(object):
|
||||
def setupUi(self, MainWindow):
|
||||
MainWindow.setObjectName("MainWindow")
|
||||
MainWindow.resize(1280, 720)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Expanding)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth())
|
||||
MainWindow.setSizePolicy(sizePolicy)
|
||||
self.centralwidget = QtWidgets.QWidget(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(self.centralwidget)
|
||||
self.verticalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 1271, 671))
|
||||
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(self.verticalLayoutWidget)
|
||||
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(self.tab)
|
||||
self.horizontalLayoutWidget_2.setGeometry(QtCore.QRect(0, 0, 1261, 161))
|
||||
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(self.horizontalLayoutWidget_2)
|
||||
self.load_app.setObjectName("load_app")
|
||||
self.verticalLayout_2.addWidget(self.load_app)
|
||||
self.create_new_app = QtWidgets.QPushButton(self.horizontalLayoutWidget_2)
|
||||
self.create_new_app.setObjectName("create_new_app")
|
||||
self.verticalLayout_2.addWidget(self.create_new_app)
|
||||
spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
|
||||
self.verticalLayout_2.addItem(spacerItem1)
|
||||
self.formLayout.setLayout(0, QtWidgets.QFormLayout.ItemRole.LabelRole, self.verticalLayout_2)
|
||||
self.tableWidget_apparate = QtWidgets.QTableWidget(self.horizontalLayoutWidget_2)
|
||||
self.tableWidget_apparate.setObjectName("tableWidget_apparate")
|
||||
self.tableWidget_apparate.setColumnCount(4)
|
||||
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)
|
||||
self.formLayout.setWidget(0, QtWidgets.QFormLayout.ItemRole.FieldRole, self.tableWidget_apparate)
|
||||
self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
|
||||
self.horizontalLayout_3.setObjectName("horizontalLayout_3")
|
||||
self.formLayout.setLayout(2, QtWidgets.QFormLayout.ItemRole.LabelRole, self.horizontalLayout_3)
|
||||
self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
|
||||
self.horizontalLayout_4.setObjectName("horizontalLayout_4")
|
||||
self.formLayout.setLayout(1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.horizontalLayout_4)
|
||||
self.horizontalLayout_2.addLayout(self.formLayout)
|
||||
self.line = QtWidgets.QFrame(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(self.tab)
|
||||
self.gridLayoutWidget_2.setGeometry(QtCore.QRect(0, 180, 1261, 461))
|
||||
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.tableWidget_apparat_media = QtWidgets.QTableWidget(self.gridLayoutWidget_2)
|
||||
self.tableWidget_apparat_media.setObjectName("tableWidget_apparat_media")
|
||||
self.tableWidget_apparat_media.setColumnCount(4)
|
||||
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)
|
||||
self.gridLayout_2.addWidget(self.tableWidget_apparat_media, 3, 0, 1, 1)
|
||||
self.label = QtWidgets.QLabel(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, 1, 0, 1, 1)
|
||||
self.app_group_box = QtWidgets.QGroupBox(self.gridLayoutWidget_2)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Expanding)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.app_group_box.sizePolicy().hasHeightForWidth())
|
||||
self.app_group_box.setSizePolicy(sizePolicy)
|
||||
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.tableWidget = QtWidgets.QTableWidget(self.app_group_box)
|
||||
self.tableWidget.setGeometry(QtCore.QRect(820, 20, 256, 192))
|
||||
self.tableWidget.setObjectName("tableWidget")
|
||||
self.tableWidget.setColumnCount(2)
|
||||
self.tableWidget.setRowCount(0)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.tableWidget.setHorizontalHeaderItem(0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.tableWidget.setHorizontalHeaderItem(1, item)
|
||||
self.frame = QtWidgets.QFrame(self.app_group_box)
|
||||
self.frame.setGeometry(QtCore.QRect(10, 30, 731, 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(self.frame)
|
||||
self.drpdwn_prof_title.setGeometry(QtCore.QRect(110, 50, 69, 22))
|
||||
self.drpdwn_prof_title.setObjectName("drpdwn_prof_title")
|
||||
self.label_5 = QtWidgets.QLabel(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.lineEdit = QtWidgets.QLineEdit(self.frame)
|
||||
self.lineEdit.setGeometry(QtCore.QRect(110, 80, 121, 20))
|
||||
font = QtGui.QFont()
|
||||
font.setPointSize(9)
|
||||
font.setBold(False)
|
||||
font.setWeight(50)
|
||||
self.lineEdit.setFont(font)
|
||||
self.lineEdit.setObjectName("lineEdit")
|
||||
self.sem_winter = QtWidgets.QRadioButton(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.setObjectName("sem_winter")
|
||||
self.label_4 = QtWidgets.QLabel(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(self.frame)
|
||||
self.drpdwn_app_nr.setGeometry(QtCore.QRect(110, 20, 69, 22))
|
||||
self.drpdwn_app_nr.setObjectName("drpdwn_app_nr")
|
||||
self.app_name = QtWidgets.QLineEdit(self.frame)
|
||||
self.app_name.setGeometry(QtCore.QRect(340, 20, 113, 20))
|
||||
self.app_name.setObjectName("app_name")
|
||||
self.sem_sommer = QtWidgets.QRadioButton(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.setObjectName("sem_sommer")
|
||||
self.label_3 = QtWidgets.QLabel(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(self.frame)
|
||||
self.label_6.setGeometry(QtCore.QRect(270, 60, 51, 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(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.setObjectName("sem_year")
|
||||
self.label_2 = QtWidgets.QLabel(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(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(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.checkBox = QtWidgets.QCheckBox(self.frame)
|
||||
self.checkBox.setGeometry(QtCore.QRect(340, 90, 101, 17))
|
||||
font = QtGui.QFont()
|
||||
font.setPointSize(9)
|
||||
font.setBold(False)
|
||||
font.setWeight(50)
|
||||
self.checkBox.setFont(font)
|
||||
self.checkBox.setObjectName("checkBox")
|
||||
self.btn_add_document = QtWidgets.QPushButton(self.app_group_box)
|
||||
self.btn_add_document.setGeometry(QtCore.QRect(1100, 40, 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(self.app_group_box)
|
||||
self.btn_open_document.setGeometry(QtCore.QRect(1100, 80, 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.toolButton = QtWidgets.QToolButton(self.app_group_box)
|
||||
self.toolButton.setGeometry(QtCore.QRect(1110, 110, 25, 19))
|
||||
self.toolButton.setObjectName("toolButton")
|
||||
self.gridLayout_2.addWidget(self.app_group_box, 2, 0, 1, 1)
|
||||
self.tabWidget.addTab(self.tab, "")
|
||||
self.tab_2 = QtWidgets.QWidget()
|
||||
self.tab_2.setObjectName("tab_2")
|
||||
self.tabWidget.addTab(self.tab_2, "")
|
||||
self.gridLayout.addWidget(self.tabWidget, 0, 0, 1, 1)
|
||||
self.horizontalLayout.addLayout(self.gridLayout)
|
||||
self.verticalLayout.addLayout(self.horizontalLayout)
|
||||
MainWindow.setCentralWidget(self.centralwidget)
|
||||
self.menubar = QtWidgets.QMenuBar(MainWindow)
|
||||
self.menubar.setGeometry(QtCore.QRect(0, 0, 1280, 21))
|
||||
self.menubar.setObjectName("menubar")
|
||||
self.menuDatei = QtWidgets.QMenu(self.menubar)
|
||||
self.menuDatei.setObjectName("menuDatei")
|
||||
self.menuEinstellungen = QtWidgets.QMenu(self.menubar)
|
||||
self.menuEinstellungen.setObjectName("menuEinstellungen")
|
||||
MainWindow.setMenuBar(self.menubar)
|
||||
self.statusbar = QtWidgets.QStatusBar(MainWindow)
|
||||
self.statusbar.setObjectName("statusbar")
|
||||
MainWindow.setStatusBar(self.statusbar)
|
||||
self.menubar.addAction(self.menuDatei.menuAction())
|
||||
self.menubar.addAction(self.menuEinstellungen.menuAction())
|
||||
|
||||
self.retranslateUi(MainWindow)
|
||||
self.tabWidget.setCurrentIndex(0)
|
||||
QtCore.QMetaObject.connectSlotsByName(MainWindow)
|
||||
|
||||
def retranslateUi(self, MainWindow):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
|
||||
self.load_app.setToolTip(_translate("MainWindow", "Load the Semesterapparate from the database"))
|
||||
self.load_app.setText(_translate("MainWindow", "App. Laden"))
|
||||
self.create_new_app.setText(_translate("MainWindow", "neu. App anlegen"))
|
||||
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", "Dauerapparat"))
|
||||
item = self.tableWidget_apparat_media.horizontalHeaderItem(0)
|
||||
item.setText(_translate("MainWindow", "Buchtitel"))
|
||||
item = self.tableWidget_apparat_media.horizontalHeaderItem(1)
|
||||
item.setText(_translate("MainWindow", "Autor"))
|
||||
item = self.tableWidget_apparat_media.horizontalHeaderItem(2)
|
||||
item.setText(_translate("MainWindow", "Auflage"))
|
||||
item = self.tableWidget_apparat_media.horizontalHeaderItem(3)
|
||||
item.setText(_translate("MainWindow", "Signatur"))
|
||||
self.label.setText(_translate("MainWindow", "Medienliste"))
|
||||
self.app_group_box.setTitle(_translate("MainWindow", "Apparatsdetails"))
|
||||
item = self.tableWidget.horizontalHeaderItem(0)
|
||||
item.setText(_translate("MainWindow", "Dokumentname"))
|
||||
item = self.tableWidget.horizontalHeaderItem(1)
|
||||
item.setText(_translate("MainWindow", "Typ"))
|
||||
self.label_5.setText(_translate("MainWindow", "Apparatsname"))
|
||||
self.lineEdit.setPlaceholderText(_translate("MainWindow", "Nachname, Vorname"))
|
||||
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.checkBox.setText(_translate("MainWindow", "Dauerapparat"))
|
||||
self.btn_add_document.setText(_translate("MainWindow", "Dokument hinzufügen"))
|
||||
self.btn_open_document.setText(_translate("MainWindow", "Dokument öffnen"))
|
||||
self.toolButton.setText(_translate("MainWindow", "..."))
|
||||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), _translate("MainWindow", "Tab 1"))
|
||||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), _translate("MainWindow", "Tab 2"))
|
||||
self.menuDatei.setTitle(_translate("MainWindow", "Datei"))
|
||||
self.menuEinstellungen.setTitle(_translate("MainWindow", "Einstellungen"))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
MainWindow = QtWidgets.QMainWindow()
|
||||
ui = Ui_MainWindow()
|
||||
ui.setupUi(MainWindow)
|
||||
MainWindow.show()
|
||||
sys.exit(app.exec())
|
||||
64
src/ui/plotdata.ui
Normal file
64
src/ui/plotdata.ui
Normal file
@@ -0,0 +1,64 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>MainWindow</class>
|
||||
<widget class="QMainWindow" name="MainWindow">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>640</width>
|
||||
<height>480</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>MainWindow</string>
|
||||
</property>
|
||||
<widget class="QWidget" name="centralwidget">
|
||||
<widget class="QGraphicsView" name="graphicsView">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>330</x>
|
||||
<y>10</y>
|
||||
<width>256</width>
|
||||
<height>192</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QWidget" name="widget" native="true">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>0</y>
|
||||
<width>251</width>
|
||||
<height>271</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QStackedWidget" name="stackedWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>300</x>
|
||||
<y>220</y>
|
||||
<width>291</width>
|
||||
<height>201</height>
|
||||
</rect>
|
||||
</property>
|
||||
<widget class="QWidget" name="page"/>
|
||||
<widget class="QWidget" name="page_2"/>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QMenuBar" name="menubar">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>640</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QStatusBar" name="statusbar"/>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
47
src/ui/plotdata_ui.py
Normal file
47
src/ui/plotdata_ui.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# Form implementation generated from reading ui file '/home/alexander/GitHub/Semesterapparate/ui/plotdata.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.resize(640, 480)
|
||||
self.centralwidget = QtWidgets.QWidget(parent=MainWindow)
|
||||
self.centralwidget.setObjectName("centralwidget")
|
||||
self.graphicsView = QtWidgets.QGraphicsView(parent=self.centralwidget)
|
||||
self.graphicsView.setGeometry(QtCore.QRect(330, 10, 256, 192))
|
||||
self.graphicsView.setObjectName("graphicsView")
|
||||
self.widget = QtWidgets.QWidget(parent=self.centralwidget)
|
||||
self.widget.setGeometry(QtCore.QRect(10, 0, 251, 271))
|
||||
self.widget.setObjectName("widget")
|
||||
self.stackedWidget = QtWidgets.QStackedWidget(parent=self.centralwidget)
|
||||
self.stackedWidget.setGeometry(QtCore.QRect(300, 220, 291, 201))
|
||||
self.stackedWidget.setObjectName("stackedWidget")
|
||||
self.page = QtWidgets.QWidget()
|
||||
self.page.setObjectName("page")
|
||||
self.stackedWidget.addWidget(self.page)
|
||||
self.page_2 = QtWidgets.QWidget()
|
||||
self.page_2.setObjectName("page_2")
|
||||
self.stackedWidget.addWidget(self.page_2)
|
||||
MainWindow.setCentralWidget(self.centralwidget)
|
||||
self.menubar = QtWidgets.QMenuBar(parent=MainWindow)
|
||||
self.menubar.setGeometry(QtCore.QRect(0, 0, 640, 21))
|
||||
self.menubar.setObjectName("menubar")
|
||||
MainWindow.setMenuBar(self.menubar)
|
||||
self.statusbar = QtWidgets.QStatusBar(parent=MainWindow)
|
||||
self.statusbar.setObjectName("statusbar")
|
||||
MainWindow.setStatusBar(self.statusbar)
|
||||
|
||||
self.retranslateUi(MainWindow)
|
||||
QtCore.QMetaObject.connectSlotsByName(MainWindow)
|
||||
|
||||
def retranslateUi(self, MainWindow):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
|
||||
14
src/ui/resources.qrc
Normal file
14
src/ui/resources.qrc
Normal file
@@ -0,0 +1,14 @@
|
||||
<RCC>
|
||||
<qresource prefix="warn_image">
|
||||
<file>icons/warning.png</file>
|
||||
</qresource>
|
||||
<qresource prefix="critical">
|
||||
<file>icons/critical.png</file>
|
||||
</qresource>
|
||||
<qresource prefix="information">
|
||||
<file>icons/information.png</file>
|
||||
</qresource>
|
||||
<qresource prefix="question">
|
||||
<file>icons/question.png</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
512
src/ui/sap.py
Normal file
512
src/ui/sap.py
Normal file
@@ -0,0 +1,512 @@
|
||||
# Form implementation generated from reading ui file 'ui/semesterapparat_ui.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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_MainWindow(object):
|
||||
def setupUi(self, MainWindow):
|
||||
MainWindow.setObjectName("MainWindow")
|
||||
MainWindow.resize(1280, 747)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Expanding)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth())
|
||||
MainWindow.setSizePolicy(sizePolicy)
|
||||
self.centralwidget = QtWidgets.QWidget(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(self.centralwidget)
|
||||
self.verticalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 1271, 691))
|
||||
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(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(self.tab)
|
||||
self.horizontalLayoutWidget_2.setGeometry(QtCore.QRect(0, 0, 1261, 161))
|
||||
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(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(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)
|
||||
spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
|
||||
self.verticalLayout_2.addItem(spacerItem1)
|
||||
self.formLayout.setLayout(0, QtWidgets.QFormLayout.ItemRole.LabelRole, self.verticalLayout_2)
|
||||
self.tableWidget_apparate = QtWidgets.QTableWidget(self.horizontalLayoutWidget_2)
|
||||
self.tableWidget_apparate.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
|
||||
self.tableWidget_apparate.setEditTriggers(QtWidgets.QAbstractItemView.EditTrigger.NoEditTriggers)
|
||||
self.tableWidget_apparate.setObjectName("tableWidget_apparate")
|
||||
self.tableWidget_apparate.setColumnCount(4)
|
||||
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)
|
||||
self.formLayout.setWidget(0, QtWidgets.QFormLayout.ItemRole.FieldRole, self.tableWidget_apparate)
|
||||
self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
|
||||
self.horizontalLayout_3.setObjectName("horizontalLayout_3")
|
||||
self.formLayout.setLayout(2, QtWidgets.QFormLayout.ItemRole.LabelRole, self.horizontalLayout_3)
|
||||
self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
|
||||
self.horizontalLayout_4.setObjectName("horizontalLayout_4")
|
||||
self.formLayout.setLayout(1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.horizontalLayout_4)
|
||||
self.horizontalLayout_2.addLayout(self.formLayout)
|
||||
self.line = QtWidgets.QFrame(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(self.tab)
|
||||
self.gridLayoutWidget_2.setGeometry(QtCore.QRect(0, 180, 1261, 461))
|
||||
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(self.gridLayoutWidget_2)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Expanding)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.app_group_box.sizePolicy().hasHeightForWidth())
|
||||
self.app_group_box.setSizePolicy(sizePolicy)
|
||||
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(self.app_group_box)
|
||||
self.dokument_list.setGeometry(QtCore.QRect(830, 20, 256, 192))
|
||||
font = QtGui.QFont()
|
||||
font.setKerning(False)
|
||||
self.dokument_list.setFont(font)
|
||||
self.dokument_list.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
|
||||
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(self.app_group_box)
|
||||
self.frame.setEnabled(True)
|
||||
self.frame.setGeometry(QtCore.QRect(10, 30, 731, 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(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(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(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.setObjectName("sem_winter")
|
||||
self.label_4 = QtWidgets.QLabel(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(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.setEditable(True)
|
||||
self.drpdwn_app_nr.setObjectName("drpdwn_app_nr")
|
||||
self.app_name = QtWidgets.QLineEdit(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.setObjectName("app_name")
|
||||
self.sem_sommer = QtWidgets.QRadioButton(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.setObjectName("sem_sommer")
|
||||
self.label_3 = QtWidgets.QLabel(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(self.frame)
|
||||
self.label_6.setGeometry(QtCore.QRect(270, 60, 51, 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(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.setMaxLength(4)
|
||||
self.sem_year.setObjectName("sem_year")
|
||||
self.label_2 = QtWidgets.QLabel(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(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(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(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(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(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.setPlaceholderText("")
|
||||
self.prof_mail.setObjectName("prof_mail")
|
||||
self.label_9 = QtWidgets.QLabel(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(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.setPlaceholderText("")
|
||||
self.prof_tel_nr.setObjectName("prof_tel_nr")
|
||||
self.label_10 = QtWidgets.QLabel(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(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.setObjectName("app_fach")
|
||||
self.drpdwn_prof_name = QtWidgets.QComboBox(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.btn_add_document = QtWidgets.QPushButton(self.app_group_box)
|
||||
self.btn_add_document.setGeometry(QtCore.QRect(1100, 40, 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(self.app_group_box)
|
||||
self.btn_open_document.setGeometry(QtCore.QRect(1100, 80, 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.toolButton = QtWidgets.QToolButton(self.app_group_box)
|
||||
self.toolButton.setGeometry(QtCore.QRect(1110, 110, 25, 19))
|
||||
self.toolButton.setObjectName("toolButton")
|
||||
self.label_7 = QtWidgets.QLabel(self.app_group_box)
|
||||
self.label_7.setGeometry(QtCore.QRect(20, 200, 47, 21))
|
||||
font = QtGui.QFont()
|
||||
font.setPointSize(9)
|
||||
font.setBold(False)
|
||||
font.setWeight(50)
|
||||
self.label_7.setFont(font)
|
||||
self.label_7.setObjectName("label_7")
|
||||
self.search_media = QtWidgets.QLineEdit(self.app_group_box)
|
||||
self.search_media.setGeometry(QtCore.QRect(80, 200, 211, 20))
|
||||
font = QtGui.QFont()
|
||||
font.setPointSize(9)
|
||||
font.setBold(False)
|
||||
font.setWeight(50)
|
||||
self.search_media.setFont(font)
|
||||
self.search_media.setObjectName("search_media")
|
||||
self.label = QtWidgets.QLabel(self.app_group_box)
|
||||
self.label.setGeometry(QtCore.QRect(10, 180, 1259, 18))
|
||||
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.app_group_box, 1, 0, 1, 1)
|
||||
self.tableWidget_apparat_media = QtWidgets.QTableWidget(self.gridLayoutWidget_2)
|
||||
self.tableWidget_apparat_media.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
|
||||
self.tableWidget_apparat_media.setObjectName("tableWidget_apparat_media")
|
||||
self.tableWidget_apparat_media.setColumnCount(4)
|
||||
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)
|
||||
self.gridLayout_2.addWidget(self.tableWidget_apparat_media, 2, 0, 1, 1)
|
||||
self.search = QtWidgets.QPushButton(self.tab)
|
||||
self.search.setGeometry(QtCore.QRect(130, 640, 75, 20))
|
||||
self.search.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
|
||||
self.search.setObjectName("search")
|
||||
self.add_medium = QtWidgets.QPushButton(self.tab)
|
||||
self.add_medium.setGeometry(QtCore.QRect(10, 640, 111, 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.tabWidget.addTab(self.tab_2, "")
|
||||
self.gridLayout.addWidget(self.tabWidget, 0, 0, 1, 1)
|
||||
self.horizontalLayout.addLayout(self.gridLayout)
|
||||
self.verticalLayout.addLayout(self.horizontalLayout)
|
||||
MainWindow.setCentralWidget(self.centralwidget)
|
||||
self.menubar = QtWidgets.QMenuBar(MainWindow)
|
||||
self.menubar.setGeometry(QtCore.QRect(0, 0, 1280, 21))
|
||||
self.menubar.setObjectName("menubar")
|
||||
self.menuDatei = QtWidgets.QMenu(self.menubar)
|
||||
self.menuDatei.setObjectName("menuDatei")
|
||||
self.menuEinstellungen = QtWidgets.QMenu(self.menubar)
|
||||
self.menuEinstellungen.setObjectName("menuEinstellungen")
|
||||
MainWindow.setMenuBar(self.menubar)
|
||||
self.statusbar = QtWidgets.QStatusBar(MainWindow)
|
||||
self.statusbar.setObjectName("statusbar")
|
||||
MainWindow.setStatusBar(self.statusbar)
|
||||
self.menubar.addAction(self.menuDatei.menuAction())
|
||||
self.menubar.addAction(self.menuEinstellungen.menuAction())
|
||||
|
||||
self.retranslateUi(MainWindow)
|
||||
self.tabWidget.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.toolButton)
|
||||
MainWindow.setTabOrder(self.toolButton, self.btn_apparat_save)
|
||||
MainWindow.setTabOrder(self.btn_apparat_save, self.btn_apparat_apply)
|
||||
MainWindow.setTabOrder(self.btn_apparat_apply, self.search_media)
|
||||
|
||||
def retranslateUi(self, MainWindow):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
|
||||
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"))
|
||||
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", "Dauerapparat"))
|
||||
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.btn_add_document.setText(_translate("MainWindow", "Dokument hinzufügen"))
|
||||
self.btn_open_document.setText(_translate("MainWindow", "Dokument öffnen"))
|
||||
self.toolButton.setText(_translate("MainWindow", "..."))
|
||||
self.label_7.setText(_translate("MainWindow", "Suche"))
|
||||
self.search_media.setPlaceholderText(_translate("MainWindow", "Buch oder Signatur"))
|
||||
self.label.setText(_translate("MainWindow", "Medienliste"))
|
||||
item = self.tableWidget_apparat_media.horizontalHeaderItem(0)
|
||||
item.setText(_translate("MainWindow", "Buchtitel"))
|
||||
item = self.tableWidget_apparat_media.horizontalHeaderItem(1)
|
||||
item.setText(_translate("MainWindow", "Autor"))
|
||||
item = self.tableWidget_apparat_media.horizontalHeaderItem(2)
|
||||
item.setText(_translate("MainWindow", "Auflage"))
|
||||
item = self.tableWidget_apparat_media.horizontalHeaderItem(3)
|
||||
item.setText(_translate("MainWindow", "Signatur"))
|
||||
self.search.setToolTip(_translate("MainWindow", "Sucht im Katalog nach allen Medien, die die Apparatsnummer enthalten"))
|
||||
self.search.setText(_translate("MainWindow", "Suche"))
|
||||
self.add_medium.setText(_translate("MainWindow", "Medium hinzufügen"))
|
||||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), _translate("MainWindow", "Tab 1"))
|
||||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), _translate("MainWindow", "Tab 2"))
|
||||
self.menuDatei.setTitle(_translate("MainWindow", "Datei"))
|
||||
self.menuEinstellungen.setTitle(_translate("MainWindow", "Einstellungen"))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
MainWindow = QtWidgets.QMainWindow()
|
||||
ui = Ui_MainWindow()
|
||||
ui.setupUi(MainWindow)
|
||||
MainWindow.show()
|
||||
sys.exit(app.exec())
|
||||
234
src/ui/semesterapparat_ui.ts
Normal file
234
src/ui/semesterapparat_ui.ts
Normal file
@@ -0,0 +1,234 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE TS>
|
||||
<TS version="2.1">
|
||||
<context>
|
||||
<name>MainWindow</name>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="23"/>
|
||||
<source>MainWindow</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="62"/>
|
||||
<source>Tab 1</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="97"/>
|
||||
<source>Load the Semesterapparate from the database</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="100"/>
|
||||
<source>App. aufrufen</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="110"/>
|
||||
<source>neu. App anlegen</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="139"/>
|
||||
<source>AppNr</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="144"/>
|
||||
<source>App Name</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="149"/>
|
||||
<source>Professor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="154"/>
|
||||
<location filename="semesterapparat_ui.ui" line="584"/>
|
||||
<source>Dauerapparat</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="159"/>
|
||||
<source>KontoNr</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="254"/>
|
||||
<source>Dateityp</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="265"/>
|
||||
<source>Neu?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="276"/>
|
||||
<source>path</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="604"/>
|
||||
<source>Mail</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="650"/>
|
||||
<source>Tel</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="693"/>
|
||||
<source>Fach</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="762"/>
|
||||
<location filename="semesterapparat_ui.ui" line="782"/>
|
||||
<location filename="semesterapparat_ui.ui" line="802"/>
|
||||
<location filename="semesterapparat_ui.ui" line="822"/>
|
||||
<location filename="semesterapparat_ui.ui" line="842"/>
|
||||
<location filename="semesterapparat_ui.ui" line="862"/>
|
||||
<source>*</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="975"/>
|
||||
<source>Buchtitel</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="980"/>
|
||||
<source>Autor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="985"/>
|
||||
<source>Auflage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="990"/>
|
||||
<source>Signatur</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="1073"/>
|
||||
<source>Beenden</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="213"/>
|
||||
<source>Apparatsdetails</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="243"/>
|
||||
<source>Dokumentname</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="341"/>
|
||||
<source>Apparatsname</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="361"/>
|
||||
<source>Winter</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="381"/>
|
||||
<source>Prof. Name</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="441"/>
|
||||
<source>Sommer</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="461"/>
|
||||
<source>Prof. Titel</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="481"/>
|
||||
<source>Semester</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="504"/>
|
||||
<source>2023</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="524"/>
|
||||
<source>Apparatsnummer</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="544"/>
|
||||
<source>Speichern</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="564"/>
|
||||
<source>Aktualisieren</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="883"/>
|
||||
<source>Dokument hinzufügen</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="903"/>
|
||||
<source>Dokument öffnen</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="923"/>
|
||||
<location filename="semesterapparat_ui.ui" line="1013"/>
|
||||
<source>Suche</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="943"/>
|
||||
<source>Buch oder Signatur</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="963"/>
|
||||
<source>Medienliste</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="1010"/>
|
||||
<source>Sucht im Katalog nach allen Medien, die die Apparatsnummer enthalten</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="1029"/>
|
||||
<source>Medium hinzufügen</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="1035"/>
|
||||
<source>Tab 2</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="1058"/>
|
||||
<source>Datei</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="semesterapparat_ui.ui" line="1064"/>
|
||||
<source>Einstellungen</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
2890
src/ui/semesterapparat_ui.ui
Normal file
2890
src/ui/semesterapparat_ui.ui
Normal file
File diff suppressed because it is too large
Load Diff
1437
src/ui/semesterapparat_ui_ui.py
Normal file
1437
src/ui/semesterapparat_ui_ui.py
Normal file
File diff suppressed because it is too large
Load Diff
149
src/ui/setupwizard.ui
Normal file
149
src/ui/setupwizard.ui
Normal file
@@ -0,0 +1,149 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Wizard</class>
|
||||
<widget class="QWizard" name="Wizard">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>640</width>
|
||||
<height>480</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>640</width>
|
||||
<height>480</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Wizard</string>
|
||||
</property>
|
||||
<widget class="QWizardPage" name="wizardPage1">
|
||||
<widget class="QTextBrowser" name="textBrowser">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>200</x>
|
||||
<y>10</y>
|
||||
<width>256</width>
|
||||
<height>192</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="html">
|
||||
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Setup für das Semesterapparatsprogram.</p>
|
||||
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Im Anschluss werden wichtige Einstellungen gesetzt, welche auch im späteren Verlauf verändert werden können.</p>
|
||||
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QWizardPage" name="wizardPage2">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>0</y>
|
||||
<width>131</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Grundeinstellungen</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>40</y>
|
||||
<width>71</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Opens the downloaded files with the default applications set in the OS</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Default Apps</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QCheckBox" name="default_apps">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>100</x>
|
||||
<y>40</y>
|
||||
<width>70</width>
|
||||
<height>17</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>70</y>
|
||||
<width>61</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Path where the downloaded files are stored. Defaults to ~/Desktop/SemapFiles</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Save Path</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QFrame" name="custom_applications">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>280</x>
|
||||
<y>10</y>
|
||||
<width>331</width>
|
||||
<height>361</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::StyledPanel</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLineEdit" name="save_path">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>80</x>
|
||||
<y>70</y>
|
||||
<width>113</width>
|
||||
<height>20</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="placeholderText">
|
||||
<string>~/Desktop/SemapFiles</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QToolButton" name="btn_save_path_select">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>200</x>
|
||||
<y>70</y>
|
||||
<width>25</width>
|
||||
<height>19</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>...</string>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
90
src/ui/setupwizard_ui.py
Normal file
90
src/ui/setupwizard_ui.py
Normal file
@@ -0,0 +1,90 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
################################################################################
|
||||
## Form generated from reading UI file 'setupwizard.ui'
|
||||
##
|
||||
## Created by: Qt User Interface Compiler version 6.5.2
|
||||
##
|
||||
## WARNING! All changes made in this file will be lost when recompiling UI file!
|
||||
################################################################################
|
||||
|
||||
from PySide6.QtCore import (QCoreApplication, QDate, QDateTime, QLocale,
|
||||
QMetaObject, QObject, QPoint, QRect,
|
||||
QSize, QTime, QUrl, Qt)
|
||||
from PySide6.QtGui import (QBrush, QColor, QConicalGradient, QCursor,
|
||||
QFont, QFontDatabase, QGradient, QIcon,
|
||||
QImage, QKeySequence, QLinearGradient, QPainter,
|
||||
QPalette, QPixmap, QRadialGradient, QTransform)
|
||||
from PySide6.QtWidgets import (QApplication, QCheckBox, QFrame, QLabel,
|
||||
QLineEdit, QSizePolicy, QTextBrowser, QToolButton,
|
||||
QWidget, QWizard, QWizardPage)
|
||||
|
||||
class Ui_Wizard(object):
|
||||
def setupUi(self, Wizard):
|
||||
if not Wizard.objectName():
|
||||
Wizard.setObjectName(u"Wizard")
|
||||
Wizard.resize(640, 480)
|
||||
Wizard.setMaximumSize(QSize(640, 480))
|
||||
self.wizardPage1 = QWizardPage()
|
||||
self.wizardPage1.setObjectName(u"wizardPage1")
|
||||
self.textBrowser = QTextBrowser(self.wizardPage1)
|
||||
self.textBrowser.setObjectName(u"textBrowser")
|
||||
self.textBrowser.setGeometry(QRect(200, 10, 256, 192))
|
||||
Wizard.addPage(self.wizardPage1)
|
||||
self.wizardPage2 = QWizardPage()
|
||||
self.wizardPage2.setObjectName(u"wizardPage2")
|
||||
self.label = QLabel(self.wizardPage2)
|
||||
self.label.setObjectName(u"label")
|
||||
self.label.setGeometry(QRect(10, 0, 131, 16))
|
||||
self.label_2 = QLabel(self.wizardPage2)
|
||||
self.label_2.setObjectName(u"label_2")
|
||||
self.label_2.setGeometry(QRect(10, 40, 71, 16))
|
||||
self.default_apps = QCheckBox(self.wizardPage2)
|
||||
self.default_apps.setObjectName(u"default_apps")
|
||||
self.default_apps.setGeometry(QRect(100, 40, 70, 17))
|
||||
self.label_3 = QLabel(self.wizardPage2)
|
||||
self.label_3.setObjectName(u"label_3")
|
||||
self.label_3.setGeometry(QRect(10, 70, 61, 16))
|
||||
self.custom_applications = QFrame(self.wizardPage2)
|
||||
self.custom_applications.setObjectName(u"custom_applications")
|
||||
self.custom_applications.setGeometry(QRect(280, 10, 331, 361))
|
||||
self.custom_applications.setFrameShape(QFrame.StyledPanel)
|
||||
self.custom_applications.setFrameShadow(QFrame.Raised)
|
||||
self.save_path = QLineEdit(self.wizardPage2)
|
||||
self.save_path.setObjectName(u"save_path")
|
||||
self.save_path.setGeometry(QRect(80, 70, 113, 20))
|
||||
self.btn_save_path_select = QToolButton(self.wizardPage2)
|
||||
self.btn_save_path_select.setObjectName(u"btn_save_path_select")
|
||||
self.btn_save_path_select.setGeometry(QRect(200, 70, 25, 19))
|
||||
Wizard.addPage(self.wizardPage2)
|
||||
|
||||
self.retranslateUi(Wizard)
|
||||
|
||||
QMetaObject.connectSlotsByName(Wizard)
|
||||
# setupUi
|
||||
|
||||
def retranslateUi(self, Wizard):
|
||||
Wizard.setWindowTitle(QCoreApplication.translate("Wizard", u"Wizard", None))
|
||||
self.textBrowser.setHtml(QCoreApplication.translate("Wizard", u"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
|
||||
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
|
||||
"p, li { white-space: pre-wrap; }\n"
|
||||
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
|
||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Setup f\u00fcr das Semesterapparatsprogram.</p>\n"
|
||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><br /></p>\n"
|
||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Im Anschluss werden wichtige Einstellungen gesetzt, welche auch im sp\u00e4teren Verlauf ver\u00e4ndert werden k\u00f6nnen.</p>\n"
|
||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margi"
|
||||
"n-right:0px; -qt-block-indent:0; text-indent:0px;\"><br /></p></body></html>", None))
|
||||
self.label.setText(QCoreApplication.translate("Wizard", u"Grundeinstellungen", None))
|
||||
#if QT_CONFIG(tooltip)
|
||||
self.label_2.setToolTip(QCoreApplication.translate("Wizard", u"Opens the downloaded files with the default applications set in the OS", None))
|
||||
#endif // QT_CONFIG(tooltip)
|
||||
self.label_2.setText(QCoreApplication.translate("Wizard", u"Default Apps", None))
|
||||
self.default_apps.setText("")
|
||||
#if QT_CONFIG(tooltip)
|
||||
self.label_3.setToolTip(QCoreApplication.translate("Wizard", u"Path where the downloaded files are stored. Defaults to ~/Desktop/SemapFiles", None))
|
||||
#endif // QT_CONFIG(tooltip)
|
||||
self.label_3.setText(QCoreApplication.translate("Wizard", u"Save Path", None))
|
||||
self.save_path.setPlaceholderText(QCoreApplication.translate("Wizard", u"~/Desktop/SemapFiles", None))
|
||||
self.btn_save_path_select.setText(QCoreApplication.translate("Wizard", u"...", None))
|
||||
# retranslateUi
|
||||
|
||||
2146
src/ui/sounds/semesterapparat_ui.ui
Normal file
2146
src/ui/sounds/semesterapparat_ui.ui
Normal file
File diff suppressed because it is too large
Load Diff
1075
src/ui/sounds/semesterapparat_ui_ui.py
Normal file
1075
src/ui/sounds/semesterapparat_ui_ui.py
Normal file
File diff suppressed because it is too large
Load Diff
692
src/ui/untitled.ui
Normal file
692
src/ui/untitled.ui
Normal file
@@ -0,0 +1,692 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>MainWindow</class>
|
||||
<widget class="QMainWindow" name="MainWindow">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>1280</width>
|
||||
<height>720</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>MainWindow</string>
|
||||
</property>
|
||||
<widget class="QWidget" name="centralwidget">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<widget class="QWidget" name="verticalLayoutWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>1271</width>
|
||||
<height>671</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<item row="0" column="0">
|
||||
<widget class="QTabWidget" name="tabWidget">
|
||||
<property name="currentIndex">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="tab">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<attribute name="title">
|
||||
<string>Tab 1</string>
|
||||
</attribute>
|
||||
<widget class="QWidget" name="horizontalLayoutWidget_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>1261</width>
|
||||
<height>161</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||
<item>
|
||||
<layout class="QFormLayout" name="formLayout">
|
||||
<item row="0" column="0">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||
<item>
|
||||
<spacer name="verticalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="load_app">
|
||||
<property name="toolTip">
|
||||
<string>Load the Semesterapparate from the database</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>App. aufrufen</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="create_new_app">
|
||||
<property name="text">
|
||||
<string>neu. App anlegen</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QTableWidget" name="tableWidget_apparate">
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>AppNr</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>App Name</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Professor</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Dauerapparat</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_3"/>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_4"/>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="Line" name="line">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>160</y>
|
||||
<width>1261</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QWidget" name="gridLayoutWidget_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>180</y>
|
||||
<width>1261</width>
|
||||
<height>461</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_2">
|
||||
<item row="2" column="0">
|
||||
<widget class="QTableWidget" name="tableWidget_apparat_media">
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Buchtitel</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Autor</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Auflage</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Signatur</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QGroupBox" name="app_group_box">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>12</pointsize>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Apparatsdetails</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<widget class="QTableWidget" name="dokument_list">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>820</x>
|
||||
<y>20</y>
|
||||
<width>256</width>
|
||||
<height>192</height>
|
||||
</rect>
|
||||
</property>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Dokumentname</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Typ</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
<widget class="QFrame" name="frame">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>30</y>
|
||||
<width>731</width>
|
||||
<height>151</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::StyledPanel</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<widget class="QComboBox" name="drpdwn_prof_title">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>110</x>
|
||||
<y>50</y>
|
||||
<width>69</width>
|
||||
<height>22</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>250</x>
|
||||
<y>20</y>
|
||||
<width>91</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Apparatsname</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLineEdit" name="lineEdit">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>110</x>
|
||||
<y>80</y>
|
||||
<width>121</width>
|
||||
<height>20</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="placeholderText">
|
||||
<string>Nachname, Vorname</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QRadioButton" name="sem_winter">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>340</x>
|
||||
<y>50</y>
|
||||
<width>82</width>
|
||||
<height>17</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Winter</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>80</y>
|
||||
<width>71</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Prof. Name</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QComboBox" name="drpdwn_app_nr">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>110</x>
|
||||
<y>20</y>
|
||||
<width>69</width>
|
||||
<height>22</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLineEdit" name="app_name">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>340</x>
|
||||
<y>20</y>
|
||||
<width>113</width>
|
||||
<height>20</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QRadioButton" name="sem_sommer">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>340</x>
|
||||
<y>70</y>
|
||||
<width>82</width>
|
||||
<height>17</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Sommer</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>50</y>
|
||||
<width>61</width>
|
||||
<height>20</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Prof. Titel</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label_6">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>270</x>
|
||||
<y>60</y>
|
||||
<width>51</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Semester</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLineEdit" name="sem_year">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>410</x>
|
||||
<y>60</y>
|
||||
<width>113</width>
|
||||
<height>20</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="placeholderText">
|
||||
<string>2023</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>20</y>
|
||||
<width>101</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Apparatsnummer</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="btn_apparat_save">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>260</x>
|
||||
<y>120</y>
|
||||
<width>75</width>
|
||||
<height>23</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Speichern</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="btn_apparat_apply">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>350</x>
|
||||
<y>120</y>
|
||||
<width>75</width>
|
||||
<height>23</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Aktualisieren</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QCheckBox" name="checkBox">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>340</x>
|
||||
<y>90</y>
|
||||
<width>101</width>
|
||||
<height>17</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Dauerapparat</string>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="btn_add_document">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>1100</x>
|
||||
<y>40</y>
|
||||
<width>131</width>
|
||||
<height>25</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Dokument hinzufügen</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="btn_open_document">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>1100</x>
|
||||
<y>80</y>
|
||||
<width>131</width>
|
||||
<height>25</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Dokument öffnen</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QToolButton" name="toolButton">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>1110</x>
|
||||
<y>110</y>
|
||||
<width>25</width>
|
||||
<height>19</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>...</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label_7">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>20</x>
|
||||
<y>200</y>
|
||||
<width>47</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Suche</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLineEdit" name="lineEdit_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>80</x>
|
||||
<y>200</y>
|
||||
<width>211</width>
|
||||
<height>20</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="placeholderText">
|
||||
<string>Buch oder Signatur</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>180</y>
|
||||
<width>1259</width>
|
||||
<height>18</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>11</pointsize>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Medienliste</string>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QWidget" name="tab_2">
|
||||
<attribute name="title">
|
||||
<string>Tab 2</string>
|
||||
</attribute>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QMenuBar" name="menubar">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>1280</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<widget class="QMenu" name="menuDatei">
|
||||
<property name="title">
|
||||
<string>Datei</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QMenu" name="menuEinstellungen">
|
||||
<property name="title">
|
||||
<string>Einstellungen</string>
|
||||
</property>
|
||||
</widget>
|
||||
<addaction name="menuDatei"/>
|
||||
<addaction name="menuEinstellungen"/>
|
||||
</widget>
|
||||
<widget class="QStatusBar" name="statusbar"/>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
476
src/ui/untitled_ui.py
Normal file
476
src/ui/untitled_ui.py
Normal file
@@ -0,0 +1,476 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
################################################################################
|
||||
# Form generated from reading UI file 'untitled.ui'
|
||||
##
|
||||
# Created by: Qt User Interface Compiler version 6.5.2
|
||||
##
|
||||
# WARNING! All changes made in this file will be lost when recompiling UI file!
|
||||
################################################################################
|
||||
|
||||
from PySide6.QtCore import (
|
||||
QCoreApplication,
|
||||
QDate,
|
||||
QDateTime,
|
||||
QLocale,
|
||||
QMetaObject,
|
||||
QObject,
|
||||
QPoint,
|
||||
QRect,
|
||||
QSize,
|
||||
Qt,
|
||||
QTime,
|
||||
QUrl,
|
||||
)
|
||||
from PySide6.QtGui import (
|
||||
QAction,
|
||||
QBrush,
|
||||
QColor,
|
||||
QConicalGradient,
|
||||
QCursor,
|
||||
QFont,
|
||||
QFontDatabase,
|
||||
QGradient,
|
||||
QIcon,
|
||||
QImage,
|
||||
QKeySequence,
|
||||
QLinearGradient,
|
||||
QPainter,
|
||||
QPalette,
|
||||
QPixmap,
|
||||
QRadialGradient,
|
||||
QTransform,
|
||||
)
|
||||
from PySide6.QtWidgets import (
|
||||
QApplication,
|
||||
QCheckBox,
|
||||
QComboBox,
|
||||
QFormLayout,
|
||||
QFrame,
|
||||
QGridLayout,
|
||||
QGroupBox,
|
||||
QHBoxLayout,
|
||||
QHeaderView,
|
||||
QLabel,
|
||||
QLineEdit,
|
||||
QMainWindow,
|
||||
QMenu,
|
||||
QMenuBar,
|
||||
QPushButton,
|
||||
QRadioButton,
|
||||
QSizePolicy,
|
||||
QSpacerItem,
|
||||
QStatusBar,
|
||||
QTableWidget,
|
||||
QTableWidgetItem,
|
||||
QTabWidget,
|
||||
QToolButton,
|
||||
QVBoxLayout,
|
||||
QWidget,
|
||||
)
|
||||
|
||||
|
||||
class Ui_MainWindow(object):
|
||||
def setupUi(self, MainWindow):
|
||||
if not MainWindow.objectName():
|
||||
MainWindow.setObjectName("MainWindow")
|
||||
MainWindow.resize(1280, 720)
|
||||
sizePolicy = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth())
|
||||
MainWindow.setSizePolicy(sizePolicy)
|
||||
self.centralwidget = QWidget(MainWindow)
|
||||
self.centralwidget.setObjectName("centralwidget")
|
||||
sizePolicy1 = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
|
||||
sizePolicy1.setHorizontalStretch(0)
|
||||
sizePolicy1.setVerticalStretch(0)
|
||||
sizePolicy1.setHeightForWidth(
|
||||
self.centralwidget.sizePolicy().hasHeightForWidth()
|
||||
)
|
||||
self.centralwidget.setSizePolicy(sizePolicy1)
|
||||
self.verticalLayoutWidget = QWidget(self.centralwidget)
|
||||
self.verticalLayoutWidget.setObjectName("verticalLayoutWidget")
|
||||
self.verticalLayoutWidget.setGeometry(QRect(0, 0, 1271, 671))
|
||||
self.verticalLayout = QVBoxLayout(self.verticalLayoutWidget)
|
||||
self.verticalLayout.setObjectName("verticalLayout")
|
||||
self.verticalLayout.setContentsMargins(0, 0, 0, 0)
|
||||
self.horizontalLayout = QHBoxLayout()
|
||||
self.horizontalLayout.setObjectName("horizontalLayout")
|
||||
self.gridLayout = QGridLayout()
|
||||
self.gridLayout.setObjectName("gridLayout")
|
||||
self.tabWidget = QTabWidget(self.verticalLayoutWidget)
|
||||
self.tabWidget.setObjectName("tabWidget")
|
||||
self.tab = QWidget()
|
||||
self.tab.setObjectName("tab")
|
||||
sizePolicy2 = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Preferred)
|
||||
sizePolicy2.setHorizontalStretch(0)
|
||||
sizePolicy2.setVerticalStretch(0)
|
||||
sizePolicy2.setHeightForWidth(self.tab.sizePolicy().hasHeightForWidth())
|
||||
self.tab.setSizePolicy(sizePolicy2)
|
||||
self.horizontalLayoutWidget_2 = QWidget(self.tab)
|
||||
self.horizontalLayoutWidget_2.setObjectName("horizontalLayoutWidget_2")
|
||||
self.horizontalLayoutWidget_2.setGeometry(QRect(0, 0, 1261, 161))
|
||||
self.horizontalLayout_2 = QHBoxLayout(self.horizontalLayoutWidget_2)
|
||||
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
|
||||
self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0)
|
||||
self.formLayout = QFormLayout()
|
||||
self.formLayout.setObjectName("formLayout")
|
||||
self.verticalLayout_2 = QVBoxLayout()
|
||||
self.verticalLayout_2.setObjectName("verticalLayout_2")
|
||||
self.verticalSpacer = QSpacerItem(
|
||||
20, 40, QSizePolicy.Minimum, QSizePolicy.Expanding
|
||||
)
|
||||
|
||||
self.verticalLayout_2.addItem(self.verticalSpacer)
|
||||
|
||||
self.load_app = QPushButton(self.horizontalLayoutWidget_2)
|
||||
self.load_app.setObjectName("load_app")
|
||||
|
||||
self.verticalLayout_2.addWidget(self.load_app)
|
||||
|
||||
self.create_new_app = QPushButton(self.horizontalLayoutWidget_2)
|
||||
self.create_new_app.setObjectName("create_new_app")
|
||||
|
||||
self.verticalLayout_2.addWidget(self.create_new_app)
|
||||
|
||||
self.verticalSpacer_2 = QSpacerItem(
|
||||
20, 40, QSizePolicy.Minimum, QSizePolicy.Expanding
|
||||
)
|
||||
|
||||
self.verticalLayout_2.addItem(self.verticalSpacer_2)
|
||||
|
||||
self.formLayout.setLayout(0, QFormLayout.LabelRole, self.verticalLayout_2)
|
||||
|
||||
self.tableWidget_apparate = QTableWidget(self.horizontalLayoutWidget_2)
|
||||
if self.tableWidget_apparate.columnCount() < 4:
|
||||
self.tableWidget_apparate.setColumnCount(4)
|
||||
__qtablewidgetitem = QTableWidgetItem()
|
||||
self.tableWidget_apparate.setHorizontalHeaderItem(0, __qtablewidgetitem)
|
||||
__qtablewidgetitem1 = QTableWidgetItem()
|
||||
self.tableWidget_apparate.setHorizontalHeaderItem(1, __qtablewidgetitem1)
|
||||
__qtablewidgetitem2 = QTableWidgetItem()
|
||||
self.tableWidget_apparate.setHorizontalHeaderItem(2, __qtablewidgetitem2)
|
||||
__qtablewidgetitem3 = QTableWidgetItem()
|
||||
self.tableWidget_apparate.setHorizontalHeaderItem(3, __qtablewidgetitem3)
|
||||
self.tableWidget_apparate.setObjectName("tableWidget_apparate")
|
||||
|
||||
self.formLayout.setWidget(0, QFormLayout.FieldRole, self.tableWidget_apparate)
|
||||
|
||||
self.horizontalLayout_3 = QHBoxLayout()
|
||||
self.horizontalLayout_3.setObjectName("horizontalLayout_3")
|
||||
|
||||
self.formLayout.setLayout(2, QFormLayout.LabelRole, self.horizontalLayout_3)
|
||||
|
||||
self.horizontalLayout_4 = QHBoxLayout()
|
||||
self.horizontalLayout_4.setObjectName("horizontalLayout_4")
|
||||
|
||||
self.formLayout.setLayout(1, QFormLayout.FieldRole, self.horizontalLayout_4)
|
||||
|
||||
self.horizontalLayout_2.addLayout(self.formLayout)
|
||||
|
||||
self.line = QFrame(self.tab)
|
||||
self.line.setObjectName("line")
|
||||
self.line.setGeometry(QRect(0, 160, 1261, 21))
|
||||
self.line.setFrameShape(QFrame.HLine)
|
||||
self.line.setFrameShadow(QFrame.Sunken)
|
||||
self.gridLayoutWidget_2 = QWidget(self.tab)
|
||||
self.gridLayoutWidget_2.setObjectName("gridLayoutWidget_2")
|
||||
self.gridLayoutWidget_2.setGeometry(QRect(0, 180, 1261, 461))
|
||||
self.gridLayout_2 = QGridLayout(self.gridLayoutWidget_2)
|
||||
self.gridLayout_2.setObjectName("gridLayout_2")
|
||||
self.gridLayout_2.setContentsMargins(0, 0, 0, 0)
|
||||
self.tableWidget_apparat_media = QTableWidget(self.gridLayoutWidget_2)
|
||||
if self.tableWidget_apparat_media.columnCount() < 4:
|
||||
self.tableWidget_apparat_media.setColumnCount(4)
|
||||
__qtablewidgetitem4 = QTableWidgetItem()
|
||||
self.tableWidget_apparat_media.setHorizontalHeaderItem(0, __qtablewidgetitem4)
|
||||
__qtablewidgetitem5 = QTableWidgetItem()
|
||||
self.tableWidget_apparat_media.setHorizontalHeaderItem(1, __qtablewidgetitem5)
|
||||
__qtablewidgetitem6 = QTableWidgetItem()
|
||||
self.tableWidget_apparat_media.setHorizontalHeaderItem(2, __qtablewidgetitem6)
|
||||
__qtablewidgetitem7 = QTableWidgetItem()
|
||||
self.tableWidget_apparat_media.setHorizontalHeaderItem(3, __qtablewidgetitem7)
|
||||
self.tableWidget_apparat_media.setObjectName("tableWidget_apparat_media")
|
||||
|
||||
self.gridLayout_2.addWidget(self.tableWidget_apparat_media, 2, 0, 1, 1)
|
||||
|
||||
self.app_group_box = QGroupBox(self.gridLayoutWidget_2)
|
||||
self.app_group_box.setObjectName("app_group_box")
|
||||
sizePolicy3 = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Expanding)
|
||||
sizePolicy3.setHorizontalStretch(0)
|
||||
sizePolicy3.setVerticalStretch(0)
|
||||
sizePolicy3.setHeightForWidth(
|
||||
self.app_group_box.sizePolicy().hasHeightForWidth()
|
||||
)
|
||||
self.app_group_box.setSizePolicy(sizePolicy3)
|
||||
font = QFont()
|
||||
font.setPointSize(12)
|
||||
font.setBold(True)
|
||||
self.app_group_box.setFont(font)
|
||||
self.app_group_box.setAlignment(
|
||||
Qt.AlignLeading | Qt.AlignLeft | Qt.AlignVCenter
|
||||
)
|
||||
self.app_group_box.setCheckable(False)
|
||||
self.dokument_list = QTableWidget(self.app_group_box)
|
||||
if self.dokument_list.columnCount() < 2:
|
||||
self.dokument_list.setColumnCount(2)
|
||||
__qtablewidgetitem8 = QTableWidgetItem()
|
||||
self.dokument_list.setHorizontalHeaderItem(0, __qtablewidgetitem8)
|
||||
__qtablewidgetitem9 = QTableWidgetItem()
|
||||
self.dokument_list.setHorizontalHeaderItem(1, __qtablewidgetitem9)
|
||||
self.dokument_list.setObjectName("dokument_list")
|
||||
self.dokument_list.setGeometry(QRect(820, 20, 256, 192))
|
||||
self.frame = QFrame(self.app_group_box)
|
||||
self.frame.setObjectName("frame")
|
||||
self.frame.setGeometry(QRect(10, 30, 731, 151))
|
||||
sizePolicy1.setHeightForWidth(self.frame.sizePolicy().hasHeightForWidth())
|
||||
self.frame.setSizePolicy(sizePolicy1)
|
||||
self.frame.setFrameShape(QFrame.StyledPanel)
|
||||
self.frame.setFrameShadow(QFrame.Raised)
|
||||
self.drpdwn_prof_title = QComboBox(self.frame)
|
||||
self.drpdwn_prof_title.setObjectName("drpdwn_prof_title")
|
||||
self.drpdwn_prof_title.setGeometry(QRect(110, 50, 69, 22))
|
||||
self.label_5 = QLabel(self.frame)
|
||||
self.label_5.setObjectName("label_5")
|
||||
self.label_5.setGeometry(QRect(250, 20, 91, 21))
|
||||
font1 = QFont()
|
||||
font1.setPointSize(9)
|
||||
font1.setBold(False)
|
||||
self.label_5.setFont(font1)
|
||||
self.lineEdit = QLineEdit(self.frame)
|
||||
self.lineEdit.setObjectName("lineEdit")
|
||||
self.lineEdit.setGeometry(QRect(110, 80, 121, 20))
|
||||
self.lineEdit.setFont(font1)
|
||||
self.sem_winter = QRadioButton(self.frame)
|
||||
self.sem_winter.setObjectName("sem_winter")
|
||||
self.sem_winter.setGeometry(QRect(340, 50, 82, 17))
|
||||
self.sem_winter.setFont(font1)
|
||||
self.label_4 = QLabel(self.frame)
|
||||
self.label_4.setObjectName("label_4")
|
||||
self.label_4.setGeometry(QRect(10, 80, 71, 21))
|
||||
self.label_4.setFont(font1)
|
||||
self.drpdwn_app_nr = QComboBox(self.frame)
|
||||
self.drpdwn_app_nr.setObjectName("drpdwn_app_nr")
|
||||
self.drpdwn_app_nr.setGeometry(QRect(110, 20, 69, 22))
|
||||
self.app_name = QLineEdit(self.frame)
|
||||
self.app_name.setObjectName("app_name")
|
||||
self.app_name.setGeometry(QRect(340, 20, 113, 20))
|
||||
self.sem_sommer = QRadioButton(self.frame)
|
||||
self.sem_sommer.setObjectName("sem_sommer")
|
||||
self.sem_sommer.setGeometry(QRect(340, 70, 82, 17))
|
||||
self.sem_sommer.setFont(font1)
|
||||
self.label_3 = QLabel(self.frame)
|
||||
self.label_3.setObjectName("label_3")
|
||||
self.label_3.setGeometry(QRect(10, 50, 61, 20))
|
||||
self.label_3.setFont(font1)
|
||||
self.label_6 = QLabel(self.frame)
|
||||
self.label_6.setObjectName("label_6")
|
||||
self.label_6.setGeometry(QRect(270, 60, 51, 21))
|
||||
self.label_6.setFont(font1)
|
||||
self.sem_year = QLineEdit(self.frame)
|
||||
self.sem_year.setObjectName("sem_year")
|
||||
self.sem_year.setGeometry(QRect(410, 60, 113, 20))
|
||||
self.sem_year.setFont(font1)
|
||||
self.label_2 = QLabel(self.frame)
|
||||
self.label_2.setObjectName("label_2")
|
||||
self.label_2.setGeometry(QRect(10, 20, 101, 21))
|
||||
self.label_2.setFont(font1)
|
||||
self.btn_apparat_save = QPushButton(self.frame)
|
||||
self.btn_apparat_save.setObjectName("btn_apparat_save")
|
||||
self.btn_apparat_save.setGeometry(QRect(260, 120, 75, 23))
|
||||
self.btn_apparat_save.setFont(font1)
|
||||
self.btn_apparat_apply = QPushButton(self.frame)
|
||||
self.btn_apparat_apply.setObjectName("btn_apparat_apply")
|
||||
self.btn_apparat_apply.setGeometry(QRect(350, 120, 75, 23))
|
||||
self.btn_apparat_apply.setFont(font1)
|
||||
self.checkBox = QCheckBox(self.frame)
|
||||
self.checkBox.setObjectName("checkBox")
|
||||
self.checkBox.setGeometry(QRect(340, 90, 101, 17))
|
||||
self.checkBox.setFont(font1)
|
||||
self.btn_add_document = QPushButton(self.app_group_box)
|
||||
self.btn_add_document.setObjectName("btn_add_document")
|
||||
self.btn_add_document.setGeometry(QRect(1100, 40, 131, 25))
|
||||
self.btn_add_document.setFont(font1)
|
||||
self.btn_open_document = QPushButton(self.app_group_box)
|
||||
self.btn_open_document.setObjectName("btn_open_document")
|
||||
self.btn_open_document.setGeometry(QRect(1100, 80, 131, 25))
|
||||
self.btn_open_document.setFont(font1)
|
||||
self.toolButton = QToolButton(self.app_group_box)
|
||||
self.toolButton.setObjectName("toolButton")
|
||||
self.toolButton.setGeometry(QRect(1110, 110, 25, 19))
|
||||
self.label_7 = QLabel(self.app_group_box)
|
||||
self.label_7.setObjectName("label_7")
|
||||
self.label_7.setGeometry(QRect(20, 200, 47, 21))
|
||||
self.label_7.setFont(font1)
|
||||
self.lineEdit_2 = QLineEdit(self.app_group_box)
|
||||
self.lineEdit_2.setObjectName("lineEdit_2")
|
||||
self.lineEdit_2.setGeometry(QRect(80, 200, 211, 20))
|
||||
self.lineEdit_2.setFont(font1)
|
||||
self.label = QLabel(self.app_group_box)
|
||||
self.label.setObjectName("label")
|
||||
self.label.setGeometry(QRect(0, 180, 1259, 18))
|
||||
font2 = QFont()
|
||||
font2.setPointSize(11)
|
||||
font2.setBold(True)
|
||||
self.label.setFont(font2)
|
||||
|
||||
self.gridLayout_2.addWidget(self.app_group_box, 1, 0, 1, 1)
|
||||
|
||||
self.tabWidget.addTab(self.tab, "")
|
||||
self.tab_2 = QWidget()
|
||||
self.tab_2.setObjectName("tab_2")
|
||||
self.tabWidget.addTab(self.tab_2, "")
|
||||
|
||||
self.gridLayout.addWidget(self.tabWidget, 0, 0, 1, 1)
|
||||
|
||||
self.horizontalLayout.addLayout(self.gridLayout)
|
||||
|
||||
self.verticalLayout.addLayout(self.horizontalLayout)
|
||||
|
||||
MainWindow.setCentralWidget(self.centralwidget)
|
||||
self.menubar = QMenuBar(MainWindow)
|
||||
self.menubar.setObjectName("menubar")
|
||||
self.menubar.setGeometry(QRect(0, 0, 1280, 21))
|
||||
self.menuDatei = QMenu(self.menubar)
|
||||
self.menuDatei.setObjectName("menuDatei")
|
||||
self.menuEinstellungen = QMenu(self.menubar)
|
||||
self.menuEinstellungen.setObjectName("menuEinstellungen")
|
||||
MainWindow.setMenuBar(self.menubar)
|
||||
self.statusbar = QStatusBar(MainWindow)
|
||||
self.statusbar.setObjectName("statusbar")
|
||||
MainWindow.setStatusBar(self.statusbar)
|
||||
|
||||
self.menubar.addAction(self.menuDatei.menuAction())
|
||||
self.menubar.addAction(self.menuEinstellungen.menuAction())
|
||||
|
||||
self.retranslateUi(MainWindow)
|
||||
|
||||
self.tabWidget.setCurrentIndex(0)
|
||||
|
||||
QMetaObject.connectSlotsByName(MainWindow)
|
||||
|
||||
# setupUi
|
||||
|
||||
def retranslateUi(self, MainWindow):
|
||||
MainWindow.setWindowTitle(
|
||||
QCoreApplication.translate("MainWindow", "MainWindow", None)
|
||||
)
|
||||
# if QT_CONFIG(tooltip)
|
||||
self.load_app.setToolTip(
|
||||
QCoreApplication.translate(
|
||||
"MainWindow", "Load the Semesterapparate from the database", None
|
||||
)
|
||||
)
|
||||
# endif // QT_CONFIG(tooltip)
|
||||
self.load_app.setText(
|
||||
QCoreApplication.translate("MainWindow", "App. aufrufen", None)
|
||||
)
|
||||
self.create_new_app.setText(
|
||||
QCoreApplication.translate("MainWindow", "neu. App anlegen", None)
|
||||
)
|
||||
___qtablewidgetitem = self.tableWidget_apparate.horizontalHeaderItem(0)
|
||||
___qtablewidgetitem.setText(
|
||||
QCoreApplication.translate("MainWindow", "AppNr", None)
|
||||
)
|
||||
___qtablewidgetitem1 = self.tableWidget_apparate.horizontalHeaderItem(1)
|
||||
___qtablewidgetitem1.setText(
|
||||
QCoreApplication.translate("MainWindow", "App Name", None)
|
||||
)
|
||||
___qtablewidgetitem2 = self.tableWidget_apparate.horizontalHeaderItem(2)
|
||||
___qtablewidgetitem2.setText(
|
||||
QCoreApplication.translate("MainWindow", "Professor", None)
|
||||
)
|
||||
___qtablewidgetitem3 = self.tableWidget_apparate.horizontalHeaderItem(3)
|
||||
___qtablewidgetitem3.setText(
|
||||
QCoreApplication.translate("MainWindow", "Dauerapparat", None)
|
||||
)
|
||||
___qtablewidgetitem4 = self.tableWidget_apparat_media.horizontalHeaderItem(0)
|
||||
___qtablewidgetitem4.setText(
|
||||
QCoreApplication.translate("MainWindow", "Buchtitel", None)
|
||||
)
|
||||
___qtablewidgetitem5 = self.tableWidget_apparat_media.horizontalHeaderItem(1)
|
||||
___qtablewidgetitem5.setText(
|
||||
QCoreApplication.translate("MainWindow", "Autor", None)
|
||||
)
|
||||
___qtablewidgetitem6 = self.tableWidget_apparat_media.horizontalHeaderItem(2)
|
||||
___qtablewidgetitem6.setText(
|
||||
QCoreApplication.translate("MainWindow", "Auflage", None)
|
||||
)
|
||||
___qtablewidgetitem7 = self.tableWidget_apparat_media.horizontalHeaderItem(3)
|
||||
___qtablewidgetitem7.setText(
|
||||
QCoreApplication.translate("MainWindow", "Signatur", None)
|
||||
)
|
||||
self.app_group_box.setTitle(
|
||||
QCoreApplication.translate("MainWindow", "Apparatsdetails", None)
|
||||
)
|
||||
___qtablewidgetitem8 = self.dokument_list.horizontalHeaderItem(0)
|
||||
___qtablewidgetitem8.setText(
|
||||
QCoreApplication.translate("MainWindow", "Dokumentname", None)
|
||||
)
|
||||
___qtablewidgetitem9 = self.dokument_list.horizontalHeaderItem(1)
|
||||
___qtablewidgetitem9.setText(
|
||||
QCoreApplication.translate("MainWindow", "Typ", None)
|
||||
)
|
||||
self.label_5.setText(
|
||||
QCoreApplication.translate("MainWindow", "Apparatsname", None)
|
||||
)
|
||||
self.lineEdit.setPlaceholderText(
|
||||
QCoreApplication.translate("MainWindow", "Nachname, Vorname", None)
|
||||
)
|
||||
self.sem_winter.setText(
|
||||
QCoreApplication.translate("MainWindow", "Winter", None)
|
||||
)
|
||||
self.label_4.setText(
|
||||
QCoreApplication.translate("MainWindow", "Prof. Name", None)
|
||||
)
|
||||
self.sem_sommer.setText(
|
||||
QCoreApplication.translate("MainWindow", "Sommer", None)
|
||||
)
|
||||
self.label_3.setText(
|
||||
QCoreApplication.translate("MainWindow", "Prof. Titel", None)
|
||||
)
|
||||
self.label_6.setText(QCoreApplication.translate("MainWindow", "Semester", None))
|
||||
self.sem_year.setPlaceholderText(
|
||||
QCoreApplication.translate("MainWindow", "2023", None)
|
||||
)
|
||||
self.label_2.setText(
|
||||
QCoreApplication.translate("MainWindow", "Apparatsnummer", None)
|
||||
)
|
||||
self.btn_apparat_save.setText(
|
||||
QCoreApplication.translate("MainWindow", "Speichern", None)
|
||||
)
|
||||
self.btn_apparat_apply.setText(
|
||||
QCoreApplication.translate("MainWindow", "Aktualisieren", None)
|
||||
)
|
||||
self.checkBox.setText(
|
||||
QCoreApplication.translate("MainWindow", "Dauerapparat", None)
|
||||
)
|
||||
self.btn_add_document.setText(
|
||||
QCoreApplication.translate("MainWindow", "Dokument hinzuf\u00fcgen", None)
|
||||
)
|
||||
self.btn_open_document.setText(
|
||||
QCoreApplication.translate("MainWindow", "Dokument \u00f6ffnen", None)
|
||||
)
|
||||
self.toolButton.setText(QCoreApplication.translate("MainWindow", "...", None))
|
||||
self.label_7.setText(QCoreApplication.translate("MainWindow", "Suche", None))
|
||||
self.lineEdit_2.setPlaceholderText(
|
||||
QCoreApplication.translate("MainWindow", "Buch oder Signatur", None)
|
||||
)
|
||||
self.label.setText(
|
||||
QCoreApplication.translate("MainWindow", "Medienliste", None)
|
||||
)
|
||||
self.tabWidget.setTabText(
|
||||
self.tabWidget.indexOf(self.tab),
|
||||
QCoreApplication.translate("MainWindow", "Tab 1", None),
|
||||
)
|
||||
self.tabWidget.setTabText(
|
||||
self.tabWidget.indexOf(self.tab_2),
|
||||
QCoreApplication.translate("MainWindow", "Tab 2", None),
|
||||
)
|
||||
self.menuDatei.setTitle(QCoreApplication.translate("MainWindow", "Datei", None))
|
||||
self.menuEinstellungen.setTitle(
|
||||
QCoreApplication.translate("MainWindow", "Einstellungen", None)
|
||||
)
|
||||
|
||||
# retranslateUi
|
||||
67
src/ui/widgets/Ui_message_widget.py
Normal file
67
src/ui/widgets/Ui_message_widget.py
Normal file
@@ -0,0 +1,67 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\widgets\message_widget.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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
|
||||
|
||||
from src.backend.database import Database
|
||||
|
||||
|
||||
class Ui_Form(object):
|
||||
def setupUi(self, Form):
|
||||
Form.setObjectName("Form")
|
||||
Form.resize(295, 110)
|
||||
self.label = QtWidgets.QLabel(Form)
|
||||
self.label.setGeometry(QtCore.QRect(10, 0, 47, 21))
|
||||
self.label.setObjectName("label")
|
||||
self.lineEdit = QtWidgets.QLineEdit(Form)
|
||||
self.lineEdit.setEnabled(True)
|
||||
self.lineEdit.setGeometry(QtCore.QRect(60, 0, 41, 20))
|
||||
self.lineEdit.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
|
||||
self.lineEdit.setReadOnly(True)
|
||||
self.lineEdit.setObjectName("lineEdit")
|
||||
self.label_2 = QtWidgets.QLabel(Form)
|
||||
self.label_2.setGeometry(QtCore.QRect(10, 20, 51, 21))
|
||||
self.label_2.setObjectName("label_2")
|
||||
self.textEdit = QtWidgets.QTextEdit(Form)
|
||||
self.textEdit.setGeometry(QtCore.QRect(10, 40, 281, 66))
|
||||
self.textEdit.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
|
||||
self.textEdit.setInputMethodHints(QtCore.Qt.InputMethodHint.ImhNone)
|
||||
self.textEdit.setReadOnly(True)
|
||||
self.textEdit.setObjectName("textEdit")
|
||||
self.pushButton = QtWidgets.QPushButton(Form)
|
||||
self.pushButton.setGeometry(QtCore.QRect(210, 10, 75, 23))
|
||||
self.pushButton.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
|
||||
self.pushButton.setObjectName("pushButton")
|
||||
self.hidden_id = QtWidgets.QLabel(Form)
|
||||
self.hidden_id.setGeometry(QtCore.QRect(140, 10, 47, 13))
|
||||
self.hidden_id.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
|
||||
self.hidden_id.setObjectName("hidden_id")
|
||||
self.hidden_id.hide()
|
||||
self.delete = False
|
||||
self.pushButton.clicked.connect(self.delete_message)
|
||||
self.retranslateUi(Form)
|
||||
QtCore.QMetaObject.connectSlotsByName(Form)
|
||||
Form.setTabOrder(self.lineEdit, self.textEdit)
|
||||
|
||||
def retranslateUi(self, Form):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Form.setWindowTitle(_translate("Form", "Form"))
|
||||
self.label.setText(_translate("Form", "Apparat:"))
|
||||
self.label_2.setText(_translate("Form", "Nachricht:"))
|
||||
self.pushButton.setText(_translate("Form", "Löschen"))
|
||||
self.hidden_id.setText(_translate("Form", "TextLabel"))
|
||||
|
||||
def set_message(self, message: str, apparat: int, app_id: int):
|
||||
self.textEdit.setText(message)
|
||||
self.lineEdit.setText(str(apparat) if apparat else "Alle")
|
||||
self.hidden_id.setText(str(app_id))
|
||||
|
||||
def delete_message(self):
|
||||
db = Database()
|
||||
print("deleting message")
|
||||
db.delete_message(self.hidden_id.text())
|
||||
149
src/ui/widgets/Ui_progress_overview_widget.py
Normal file
149
src/ui/widgets/Ui_progress_overview_widget.py
Normal file
@@ -0,0 +1,149 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\widgets\progress_overview_widget.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.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, 751)
|
||||
sizePolicy = QtWidgets.QSizePolicy(
|
||||
QtWidgets.QSizePolicy.Policy.Fixed, QtWidgets.QSizePolicy.Policy.Fixed
|
||||
)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(Form.sizePolicy().hasHeightForWidth())
|
||||
Form.setSizePolicy(sizePolicy)
|
||||
Form.setMaximumSize(QtCore.QSize(300, 751))
|
||||
self.group_software = QtWidgets.QGroupBox(Form)
|
||||
self.group_software.setEnabled(True)
|
||||
self.group_software.setGeometry(QtCore.QRect(10, 10, 281, 211))
|
||||
font = QtGui.QFont()
|
||||
font.setPointSize(10)
|
||||
font.setBold(True)
|
||||
font.setWeight(75)
|
||||
self.group_software.setFont(font)
|
||||
self.group_software.setStatusTip("")
|
||||
self.group_software.setFlat(False)
|
||||
self.group_software.setCheckable(False)
|
||||
self.group_software.setChecked(False)
|
||||
self.group_software.setObjectName("group_software")
|
||||
self.checkBox = QtWidgets.QCheckBox(self.group_software)
|
||||
self.checkBox.setGeometry(QtCore.QRect(10, 20, 241, 41))
|
||||
font = QtGui.QFont()
|
||||
font.setPointSize(8)
|
||||
font.setBold(False)
|
||||
font.setWeight(50)
|
||||
self.checkBox.setFont(font)
|
||||
self.checkBox.setObjectName("checkBox")
|
||||
self.checkBox_2 = QtWidgets.QCheckBox(self.group_software)
|
||||
self.checkBox_2.setGeometry(QtCore.QRect(10, 50, 241, 41))
|
||||
font = QtGui.QFont()
|
||||
font.setPointSize(8)
|
||||
font.setBold(False)
|
||||
font.setWeight(50)
|
||||
self.checkBox_2.setFont(font)
|
||||
self.checkBox_2.setObjectName("checkBox_2")
|
||||
self.checkBox_3 = QtWidgets.QCheckBox(self.group_software)
|
||||
self.checkBox_3.setGeometry(QtCore.QRect(10, 130, 241, 41))
|
||||
font = QtGui.QFont()
|
||||
font.setPointSize(8)
|
||||
font.setBold(False)
|
||||
font.setWeight(50)
|
||||
self.checkBox_3.setFont(font)
|
||||
self.checkBox_3.setObjectName("checkBox_3")
|
||||
self.groupBox_2 = QtWidgets.QGroupBox(Form)
|
||||
self.groupBox_2.setGeometry(QtCore.QRect(10, 220, 281, 251))
|
||||
font = QtGui.QFont()
|
||||
font.setPointSize(10)
|
||||
font.setBold(True)
|
||||
font.setItalic(False)
|
||||
font.setUnderline(False)
|
||||
font.setWeight(75)
|
||||
font.setKerning(True)
|
||||
font.setStyleStrategy(QtGui.QFont.StyleStrategy.PreferDefault)
|
||||
self.groupBox_2.setFont(font)
|
||||
self.groupBox_2.setObjectName("groupBox_2")
|
||||
self.checkBox_4 = QtWidgets.QCheckBox(self.groupBox_2)
|
||||
self.checkBox_4.setGeometry(QtCore.QRect(10, 20, 241, 41))
|
||||
font = QtGui.QFont()
|
||||
font.setPointSize(8)
|
||||
font.setBold(False)
|
||||
font.setWeight(50)
|
||||
self.checkBox_4.setFont(font)
|
||||
self.checkBox_4.setObjectName("checkBox_4")
|
||||
self.checkBox_5 = QtWidgets.QCheckBox(self.groupBox_2)
|
||||
self.checkBox_5.setGeometry(QtCore.QRect(10, 50, 241, 41))
|
||||
font = QtGui.QFont()
|
||||
font.setPointSize(8)
|
||||
font.setBold(False)
|
||||
font.setWeight(50)
|
||||
self.checkBox_5.setFont(font)
|
||||
self.checkBox_5.setObjectName("checkBox_5")
|
||||
self.checkBox_6 = QtWidgets.QCheckBox(self.groupBox_2)
|
||||
self.checkBox_6.setGeometry(QtCore.QRect(10, 80, 161, 41))
|
||||
font = QtGui.QFont()
|
||||
font.setPointSize(8)
|
||||
font.setBold(False)
|
||||
font.setWeight(50)
|
||||
self.checkBox_6.setFont(font)
|
||||
self.checkBox_6.setObjectName("checkBox_6")
|
||||
self.pushButton = QtWidgets.QPushButton(self.groupBox_2)
|
||||
self.pushButton.setGeometry(QtCore.QRect(160, 90, 101, 23))
|
||||
font = QtGui.QFont()
|
||||
font.setPointSize(8)
|
||||
font.setBold(False)
|
||||
font.setWeight(50)
|
||||
self.pushButton.setFont(font)
|
||||
self.pushButton.setStatusTip("")
|
||||
self.pushButton.setWhatsThis("")
|
||||
self.pushButton.setAccessibleDescription("")
|
||||
self.pushButton.setAutoFillBackground(False)
|
||||
icon = QtGui.QIcon()
|
||||
icon.addPixmap(
|
||||
QtGui.QPixmap(
|
||||
"c:\\Users\\aky547\\GitHub\\Semesterapparate\\ui\\widgets\\../icons/information.png"
|
||||
),
|
||||
QtGui.QIcon.Mode.Normal,
|
||||
QtGui.QIcon.State.Off,
|
||||
)
|
||||
self.pushButton.setIcon(icon)
|
||||
self.pushButton.setCheckable(False)
|
||||
self.pushButton.setChecked(False)
|
||||
self.pushButton.setObjectName("pushButton")
|
||||
|
||||
self.retranslateUi(Form)
|
||||
QtCore.QMetaObject.connectSlotsByName(Form)
|
||||
|
||||
def retranslateUi(self, Form):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Form.setWindowTitle(_translate("Form", "Form"))
|
||||
self.group_software.setToolTip(
|
||||
_translate(
|
||||
"Form",
|
||||
"Hier klicken, um die aDIS Abfrage in die Zwischenablage zu kopieren",
|
||||
)
|
||||
)
|
||||
self.group_software.setTitle(_translate("Form", "Software"))
|
||||
self.checkBox.setText(_translate("Form", "Apparatsdaten eingegeben"))
|
||||
self.checkBox_2.setText(_translate("Form", "Medien hinzugefügt / importiert"))
|
||||
self.checkBox_3.setText(
|
||||
_translate("Form", "Prof-ID und Apparat-ID eingetragen")
|
||||
)
|
||||
self.groupBox_2.setTitle(_translate("Form", "aDIS"))
|
||||
self.checkBox_4.setText(_translate("Form", "Medien geprüft"))
|
||||
self.checkBox_5.setText(_translate("Form", "Medien bearbeitet"))
|
||||
self.checkBox_6.setText(_translate("Form", "Apparat angelegt"))
|
||||
self.pushButton.setToolTip(
|
||||
_translate(
|
||||
"Form",
|
||||
"Hier klicken, um die aDIS Abfrage in die Zwischenablage zu kopieren",
|
||||
)
|
||||
)
|
||||
self.pushButton.setText(_translate("Form", " aDIS Abfrage"))
|
||||
5
src/ui/widgets/__init__.py
Normal file
5
src/ui/widgets/__init__.py
Normal file
@@ -0,0 +1,5 @@
|
||||
__all__ = ["filepicker"]
|
||||
from .collapse import StatusWidget
|
||||
from .filepicker import FilePicker
|
||||
from .graph import GraphWidget
|
||||
from .Ui_message_widget import Ui_Form as Message_Widget
|
||||
76
src/ui/widgets/collapse.py
Normal file
76
src/ui/widgets/collapse.py
Normal file
@@ -0,0 +1,76 @@
|
||||
# import pysignal pyslot
|
||||
from PyQt6.QtCore import pyqtSignal
|
||||
from PyQt6.QtWidgets import (
|
||||
QApplication,
|
||||
QTreeWidget,
|
||||
QTreeWidgetItem,
|
||||
QVBoxLayout,
|
||||
QWidget,
|
||||
)
|
||||
|
||||
|
||||
class StatusWidget(QWidget):
|
||||
person_double_clicked = pyqtSignal(str,str, int)
|
||||
|
||||
def __init__(self, data, header_label: str):
|
||||
super(StatusWidget, self).__init__()
|
||||
|
||||
self.tree_widget = QTreeWidget()
|
||||
self.tree_widget.setHeaderLabels([header_label])
|
||||
self.populate_tree(data)
|
||||
self.header = header_label
|
||||
layout = QVBoxLayout()
|
||||
layout.addWidget(self.tree_widget)
|
||||
self.setLayout(layout)
|
||||
self.tree_widget.itemDoubleClicked.connect(self.on_item_double_clicked)
|
||||
def on_item_double_clicked(self, item: QTreeWidgetItem, column: int):
|
||||
parent_depth = 0
|
||||
parent = item.parent()
|
||||
while parent:
|
||||
parent_depth += 1
|
||||
parent = parent.parent()
|
||||
print(parent_depth)
|
||||
# Emit the person_double_clicked signal with the name of the person and the parent depth
|
||||
self.person_double_clicked.emit(self.header,item.text(column), parent_depth)
|
||||
|
||||
def populate_tree(self, data):
|
||||
if data == {}:
|
||||
return
|
||||
|
||||
def __listcount(dictlist: dict[dict[str:list]]):
|
||||
ret = 0
|
||||
for _, value in dictlist.items():
|
||||
for _, value2 in value.items():
|
||||
ret += len(value2)
|
||||
return ret
|
||||
|
||||
listitems = __listcount(data)
|
||||
for action, items in data.items():
|
||||
action_item = QTreeWidgetItem(
|
||||
self.tree_widget, [f"{action} ({str(listitems)})"]
|
||||
)
|
||||
for person, entries in items.items():
|
||||
person_item = QTreeWidgetItem(
|
||||
action_item, [f"{person} ({str(len(entries))})"]
|
||||
)
|
||||
for entry in entries:
|
||||
entry_item = QTreeWidgetItem(person_item, [entry])
|
||||
# Make the person entry collapsible
|
||||
person_item.setExpanded(False)
|
||||
|
||||
# Make the action entry collapsible
|
||||
action_item.setExpanded(True)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
|
||||
app = QApplication(sys.argv)
|
||||
data = {"test": {"test2": ["test3", "test4"]}}
|
||||
widget = StatusWidget(data, "test")
|
||||
|
||||
widget.show()
|
||||
#detect emit signal
|
||||
widget.person_double_clicked.connect(lambda x: print(x))
|
||||
|
||||
sys.exit(app.exec())
|
||||
15
src/ui/widgets/default_apps.py
Normal file
15
src/ui/widgets/default_apps.py
Normal file
@@ -0,0 +1,15 @@
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class CollapsibleWidget(object):
|
||||
pass
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class CollapsibleWidget(object):
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class CollapsibleWidget(object):
|
||||
29
src/ui/widgets/filepicker.py
Normal file
29
src/ui/widgets/filepicker.py
Normal file
@@ -0,0 +1,29 @@
|
||||
from PyQt6.QtWidgets import QFileDialog, QApplication
|
||||
from PyQt6.QtCore import QSettings
|
||||
import sys
|
||||
|
||||
class FilePicker:
|
||||
def __init__(self):
|
||||
self.settings = QSettings("PH-Freiburg", "SAP")
|
||||
self.last_path = self.settings.value("last_path", "/")
|
||||
self.multi_select = True
|
||||
|
||||
def pick_files(self):
|
||||
filepicker = QFileDialog()
|
||||
filepicker.setFileMode(QFileDialog.FileMode.ExistingFiles)
|
||||
filepicker.setDirectory(self.last_path)
|
||||
filepicker.setOption(QFileDialog.Option.DontUseNativeDialog, True)
|
||||
#enable multi select
|
||||
filepicker.setOption(QFileDialog.Option.DontUseCustomDirectoryIcons, True)
|
||||
|
||||
files, _ = filepicker.getOpenFileNames(caption='Open file', directory=self.last_path)
|
||||
if files:
|
||||
self.last_path = files[0]
|
||||
self.settings.setValue("last_path", self.last_path)
|
||||
return files
|
||||
|
||||
if __name__ == '__main__':
|
||||
app = QApplication(sys.argv)
|
||||
picker = FilePicker()
|
||||
files = picker.pick_files()
|
||||
print(files)
|
||||
49
src/ui/widgets/graph.py
Normal file
49
src/ui/widgets/graph.py
Normal file
@@ -0,0 +1,49 @@
|
||||
import matplotlib
|
||||
|
||||
matplotlib.use("QtAgg")
|
||||
|
||||
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas
|
||||
from matplotlib.backends.backend_qt5agg import NavigationToolbar2QT as NavigationToolbar
|
||||
from matplotlib.figure import Figure
|
||||
from PyQt6 import QtCore, QtWidgets
|
||||
|
||||
|
||||
class graph(FigureCanvas):
|
||||
def __init__(self, parent=None, width=5, height=4, dpi=100):
|
||||
fig = Figure(figsize=(width, height), dpi=dpi)
|
||||
self.axes = fig.add_subplot(111)
|
||||
self.canvas = FigureCanvas(fig)
|
||||
super().__init__(fig)
|
||||
|
||||
|
||||
# display graph with multiple lines
|
||||
class GraphWidget(QtWidgets.QWidget):
|
||||
def __init__(self, parent=None, data=None, legend_labels=None):
|
||||
super().__init__()
|
||||
self.graph = graph(self, width=7, height=4.5, dpi=100)
|
||||
self.graph.axes.plot(data["x"], data["y"], "r", data["x"], data["y2"], "b")
|
||||
self.toolbar = NavigationToolbar(self.graph, self)
|
||||
# set legend
|
||||
self.graph.axes.legend(legend_labels, loc="upper left")
|
||||
# set the layout
|
||||
layout = QtWidgets.QVBoxLayout()
|
||||
layout.addWidget(self.toolbar)
|
||||
layout.addWidget(self.graph)
|
||||
self.setLayout(layout)
|
||||
|
||||
# def set_area(self, top=1, bottom= 0.07, left=0.1, right=0.994,hspace=0.2,wspace=0.2):
|
||||
# self.graph.
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
data = {
|
||||
"x": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
|
||||
"y": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
|
||||
"y2": [10, 9, 8, 7, 6, 5, 4, 3, 2, 1],
|
||||
}
|
||||
widget = GraphWidget(data=data, legend_labels=["+", "-"])
|
||||
widget.show()
|
||||
sys.exit(app.exec())
|
||||
119
src/ui/widgets/message_widget.ui
Normal file
119
src/ui/widgets/message_widget.ui
Normal file
@@ -0,0 +1,119 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Form</class>
|
||||
<widget class="QWidget" name="Form">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>295</width>
|
||||
<height>110</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Form</string>
|
||||
</property>
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>0</y>
|
||||
<width>47</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Apparat:</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLineEdit" name="lineEdit">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>60</x>
|
||||
<y>0</y>
|
||||
<width>41</width>
|
||||
<height>20</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="focusPolicy">
|
||||
<enum>Qt::NoFocus</enum>
|
||||
</property>
|
||||
<property name="readOnly">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>20</y>
|
||||
<width>51</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Nachricht:</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QTextEdit" name="textEdit">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>40</y>
|
||||
<width>281</width>
|
||||
<height>66</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="focusPolicy">
|
||||
<enum>Qt::NoFocus</enum>
|
||||
</property>
|
||||
<property name="inputMethodHints">
|
||||
<set>Qt::ImhNone</set>
|
||||
</property>
|
||||
<property name="readOnly">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="pushButton">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>210</x>
|
||||
<y>10</y>
|
||||
<width>75</width>
|
||||
<height>23</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="focusPolicy">
|
||||
<enum>Qt::NoFocus</enum>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Löschen</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="hidden_id">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>140</x>
|
||||
<y>10</y>
|
||||
<width>47</width>
|
||||
<height>13</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="focusPolicy">
|
||||
<enum>Qt::NoFocus</enum>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>TextLabel</string>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<tabstops>
|
||||
<tabstop>lineEdit</tabstop>
|
||||
<tabstop>textEdit</tabstop>
|
||||
</tabstops>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
258
src/ui/widgets/progress_overview_widget.ui
Normal file
258
src/ui/widgets/progress_overview_widget.ui
Normal file
@@ -0,0 +1,258 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Form</class>
|
||||
<widget class="QWidget" name="Form">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>300</width>
|
||||
<height>751</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>300</width>
|
||||
<height>751</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Form</string>
|
||||
</property>
|
||||
<widget class="QGroupBox" name="group_software">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>10</y>
|
||||
<width>281</width>
|
||||
<height>211</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>10</pointsize>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Hier klicken, um die aDIS Abfrage in die Zwischenablage zu kopieren</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Software</string>
|
||||
</property>
|
||||
<property name="flat">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="checked">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<widget class="QCheckBox" name="checkBox">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>20</y>
|
||||
<width>241</width>
|
||||
<height>41</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>8</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Apparatsdaten eingegeben</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QCheckBox" name="checkBox_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>50</y>
|
||||
<width>241</width>
|
||||
<height>41</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>8</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Medien hinzugefügt / importiert</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QCheckBox" name="checkBox_3">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>130</y>
|
||||
<width>241</width>
|
||||
<height>41</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>8</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Prof-ID und Apparat-ID eingetragen</string>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QGroupBox" name="groupBox_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>220</y>
|
||||
<width>281</width>
|
||||
<height>251</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>10</pointsize>
|
||||
<weight>75</weight>
|
||||
<italic>false</italic>
|
||||
<bold>true</bold>
|
||||
<underline>false</underline>
|
||||
<stylestrategy>PreferDefault</stylestrategy>
|
||||
<kerning>true</kerning>
|
||||
</font>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>aDIS</string>
|
||||
</property>
|
||||
<widget class="QCheckBox" name="checkBox_4">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>20</y>
|
||||
<width>241</width>
|
||||
<height>41</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>8</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Medien geprüft</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QCheckBox" name="checkBox_5">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>50</y>
|
||||
<width>241</width>
|
||||
<height>41</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>8</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Medien bearbeitet</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QCheckBox" name="checkBox_6">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>80</y>
|
||||
<width>161</width>
|
||||
<height>41</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>8</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Apparat angelegt</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="pushButton">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>160</x>
|
||||
<y>90</y>
|
||||
<width>101</width>
|
||||
<height>23</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>8</pointsize>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Hier klicken, um die aDIS Abfrage in die Zwischenablage zu kopieren</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="whatsThis">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="accessibleDescription">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="autoFillBackground">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string> aDIS Abfrage</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<normaloff>../icons/information.png</normaloff>../icons/information.png</iconset>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="checked">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
16
src/ui/widgets/progress_widget.py
Normal file
16
src/ui/widgets/progress_widget.py
Normal file
@@ -0,0 +1,16 @@
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from Ui_progress_overview_widget import Ui_Form
|
||||
|
||||
|
||||
class Progress_view(Ui_Form):
|
||||
def __init__(self, MainWindow):
|
||||
super().__init__()
|
||||
self.setupUi(MainWindow)
|
||||
self.retranslateUi(MainWindow)
|
||||
self.checkBox_3.setDisabled(True)
|
||||
self.pushButton.clicked.connect(self.pushButton_clicked)
|
||||
|
||||
def pushButton_clicked(self):
|
||||
# copies text to clipboard
|
||||
clipboard = QtWidgets.QApplication.clipboard()
|
||||
clipboard.setText("")
|
||||
Reference in New Issue
Block a user