start work on mail template creation
This commit is contained in:
@@ -152,7 +152,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="0">
|
<item row="1" column="0">
|
||||||
<widget class="QComboBox" name="comboBox_2">
|
<widget class="QComboBox" name="placeholder_list">
|
||||||
<property name="sizeAdjustPolicy">
|
<property name="sizeAdjustPolicy">
|
||||||
<enum>QComboBox::AdjustToContents</enum>
|
<enum>QComboBox::AdjustToContents</enum>
|
||||||
</property>
|
</property>
|
||||||
@@ -197,6 +197,9 @@
|
|||||||
</item>
|
</item>
|
||||||
<item row="1" column="1">
|
<item row="1" column="1">
|
||||||
<widget class="QLineEdit" name="lineEdit">
|
<widget class="QLineEdit" name="lineEdit">
|
||||||
|
<property name="enabled">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
<property name="frame">
|
<property name="frame">
|
||||||
<bool>false</bool>
|
<bool>false</bool>
|
||||||
</property>
|
</property>
|
||||||
@@ -249,7 +252,7 @@
|
|||||||
<enum>Qt::Horizontal</enum>
|
<enum>Qt::Horizontal</enum>
|
||||||
</property>
|
</property>
|
||||||
<property name="standardButtons">
|
<property name="standardButtons">
|
||||||
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Discard|QDialogButtonBox::Ok</set>
|
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Discard|QDialogButtonBox::Save</set>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
|||||||
138
src/ui/dialogs/dialog_sources/newMailTemplateDesigner_ui.py
Normal file
138
src/ui/dialogs/dialog_sources/newMailTemplateDesigner_ui.py
Normal file
@@ -0,0 +1,138 @@
|
|||||||
|
# Form implementation generated from reading ui file '/home/alexander/GitHub/SemesterapparatsManager/src/ui/dialogs/dialog_sources/newMailTemplateDesigner.ui'
|
||||||
|
#
|
||||||
|
# Created by: PyQt6 UI code generator 6.6.1
|
||||||
|
#
|
||||||
|
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||||
|
# run again. Do not edit this file unless you know what you are doing.
|
||||||
|
|
||||||
|
|
||||||
|
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||||
|
|
||||||
|
|
||||||
|
class Ui_Dialog(object):
|
||||||
|
def setupUi(self, Dialog):
|
||||||
|
Dialog.setObjectName("Dialog")
|
||||||
|
Dialog.resize(689, 572)
|
||||||
|
self.verticalLayout_2 = QtWidgets.QVBoxLayout(Dialog)
|
||||||
|
self.verticalLayout_2.setObjectName("verticalLayout_2")
|
||||||
|
self.verticalLayout = QtWidgets.QVBoxLayout()
|
||||||
|
self.verticalLayout.setObjectName("verticalLayout")
|
||||||
|
self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
|
||||||
|
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
|
||||||
|
self.bold = QtWidgets.QPushButton(parent=Dialog)
|
||||||
|
self.bold.setObjectName("bold")
|
||||||
|
self.horizontalLayout_2.addWidget(self.bold)
|
||||||
|
self.italic = QtWidgets.QPushButton(parent=Dialog)
|
||||||
|
self.italic.setObjectName("italic")
|
||||||
|
self.horizontalLayout_2.addWidget(self.italic)
|
||||||
|
self.underlined = QtWidgets.QPushButton(parent=Dialog)
|
||||||
|
self.underlined.setObjectName("underlined")
|
||||||
|
self.horizontalLayout_2.addWidget(self.underlined)
|
||||||
|
self.font = QtWidgets.QFontComboBox(parent=Dialog)
|
||||||
|
self.font.setObjectName("font")
|
||||||
|
self.horizontalLayout_2.addWidget(self.font)
|
||||||
|
self.fontSize = QtWidgets.QComboBox(parent=Dialog)
|
||||||
|
self.fontSize.setObjectName("fontSize")
|
||||||
|
self.fontSize.addItem("")
|
||||||
|
self.fontSize.addItem("")
|
||||||
|
self.fontSize.addItem("")
|
||||||
|
self.fontSize.addItem("")
|
||||||
|
self.fontSize.addItem("")
|
||||||
|
self.fontSize.addItem("")
|
||||||
|
self.fontSize.addItem("")
|
||||||
|
self.fontSize.addItem("")
|
||||||
|
self.fontSize.addItem("")
|
||||||
|
self.fontSize.addItem("")
|
||||||
|
self.fontSize.addItem("")
|
||||||
|
self.fontSize.addItem("")
|
||||||
|
self.fontSize.addItem("")
|
||||||
|
self.fontSize.addItem("")
|
||||||
|
self.fontSize.addItem("")
|
||||||
|
self.horizontalLayout_2.addWidget(self.fontSize)
|
||||||
|
spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
|
||||||
|
self.horizontalLayout_2.addItem(spacerItem)
|
||||||
|
self.verticalLayout.addLayout(self.horizontalLayout_2)
|
||||||
|
self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
|
||||||
|
self.horizontalLayout_4.setObjectName("horizontalLayout_4")
|
||||||
|
self.verticalLayout.addLayout(self.horizontalLayout_4)
|
||||||
|
self.gridLayout = QtWidgets.QGridLayout()
|
||||||
|
self.gridLayout.setObjectName("gridLayout")
|
||||||
|
self.label = QtWidgets.QLabel(parent=Dialog)
|
||||||
|
self.label.setObjectName("label")
|
||||||
|
self.gridLayout.addWidget(self.label, 0, 0, 1, 1)
|
||||||
|
self.placeholder_list = QtWidgets.QComboBox(parent=Dialog)
|
||||||
|
self.placeholder_list.setSizeAdjustPolicy(QtWidgets.QComboBox.SizeAdjustPolicy.AdjustToContents)
|
||||||
|
self.placeholder_list.setObjectName("placeholder_list")
|
||||||
|
self.placeholder_list.addItem("")
|
||||||
|
self.placeholder_list.addItem("")
|
||||||
|
self.placeholder_list.addItem("")
|
||||||
|
self.placeholder_list.addItem("")
|
||||||
|
self.placeholder_list.addItem("")
|
||||||
|
self.placeholder_list.addItem("")
|
||||||
|
self.gridLayout.addWidget(self.placeholder_list, 1, 0, 1, 1)
|
||||||
|
self.label_2 = QtWidgets.QLabel(parent=Dialog)
|
||||||
|
self.label_2.setObjectName("label_2")
|
||||||
|
self.gridLayout.addWidget(self.label_2, 0, 1, 1, 1)
|
||||||
|
self.lineEdit = QtWidgets.QLineEdit(parent=Dialog)
|
||||||
|
self.lineEdit.setEnabled(True)
|
||||||
|
self.lineEdit.setFrame(False)
|
||||||
|
self.lineEdit.setReadOnly(True)
|
||||||
|
self.lineEdit.setObjectName("lineEdit")
|
||||||
|
self.gridLayout.addWidget(self.lineEdit, 1, 1, 1, 1)
|
||||||
|
self.insertPlaceholder = QtWidgets.QPushButton(parent=Dialog)
|
||||||
|
self.insertPlaceholder.setObjectName("insertPlaceholder")
|
||||||
|
self.gridLayout.addWidget(self.insertPlaceholder, 1, 2, 1, 1)
|
||||||
|
self.verticalLayout.addLayout(self.gridLayout)
|
||||||
|
self.templateEdit = QtWidgets.QTextEdit(parent=Dialog)
|
||||||
|
self.templateEdit.setObjectName("templateEdit")
|
||||||
|
self.verticalLayout.addWidget(self.templateEdit)
|
||||||
|
self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
|
||||||
|
self.horizontalLayout_3.setObjectName("horizontalLayout_3")
|
||||||
|
self.testTemplate = QtWidgets.QPushButton(parent=Dialog)
|
||||||
|
self.testTemplate.setObjectName("testTemplate")
|
||||||
|
self.horizontalLayout_3.addWidget(self.testTemplate)
|
||||||
|
spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
|
||||||
|
self.horizontalLayout_3.addItem(spacerItem1)
|
||||||
|
self.verticalLayout.addLayout(self.horizontalLayout_3)
|
||||||
|
self.verticalLayout_2.addLayout(self.verticalLayout)
|
||||||
|
self.buttonBox = QtWidgets.QDialogButtonBox(parent=Dialog)
|
||||||
|
self.buttonBox.setOrientation(QtCore.Qt.Orientation.Horizontal)
|
||||||
|
self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.StandardButton.Cancel|QtWidgets.QDialogButtonBox.StandardButton.Discard|QtWidgets.QDialogButtonBox.StandardButton.Save)
|
||||||
|
self.buttonBox.setObjectName("buttonBox")
|
||||||
|
self.verticalLayout_2.addWidget(self.buttonBox)
|
||||||
|
|
||||||
|
self.retranslateUi(Dialog)
|
||||||
|
self.fontSize.setCurrentIndex(1)
|
||||||
|
QtCore.QMetaObject.connectSlotsByName(Dialog)
|
||||||
|
|
||||||
|
def retranslateUi(self, Dialog):
|
||||||
|
_translate = QtCore.QCoreApplication.translate
|
||||||
|
Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
|
||||||
|
self.bold.setText(_translate("Dialog", "Fett"))
|
||||||
|
self.italic.setText(_translate("Dialog", "Kursiv"))
|
||||||
|
self.underlined.setText(_translate("Dialog", "Unterstrichen"))
|
||||||
|
self.fontSize.setItemText(0, _translate("Dialog", "8"))
|
||||||
|
self.fontSize.setItemText(1, _translate("Dialog", "9"))
|
||||||
|
self.fontSize.setItemText(2, _translate("Dialog", "11"))
|
||||||
|
self.fontSize.setItemText(3, _translate("Dialog", "12"))
|
||||||
|
self.fontSize.setItemText(4, _translate("Dialog", "14"))
|
||||||
|
self.fontSize.setItemText(5, _translate("Dialog", "16"))
|
||||||
|
self.fontSize.setItemText(6, _translate("Dialog", "18"))
|
||||||
|
self.fontSize.setItemText(7, _translate("Dialog", "20"))
|
||||||
|
self.fontSize.setItemText(8, _translate("Dialog", "22"))
|
||||||
|
self.fontSize.setItemText(9, _translate("Dialog", "24"))
|
||||||
|
self.fontSize.setItemText(10, _translate("Dialog", "26"))
|
||||||
|
self.fontSize.setItemText(11, _translate("Dialog", "28"))
|
||||||
|
self.fontSize.setItemText(12, _translate("Dialog", "36"))
|
||||||
|
self.fontSize.setItemText(13, _translate("Dialog", "48"))
|
||||||
|
self.fontSize.setItemText(14, _translate("Dialog", "76"))
|
||||||
|
self.label.setText(_translate("Dialog", "Platzhalter"))
|
||||||
|
self.placeholder_list.setItemText(0, _translate("Dialog", "«Anrede»"))
|
||||||
|
self.placeholder_list.setItemText(1, _translate("Dialog", "«ApparatsName»"))
|
||||||
|
self.placeholder_list.setItemText(2, _translate("Dialog", "«ApparatsFach»"))
|
||||||
|
self.placeholder_list.setItemText(3, _translate("Dialog", "«ApparatsNummer»"))
|
||||||
|
self.placeholder_list.setItemText(4, _translate("Dialog", "«DozentName»"))
|
||||||
|
self.placeholder_list.setItemText(5, _translate("Dialog", "«Signatur»"))
|
||||||
|
self.label_2.setText(_translate("Dialog", "Beschreibung"))
|
||||||
|
self.insertPlaceholder.setText(_translate("Dialog", "An aktiver Position einfügen"))
|
||||||
|
self.testTemplate.setText(_translate("Dialog", "Template testen"))
|
||||||
57
src/ui/dialogs/mailTemplate.py
Normal file
57
src/ui/dialogs/mailTemplate.py
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
from dialog_sources.newMailTemplateDesigner_ui import Ui_Dialog
|
||||||
|
from PyQt6 import QtWidgets, QtCore, QtGui
|
||||||
|
from PyQt6.QtGui import QFont
|
||||||
|
|
||||||
|
class MailTemplateDialog(QtWidgets.QDialog, Ui_Dialog):
|
||||||
|
def __init__(self,parent = None) -> None:
|
||||||
|
super().__init__(parent)
|
||||||
|
self.setupUi(self)
|
||||||
|
self.placeholder_list.addItem("")
|
||||||
|
self.placeholder_list.setCurrentText("")
|
||||||
|
self.insertPlaceholder.clicked.connect(self.insert_placeholder)
|
||||||
|
self.placeholder_list.currentTextChanged.connect(self.updateDescription)
|
||||||
|
|
||||||
|
def updateDescription(self):
|
||||||
|
print("update triggered")
|
||||||
|
print(self.placeholder_list.currentText())
|
||||||
|
placeholders = {"anrede" : "Die Anrede beinhaltet sowohl Person als auch Sehr geehrte/r",
|
||||||
|
"apparatsfach" : "Das Fach, in welchem der Apparat angelegt wurde",
|
||||||
|
"apparatsname": "Der Name des Apparats",
|
||||||
|
"apparatsnummer": "Die Nummer des Apparats",
|
||||||
|
"dozentname" : "Der Name des Dozenten / der Dozentin",
|
||||||
|
"signatur" : "Die persönliche / allgemeine Signatur am ende der Mail",
|
||||||
|
"": " "}
|
||||||
|
for key, item, in placeholders.items():
|
||||||
|
if key in self.placeholder_list.currentText().lower():
|
||||||
|
self.lineEdit.setText(item)
|
||||||
|
break
|
||||||
|
|
||||||
|
|
||||||
|
def insert_placeholder(self):
|
||||||
|
placeholder = {"anrede" : "{}",
|
||||||
|
"apparatsfach" : "Das Fach, in welchem der Apparat angelegt wurde",
|
||||||
|
"apparatsname": "Der Name des Apparats",
|
||||||
|
"apparatsnummer": "Die Nummer des Apparats",
|
||||||
|
"dozentname" : "Der Name des Dozenten / der Dozentin",
|
||||||
|
"signatur" : "Die persönliche / allgemeine Signatur am ende der Mail",
|
||||||
|
"": " "}
|
||||||
|
cursor = self.templateEdit.textCursor()
|
||||||
|
|
||||||
|
cursor.insertText("{{placeholder}}")
|
||||||
|
self.templateEdit.setTextCursor(cursor)
|
||||||
|
self.templateEdit.setFocus()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def launch_gui():
|
||||||
|
app = QtWidgets.QApplication([])
|
||||||
|
window = MailTemplateDialog()
|
||||||
|
window.show()
|
||||||
|
app.exec()
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
launch_gui()
|
||||||
|
|
||||||
Reference in New Issue
Block a user