start work on welcome wizard

This commit is contained in:
2025-06-10 16:23:29 +02:00
parent dbad7165bc
commit fdab4e5caa
6 changed files with 690 additions and 4 deletions

View File

@@ -0,0 +1,51 @@
from .widget_sources.welcome_wizard_ui import Ui_Wizard
from PyQt6 import QtWidgets, QtCore, QtGui
from src import settings
class WelcomeWizard(QtWidgets.QWizard, Ui_Wizard):
def __init__(self, parent=None):
super().__init__(parent)
self.setupUi(self)
self.btn_database.clicked.connect(self.open_database_settings)
self.btn_temp.clicked.connect(self.open_temp_settings)
def open_database_settings(self):
#open filepicker dialog to select database file folder
file_dialog = QtWidgets.QFileDialog(self, "Select Database File")
file_dialog.setFileMode(QtWidgets.QFileDialog.FileMode.ExistingFile)
file_dialog.setNameFilter("Database Files (*.db *.sqlite *.sqlite3)")
file_dialog.setViewMode(QtWidgets.QFileDialog.ViewMode.List)
file_dialog.setDirectory(settings.database.path) # Set initial directory if needed
file_dialog.setOption(QtWidgets.QFileDialog.Option.DontUseNativeDialog, True)
file_dialog.setWindowFlags(file_dialog.windowFlags() | QtCore.Qt.WindowType.WindowStaysOnTopHint)
if file_dialog.exec():
selected_files = file_dialog.selectedFiles()
if selected_files:
# Do something with the selected database file
print("Selected database file:", selected_files[0])
def open_temp_settings(self):
#open filepicker dialog to select temporary directory
dir_dialog = QtWidgets.QFileDialog(self, "Select Temporary Directory")
dir_dialog.setFileMode(QtWidgets.QFileDialog.FileMode.Directory)
dir_dialog.setViewMode(QtWidgets.QFileDialog.ViewMode.List)
if dir_dialog.exec():
selected_dirs = dir_dialog.selectedFiles()
if selected_dirs:
# Do something with the selected temporary directory
print("Selected temporary directory:", selected_dirs[0])
def launch_wizard():
"""Launch the welcome wizard."""
app = QtWidgets.QApplication.instance()
if not app:
app = QtWidgets.QApplication([])
wizard = WelcomeWizard()
# wizard.setWindowTitle("Welcome to the Semester Apparatus Manager")
# wizard.setWindowIcon(settings.Icon("welcome").icon)
wizard.setWizardStyle(QtWidgets.QWizard.WizardStyle.ModernStyle)
wizard.setStartId(0)
wizard.show()
return wizard.exec()

View File

@@ -0,0 +1,348 @@
<?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>564</width>
<height>425</height>
</rect>
</property>
<property name="windowTitle">
<string>Wizard</string>
</property>
<property name="sizeGripEnabled">
<bool>false</bool>
</property>
<property name="wizardStyle">
<enum>QWizard::ClassicStyle</enum>
</property>
<property name="subTitleFormat">
<enum>Qt::PlainText</enum>
</property>
<property name="currentId">
<number>0</number>
</property>
<widget class="QWizardPage" name="wizardPage1">
<property name="title">
<string>Willkommen</string>
</property>
<property name="subTitle">
<string/>
</property>
<attribute name="pageId">
<string notr="true">0</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QTextEdit" name="textEdit">
<property name="enabled">
<bool>false</bool>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="autoFormatting">
<set>QTextEdit::AutoAll</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
<property name="html">
<string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;meta charset=&quot;utf-8&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
hr { height: 1px; border-width: 0; }
li.unchecked::marker { content: &quot;\2610&quot;; }
li.checked::marker { content: &quot;\2612&quot;; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Segoe UI'; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Es wurde erkannt, dass der SemesterApparatsManager (SAM) zum ersten Mal gestartet wurde. In den Folgenden Seiten werden die grundlegenden Einstellungen festgelegt, anschließend wird SAM geöffnet. Folgende Einstellungen werden über diesen Wizard festgelegt:&lt;/p&gt;
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;- Datenbank&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;- eMail&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;- Zotero Integration&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;- KI Integration&lt;/p&gt;
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWizardPage" name="wizardPage2">
<property name="title">
<string>Datenbank</string>
</property>
<property name="subTitle">
<string>Hier werden die Einstellungen für die Datenbank und temporären Dateien festgelegt. Über den [...] Knopf können die Datenbank und der Speicherort für die temporären Daten festgelegt werden</string>
</property>
<attribute name="pageId">
<string notr="true">1</string>
</attribute>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Datenbank</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLineEdit" name="settings_database">
<property name="placeholderText">
<string>semesterapparate.db</string>
</property>
</widget>
</item>
<item row="0" column="2">
<widget class="QToolButton" name="btn_database">
<property name="text">
<string>...</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Temporäre Daten</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLineEdit" name="settings_temp">
<property name="placeholderText">
<string>C:\Users\[Nutzer]\AppData\Local\SAM\SemesterApparatsManager\Cache</string>
</property>
</widget>
</item>
<item row="1" column="2">
<widget class="QToolButton" name="btn_temp">
<property name="text">
<string>...</string>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWizardPage" name="wizardPage3">
<property name="title">
<string>Mail</string>
</property>
<property name="subTitle">
<string>Hier werden die Einstellungen für die Mailverbindung eingegeben</string>
</property>
<attribute name="pageId">
<string notr="true">2</string>
</attribute>
<layout class="QFormLayout" name="formLayout">
<item row="0" column="0">
<widget class="QLabel" name="label_3">
<property name="text">
<string>SMTP Server</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLineEdit" name="lineEdit"/>
</item>
<item row="1" column="1">
<widget class="QLineEdit" name="lineEdit_2"/>
</item>
<item row="3" column="1">
<widget class="QLineEdit" name="lineEdit_3"/>
</item>
<item row="4" column="1">
<widget class="QLineEdit" name="lineEdit_4"/>
</item>
<item row="3" column="0">
<widget class="QLabel" name="label_4">
<property name="text">
<string>Nutzername</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_5">
<property name="text">
<string>SMTP Port</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="label_6">
<property name="text">
<string>Passwort</string>
</property>
</widget>
</item>
<item row="8" column="1">
<widget class="QCheckBox" name="settings_mail_use_user_name">
<property name="text">
<string>CheckBox</string>
</property>
</widget>
</item>
<item row="7" column="1">
<widget class="QLineEdit" name="settings_mail_"/>
</item>
<item row="7" column="0">
<widget class="QLabel" name="label_8">
<property name="text">
<string>Druckermail</string>
</property>
</widget>
</item>
<item row="8" column="0">
<widget class="QLabel" name="label_9">
<property name="text">
<string>Nutzername
für SMTP</string>
</property>
</widget>
</item>
<item row="5" column="1">
<widget class="QTextEdit" name="textEdit_2"/>
</item>
<item row="5" column="0">
<widget class="QLabel" name="label_10">
<property name="text">
<string>Signatur</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_7">
<property name="text">
<string>Mail Adresse</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLineEdit" name="lineEdit_5"/>
</item>
</layout>
</widget>
<widget class="QWizardPage" name="wizardPage4">
<property name="title">
<string>Zotero</string>
</property>
<property name="subTitle">
<string>Hier werden die Einstellungen für Zotero verwaltet</string>
</property>
<attribute name="pageId">
<string notr="true">3</string>
</attribute>
<layout class="QFormLayout" name="formLayout_2">
<item row="0" column="0">
<widget class="QLabel" name="label_11">
<property name="text">
<string>API-Key</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLineEdit" name="settings_zotero_api_key"/>
</item>
<item row="1" column="1">
<widget class="QLineEdit" name="settings_zotero_library_id"/>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_12">
<property name="text">
<string>ID</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_13">
<property name="text">
<string>Anwendungstyp</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLineEdit" name="settings_zotero_library_type">
<property name="text">
<string>user</string>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWizardPage" name="wizardPage5">
<property name="title">
<string>KI-Integration</string>
</property>
<property name="subTitle">
<string>Hier werden die Einstellungen für die KI Integration eingestellt.</string>
</property>
<attribute name="pageId">
<string notr="true">9</string>
</attribute>
<layout class="QFormLayout" name="formLayout_3">
<item row="0" column="1">
<widget class="QLineEdit" name="lineEdit_6"/>
</item>
<item row="0" column="0">
<widget class="QLabel" name="label_14">
<property name="text">
<string>API Key</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_15">
<property name="text">
<string>ChatGPT Modell</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QComboBox" name="comboBox">
<property name="currentText">
<string>gpt-4o-mini</string>
</property>
<item>
<property name="text">
<string>gpt3.5-turbo</string>
</property>
</item>
<item>
<property name="text">
<string>gpt-4</string>
</property>
</item>
<item>
<property name="text">
<string>gpt-4o</string>
</property>
</item>
<item>
<property name="text">
<string>gpt-4o-mini</string>
</property>
</item>
<item>
<property name="text">
<string>gpt-4.1</string>
</property>
</item>
<item>
<property name="text">
<string>gpt-4.1-mini</string>
</property>
</item>
<item>
<property name="text">
<string>gpt-4.1-nano</string>
</property>
</item>
</widget>
</item>
</layout>
</widget>
</widget>
<resources/>
<connections/>
</ui>

View File

@@ -0,0 +1,215 @@
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\widgets\widget_sources\welcome_wizard.ui'
#
# Created by: PyQt6 UI code generator 6.9.0
#
# 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(564, 425)
Wizard.setSizeGripEnabled(False)
Wizard.setWizardStyle(QtWidgets.QWizard.WizardStyle.ClassicStyle)
Wizard.setSubTitleFormat(QtCore.Qt.TextFormat.PlainText)
Wizard.setCurrentId(0)
self.wizardPage1 = QtWidgets.QWizardPage()
self.wizardPage1.setSubTitle("")
self.wizardPage1.setObjectName("wizardPage1")
self.verticalLayout = QtWidgets.QVBoxLayout(self.wizardPage1)
self.verticalLayout.setObjectName("verticalLayout")
self.textEdit = QtWidgets.QTextEdit(parent=self.wizardPage1)
self.textEdit.setEnabled(False)
self.textEdit.setLineWidth(0)
self.textEdit.setAutoFormatting(QtWidgets.QTextEdit.AutoFormattingFlag.AutoAll)
self.textEdit.setReadOnly(True)
self.textEdit.setObjectName("textEdit")
self.verticalLayout.addWidget(self.textEdit)
Wizard.addPage(self.wizardPage1)
self.wizardPage2 = QtWidgets.QWizardPage()
self.wizardPage2.setObjectName("wizardPage2")
self.gridLayout = QtWidgets.QGridLayout(self.wizardPage2)
self.gridLayout.setObjectName("gridLayout")
self.label = QtWidgets.QLabel(parent=self.wizardPage2)
self.label.setObjectName("label")
self.gridLayout.addWidget(self.label, 0, 0, 1, 1)
self.settings_database = QtWidgets.QLineEdit(parent=self.wizardPage2)
self.settings_database.setObjectName("settings_database")
self.gridLayout.addWidget(self.settings_database, 0, 1, 1, 1)
self.btn_database = QtWidgets.QToolButton(parent=self.wizardPage2)
self.btn_database.setObjectName("btn_database")
self.gridLayout.addWidget(self.btn_database, 0, 2, 1, 1)
self.label_2 = QtWidgets.QLabel(parent=self.wizardPage2)
self.label_2.setObjectName("label_2")
self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)
self.settings_temp = QtWidgets.QLineEdit(parent=self.wizardPage2)
self.settings_temp.setObjectName("settings_temp")
self.gridLayout.addWidget(self.settings_temp, 1, 1, 1, 1)
self.btn_temp = QtWidgets.QToolButton(parent=self.wizardPage2)
self.btn_temp.setObjectName("btn_temp")
self.gridLayout.addWidget(self.btn_temp, 1, 2, 1, 1)
Wizard.addPage(self.wizardPage2)
self.wizardPage3 = QtWidgets.QWizardPage()
self.wizardPage3.setObjectName("wizardPage3")
self.formLayout = QtWidgets.QFormLayout(self.wizardPage3)
self.formLayout.setObjectName("formLayout")
self.label_3 = QtWidgets.QLabel(parent=self.wizardPage3)
self.label_3.setObjectName("label_3")
self.formLayout.setWidget(0, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_3)
self.lineEdit = QtWidgets.QLineEdit(parent=self.wizardPage3)
self.lineEdit.setObjectName("lineEdit")
self.formLayout.setWidget(0, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit)
self.lineEdit_2 = QtWidgets.QLineEdit(parent=self.wizardPage3)
self.lineEdit_2.setObjectName("lineEdit_2")
self.formLayout.setWidget(1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit_2)
self.lineEdit_3 = QtWidgets.QLineEdit(parent=self.wizardPage3)
self.lineEdit_3.setObjectName("lineEdit_3")
self.formLayout.setWidget(3, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit_3)
self.lineEdit_4 = QtWidgets.QLineEdit(parent=self.wizardPage3)
self.lineEdit_4.setObjectName("lineEdit_4")
self.formLayout.setWidget(4, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit_4)
self.label_4 = QtWidgets.QLabel(parent=self.wizardPage3)
self.label_4.setObjectName("label_4")
self.formLayout.setWidget(3, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_4)
self.label_5 = QtWidgets.QLabel(parent=self.wizardPage3)
self.label_5.setObjectName("label_5")
self.formLayout.setWidget(1, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_5)
self.label_6 = QtWidgets.QLabel(parent=self.wizardPage3)
self.label_6.setObjectName("label_6")
self.formLayout.setWidget(4, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_6)
self.settings_mail_use_user_name = QtWidgets.QCheckBox(parent=self.wizardPage3)
self.settings_mail_use_user_name.setObjectName("settings_mail_use_user_name")
self.formLayout.setWidget(8, QtWidgets.QFormLayout.ItemRole.FieldRole, self.settings_mail_use_user_name)
self.settings_mail_ = QtWidgets.QLineEdit(parent=self.wizardPage3)
self.settings_mail_.setObjectName("settings_mail_")
self.formLayout.setWidget(7, QtWidgets.QFormLayout.ItemRole.FieldRole, self.settings_mail_)
self.label_8 = QtWidgets.QLabel(parent=self.wizardPage3)
self.label_8.setObjectName("label_8")
self.formLayout.setWidget(7, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_8)
self.label_9 = QtWidgets.QLabel(parent=self.wizardPage3)
self.label_9.setObjectName("label_9")
self.formLayout.setWidget(8, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_9)
self.textEdit_2 = QtWidgets.QTextEdit(parent=self.wizardPage3)
self.textEdit_2.setObjectName("textEdit_2")
self.formLayout.setWidget(5, QtWidgets.QFormLayout.ItemRole.FieldRole, self.textEdit_2)
self.label_10 = QtWidgets.QLabel(parent=self.wizardPage3)
self.label_10.setObjectName("label_10")
self.formLayout.setWidget(5, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_10)
self.label_7 = QtWidgets.QLabel(parent=self.wizardPage3)
self.label_7.setObjectName("label_7")
self.formLayout.setWidget(2, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_7)
self.lineEdit_5 = QtWidgets.QLineEdit(parent=self.wizardPage3)
self.lineEdit_5.setObjectName("lineEdit_5")
self.formLayout.setWidget(2, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit_5)
Wizard.addPage(self.wizardPage3)
self.wizardPage4 = QtWidgets.QWizardPage()
self.wizardPage4.setObjectName("wizardPage4")
self.formLayout_2 = QtWidgets.QFormLayout(self.wizardPage4)
self.formLayout_2.setObjectName("formLayout_2")
self.label_11 = QtWidgets.QLabel(parent=self.wizardPage4)
self.label_11.setObjectName("label_11")
self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_11)
self.settings_zotero_api_key = QtWidgets.QLineEdit(parent=self.wizardPage4)
self.settings_zotero_api_key.setObjectName("settings_zotero_api_key")
self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.ItemRole.FieldRole, self.settings_zotero_api_key)
self.settings_zotero_library_id = QtWidgets.QLineEdit(parent=self.wizardPage4)
self.settings_zotero_library_id.setObjectName("settings_zotero_library_id")
self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.settings_zotero_library_id)
self.label_12 = QtWidgets.QLabel(parent=self.wizardPage4)
self.label_12.setObjectName("label_12")
self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_12)
self.label_13 = QtWidgets.QLabel(parent=self.wizardPage4)
self.label_13.setObjectName("label_13")
self.formLayout_2.setWidget(2, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_13)
self.settings_zotero_library_type = QtWidgets.QLineEdit(parent=self.wizardPage4)
self.settings_zotero_library_type.setObjectName("settings_zotero_library_type")
self.formLayout_2.setWidget(2, QtWidgets.QFormLayout.ItemRole.FieldRole, self.settings_zotero_library_type)
Wizard.addPage(self.wizardPage4)
self.wizardPage5 = QtWidgets.QWizardPage()
self.wizardPage5.setObjectName("wizardPage5")
self.formLayout_3 = QtWidgets.QFormLayout(self.wizardPage5)
self.formLayout_3.setObjectName("formLayout_3")
self.lineEdit_6 = QtWidgets.QLineEdit(parent=self.wizardPage5)
self.lineEdit_6.setObjectName("lineEdit_6")
self.formLayout_3.setWidget(0, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit_6)
self.label_14 = QtWidgets.QLabel(parent=self.wizardPage5)
self.label_14.setObjectName("label_14")
self.formLayout_3.setWidget(0, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_14)
self.label_15 = QtWidgets.QLabel(parent=self.wizardPage5)
self.label_15.setObjectName("label_15")
self.formLayout_3.setWidget(1, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_15)
self.comboBox = QtWidgets.QComboBox(parent=self.wizardPage5)
self.comboBox.setObjectName("comboBox")
self.comboBox.addItem("")
self.comboBox.addItem("")
self.comboBox.addItem("")
self.comboBox.addItem("")
self.comboBox.addItem("")
self.comboBox.addItem("")
self.comboBox.addItem("")
self.formLayout_3.setWidget(1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.comboBox)
Wizard.addPage(self.wizardPage5)
self.retranslateUi(Wizard)
QtCore.QMetaObject.connectSlotsByName(Wizard)
def retranslateUi(self, Wizard):
_translate = QtCore.QCoreApplication.translate
Wizard.setWindowTitle(_translate("Wizard", "Wizard"))
self.wizardPage1.setTitle(_translate("Wizard", "Willkommen"))
self.textEdit.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\" /><meta charset=\"utf-8\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"hr { height: 1px; border-width: 0; }\n"
"li.unchecked::marker { content: \"\\2610\"; }\n"
"li.checked::marker { content: \"\\2612\"; }\n"
"</style></head><body style=\" font-family:\'Segoe UI\'; font-size:9pt; 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;\">Es wurde erkannt, dass der SemesterApparatsManager (SAM) zum ersten Mal gestartet wurde. In den Folgenden Seiten werden die grundlegenden Einstellungen festgelegt, anschließend wird SAM geöffnet. Folgende Einstellungen werden über diesen Wizard festgelegt:</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;\">- Datenbank</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">- eMail</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">- Zotero Integration</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">- KI Integration</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.wizardPage2.setTitle(_translate("Wizard", "Datenbank"))
self.wizardPage2.setSubTitle(_translate("Wizard", "Hier werden die Einstellungen für die Datenbank und temporären Dateien festgelegt. Über den [...] Knopf können die Datenbank und der Speicherort für die temporären Daten festgelegt werden"))
self.label.setText(_translate("Wizard", "Datenbank"))
self.settings_database.setPlaceholderText(_translate("Wizard", "semesterapparate.db"))
self.btn_database.setText(_translate("Wizard", "..."))
self.label_2.setText(_translate("Wizard", "Temporäre Daten"))
self.settings_temp.setPlaceholderText(_translate("Wizard", "C:\\Users\\[Nutzer]\\AppData\\Local\\SAM\\SemesterApparatsManager\\Cache"))
self.btn_temp.setText(_translate("Wizard", "..."))
self.wizardPage3.setTitle(_translate("Wizard", "Mail"))
self.wizardPage3.setSubTitle(_translate("Wizard", "Hier werden die Einstellungen für die Mailverbindung eingegeben"))
self.label_3.setText(_translate("Wizard", "SMTP Server"))
self.label_4.setText(_translate("Wizard", "Nutzername"))
self.label_5.setText(_translate("Wizard", "SMTP Port"))
self.label_6.setText(_translate("Wizard", "Passwort"))
self.settings_mail_use_user_name.setText(_translate("Wizard", "CheckBox"))
self.label_8.setText(_translate("Wizard", "Druckermail"))
self.label_9.setText(_translate("Wizard", "Nutzername\n"
"für SMTP"))
self.label_10.setText(_translate("Wizard", "Signatur"))
self.label_7.setText(_translate("Wizard", "Mail Adresse"))
self.wizardPage4.setTitle(_translate("Wizard", "Zotero"))
self.wizardPage4.setSubTitle(_translate("Wizard", "Hier werden die Einstellungen für Zotero verwaltet"))
self.label_11.setText(_translate("Wizard", "API-Key"))
self.label_12.setText(_translate("Wizard", "ID"))
self.label_13.setText(_translate("Wizard", "Anwendungstyp"))
self.settings_zotero_library_type.setText(_translate("Wizard", "user"))
self.wizardPage5.setTitle(_translate("Wizard", "KI-Integration"))
self.wizardPage5.setSubTitle(_translate("Wizard", "Hier werden die Einstellungen für die KI Integration eingestellt."))
self.label_14.setText(_translate("Wizard", "API Key"))
self.label_15.setText(_translate("Wizard", "ChatGPT Modell"))
self.comboBox.setCurrentText(_translate("Wizard", "gpt-4o-mini"))
self.comboBox.setItemText(0, _translate("Wizard", "gpt3.5-turbo"))
self.comboBox.setItemText(1, _translate("Wizard", "gpt-4"))
self.comboBox.setItemText(2, _translate("Wizard", "gpt-4o"))
self.comboBox.setItemText(3, _translate("Wizard", "gpt-4o-mini"))
self.comboBox.setItemText(4, _translate("Wizard", "gpt-4.1"))
self.comboBox.setItemText(5, _translate("Wizard", "gpt-4.1-mini"))
self.comboBox.setItemText(6, _translate("Wizard", "gpt-4.1-nano"))