UI-Dateien für "kleine" Dialoge erstellt
This commit is contained in:
+55
-185
@@ -1,9 +1,14 @@
|
||||
from PySide6.QtWidgets import QDialog, QTableWidgetItem, QMessageBox, QLineEdit, QPushButton, QFileDialog, QTextEdit, QVBoxLayout, QHBoxLayout, QFormLayout, QDialogButtonBox
|
||||
from PySide6.QtWidgets import QDialog, QTableWidgetItem, QMessageBox, QFileDialog
|
||||
from PySide6.QtCore import Qt
|
||||
from pathlib import Path
|
||||
from typing import Optional
|
||||
|
||||
from ui.AppSettings_ui import Ui_Dialog
|
||||
from ui.JavaVmConfigDialog_ui import Ui_JavaVmConfigDialog
|
||||
from ui.DiffPdfConfigDialog_ui import Ui_DiffPdfConfigDialog
|
||||
from ui.SaxonJarConfigDialog_ui import Ui_SaxonJarConfigDialog
|
||||
from ui.ApacheFopConfigDialog_ui import Ui_ApacheFopConfigDialog
|
||||
from ui.XslDirConfigDialog_ui import Ui_XslDirConfigDialog
|
||||
from conf import AppSettings, JavaVm, DiffPdf, SaxonJar, ApacheFop, XslDir
|
||||
|
||||
|
||||
@@ -13,36 +18,13 @@ class JavaVmConfigDialog(QDialog):
|
||||
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
self.setWindowTitle("Java VM Konfiguration")
|
||||
self.setModal(True)
|
||||
self.resize(500, 200)
|
||||
|
||||
# Layout erstellen
|
||||
layout = QVBoxLayout()
|
||||
form_layout = QFormLayout()
|
||||
# UI einrichten
|
||||
self.ui = Ui_JavaVmConfigDialog()
|
||||
self.ui.setupUi(self)
|
||||
|
||||
# Version Eingabefeld
|
||||
self.version_edit = QLineEdit()
|
||||
form_layout.addRow("Version:", self.version_edit)
|
||||
|
||||
# Pfad zur Binary-Datei
|
||||
path_layout = QHBoxLayout()
|
||||
self.path_edit = QLineEdit()
|
||||
self.browse_button = QPushButton("Durchsuchen...")
|
||||
self.browse_button.clicked.connect(self.browse_binary_file)
|
||||
path_layout.addWidget(self.path_edit)
|
||||
path_layout.addWidget(self.browse_button)
|
||||
form_layout.addRow("Pfad zur Binary-Datei:", path_layout)
|
||||
|
||||
layout.addLayout(form_layout)
|
||||
|
||||
# Dialog-Buttons
|
||||
button_box = QDialogButtonBox(QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel)
|
||||
button_box.accepted.connect(self.accept)
|
||||
button_box.rejected.connect(self.reject)
|
||||
layout.addWidget(button_box)
|
||||
|
||||
self.setLayout(layout)
|
||||
# Signale verbinden
|
||||
self.ui.browseButton.clicked.connect(self.browse_binary_file)
|
||||
|
||||
def browse_binary_file(self):
|
||||
"""Öffnet einen Dateidialog für die Binary-Datei."""
|
||||
@@ -51,16 +33,16 @@ class JavaVmConfigDialog(QDialog):
|
||||
"Executable Files (*.exe);;All Files (*)"
|
||||
)
|
||||
if file_path:
|
||||
self.path_edit.setText(file_path)
|
||||
self.ui.pathEdit.setText(file_path)
|
||||
|
||||
def get_data(self):
|
||||
"""Gibt die eingegebenen Daten zurück."""
|
||||
if not self.version_edit.text().strip() or not self.path_edit.text().strip():
|
||||
if not self.ui.versionEdit.text().strip() or not self.ui.pathEdit.text().strip():
|
||||
return None
|
||||
|
||||
return {
|
||||
'version': self.version_edit.text().strip(),
|
||||
'path_to_binary_file': Path(self.path_edit.text().strip())
|
||||
'version': self.ui.versionEdit.text().strip(),
|
||||
'path_to_binary_file': Path(self.ui.pathEdit.text().strip())
|
||||
}
|
||||
|
||||
|
||||
@@ -69,46 +51,13 @@ class DiffPdfConfigDialog(QDialog):
|
||||
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
self.setWindowTitle("DiffPdf Konfiguration")
|
||||
self.setModal(True)
|
||||
self.resize(500, 300)
|
||||
|
||||
# Layout erstellen
|
||||
layout = QVBoxLayout()
|
||||
form_layout = QFormLayout()
|
||||
# UI einrichten
|
||||
self.ui = Ui_DiffPdfConfigDialog()
|
||||
self.ui.setupUi(self)
|
||||
|
||||
# Version Eingabefeld
|
||||
self.version_edit = QLineEdit()
|
||||
form_layout.addRow("Version:", self.version_edit)
|
||||
|
||||
# Pfad zur Binary-Datei
|
||||
path_layout = QHBoxLayout()
|
||||
self.path_edit = QLineEdit()
|
||||
self.browse_button = QPushButton("Durchsuchen...")
|
||||
self.browse_button.clicked.connect(self.browse_binary_file)
|
||||
path_layout.addWidget(self.path_edit)
|
||||
path_layout.addWidget(self.browse_button)
|
||||
form_layout.addRow("Pfad zur Binary-Datei:", path_layout)
|
||||
|
||||
# Standard-Parameter (als mehrzeiliger Text)
|
||||
self.params_edit = QTextEdit()
|
||||
self.params_edit.setMaximumHeight(80)
|
||||
form_layout.addRow("Standard-Parameter\n(ein Parameter pro Zeile):", self.params_edit)
|
||||
|
||||
# Output-Dateierweiterung
|
||||
self.extension_edit = QLineEdit()
|
||||
self.extension_edit.setText("pdf")
|
||||
form_layout.addRow("Output-Dateierweiterung:", self.extension_edit)
|
||||
|
||||
layout.addLayout(form_layout)
|
||||
|
||||
# Dialog-Buttons
|
||||
button_box = QDialogButtonBox(QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel)
|
||||
button_box.accepted.connect(self.accept)
|
||||
button_box.rejected.connect(self.reject)
|
||||
layout.addWidget(button_box)
|
||||
|
||||
self.setLayout(layout)
|
||||
# Signale verbinden
|
||||
self.ui.browseButton.clicked.connect(self.browse_binary_file)
|
||||
|
||||
def browse_binary_file(self):
|
||||
"""Öffnet einen Dateidialog für die Binary-Datei."""
|
||||
@@ -117,22 +66,22 @@ class DiffPdfConfigDialog(QDialog):
|
||||
"Executable Files (*.exe);;All Files (*)"
|
||||
)
|
||||
if file_path:
|
||||
self.path_edit.setText(file_path)
|
||||
self.ui.pathEdit.setText(file_path)
|
||||
|
||||
def get_data(self):
|
||||
"""Gibt die eingegebenen Daten zurück."""
|
||||
if not self.version_edit.text().strip() or not self.path_edit.text().strip():
|
||||
if not self.ui.versionEdit.text().strip() or not self.ui.pathEdit.text().strip():
|
||||
return None
|
||||
|
||||
# Parameter aus dem Text extrahieren
|
||||
params_text = self.params_edit.toPlainText().strip()
|
||||
params_text = self.ui.paramsEdit.toPlainText().strip()
|
||||
params = [line.strip() for line in params_text.split('\n') if line.strip()] if params_text else []
|
||||
|
||||
return {
|
||||
'version': self.version_edit.text().strip(),
|
||||
'path_to_binary_file': Path(self.path_edit.text().strip()),
|
||||
'version': self.ui.versionEdit.text().strip(),
|
||||
'path_to_binary_file': Path(self.ui.pathEdit.text().strip()),
|
||||
'default_params': params,
|
||||
'output_file_extension': self.extension_edit.text().strip() or "pdf"
|
||||
'output_file_extension': self.ui.extensionEdit.text().strip() or "pdf"
|
||||
}
|
||||
|
||||
|
||||
@@ -141,41 +90,13 @@ class SaxonJarConfigDialog(QDialog):
|
||||
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
self.setWindowTitle("Saxon JAR Konfiguration")
|
||||
self.setModal(True)
|
||||
self.resize(500, 200)
|
||||
|
||||
# Layout erstellen
|
||||
layout = QVBoxLayout()
|
||||
form_layout = QFormLayout()
|
||||
# UI einrichten
|
||||
self.ui = Ui_SaxonJarConfigDialog()
|
||||
self.ui.setupUi(self)
|
||||
|
||||
# Version Eingabefeld
|
||||
self.version_edit = QLineEdit()
|
||||
form_layout.addRow("Version:", self.version_edit)
|
||||
|
||||
# Pfad zur JAR-Datei
|
||||
path_layout = QHBoxLayout()
|
||||
self.path_edit = QLineEdit()
|
||||
self.browse_button = QPushButton("Durchsuchen...")
|
||||
self.browse_button.clicked.connect(self.browse_jar_file)
|
||||
path_layout.addWidget(self.path_edit)
|
||||
path_layout.addWidget(self.browse_button)
|
||||
form_layout.addRow("Pfad zur JAR-Datei:", path_layout)
|
||||
|
||||
# Output-Dateierweiterung
|
||||
self.extension_edit = QLineEdit()
|
||||
self.extension_edit.setText("fo")
|
||||
form_layout.addRow("Output-Dateierweiterung:", self.extension_edit)
|
||||
|
||||
layout.addLayout(form_layout)
|
||||
|
||||
# Dialog-Buttons
|
||||
button_box = QDialogButtonBox(QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel)
|
||||
button_box.accepted.connect(self.accept)
|
||||
button_box.rejected.connect(self.reject)
|
||||
layout.addWidget(button_box)
|
||||
|
||||
self.setLayout(layout)
|
||||
# Signale verbinden
|
||||
self.ui.browseButton.clicked.connect(self.browse_jar_file)
|
||||
|
||||
def browse_jar_file(self):
|
||||
"""Öffnet einen Dateidialog für die JAR-Datei."""
|
||||
@@ -184,17 +105,17 @@ class SaxonJarConfigDialog(QDialog):
|
||||
"JAR Files (*.jar);;All Files (*)"
|
||||
)
|
||||
if file_path:
|
||||
self.path_edit.setText(file_path)
|
||||
self.ui.pathEdit.setText(file_path)
|
||||
|
||||
def get_data(self):
|
||||
"""Gibt die eingegebenen Daten zurück."""
|
||||
if not self.version_edit.text().strip() or not self.path_edit.text().strip():
|
||||
if not self.ui.versionEdit.text().strip() or not self.ui.pathEdit.text().strip():
|
||||
return None
|
||||
|
||||
return {
|
||||
'version': self.version_edit.text().strip(),
|
||||
'path_to_jar_file': Path(self.path_edit.text().strip()),
|
||||
'output_file_extension': self.extension_edit.text().strip() or "fo"
|
||||
'version': self.ui.versionEdit.text().strip(),
|
||||
'path_to_jar_file': Path(self.ui.pathEdit.text().strip()),
|
||||
'output_file_extension': self.ui.extensionEdit.text().strip() or "fo"
|
||||
}
|
||||
|
||||
|
||||
@@ -203,41 +124,13 @@ class ApacheFopConfigDialog(QDialog):
|
||||
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
self.setWindowTitle("Apache FOP Konfiguration")
|
||||
self.setModal(True)
|
||||
self.resize(500, 200)
|
||||
|
||||
# Layout erstellen
|
||||
layout = QVBoxLayout()
|
||||
form_layout = QFormLayout()
|
||||
# UI einrichten
|
||||
self.ui = Ui_ApacheFopConfigDialog()
|
||||
self.ui.setupUi(self)
|
||||
|
||||
# Version Eingabefeld
|
||||
self.version_edit = QLineEdit()
|
||||
form_layout.addRow("Version:", self.version_edit)
|
||||
|
||||
# Pfad zum Verzeichnis
|
||||
path_layout = QHBoxLayout()
|
||||
self.path_edit = QLineEdit()
|
||||
self.browse_button = QPushButton("Durchsuchen...")
|
||||
self.browse_button.clicked.connect(self.browse_directory)
|
||||
path_layout.addWidget(self.path_edit)
|
||||
path_layout.addWidget(self.browse_button)
|
||||
form_layout.addRow("Pfad zum FOP-Verzeichnis:", path_layout)
|
||||
|
||||
# Output-Dateierweiterung
|
||||
self.extension_edit = QLineEdit()
|
||||
self.extension_edit.setText("pdf")
|
||||
form_layout.addRow("Output-Dateierweiterung:", self.extension_edit)
|
||||
|
||||
layout.addLayout(form_layout)
|
||||
|
||||
# Dialog-Buttons
|
||||
button_box = QDialogButtonBox(QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel)
|
||||
button_box.accepted.connect(self.accept)
|
||||
button_box.rejected.connect(self.reject)
|
||||
layout.addWidget(button_box)
|
||||
|
||||
self.setLayout(layout)
|
||||
# Signale verbinden
|
||||
self.ui.browseButton.clicked.connect(self.browse_directory)
|
||||
|
||||
def browse_directory(self):
|
||||
"""Öffnet einen Verzeichnisdialog."""
|
||||
@@ -245,17 +138,17 @@ class ApacheFopConfigDialog(QDialog):
|
||||
self, "Apache FOP Verzeichnis auswählen"
|
||||
)
|
||||
if dir_path:
|
||||
self.path_edit.setText(dir_path)
|
||||
self.ui.pathEdit.setText(dir_path)
|
||||
|
||||
def get_data(self):
|
||||
"""Gibt die eingegebenen Daten zurück."""
|
||||
if not self.version_edit.text().strip() or not self.path_edit.text().strip():
|
||||
if not self.ui.versionEdit.text().strip() or not self.ui.pathEdit.text().strip():
|
||||
return None
|
||||
|
||||
return {
|
||||
'version': self.version_edit.text().strip(),
|
||||
'path_to_dir': Path(self.path_edit.text().strip()),
|
||||
'output_file_extension': self.extension_edit.text().strip() or "pdf"
|
||||
'version': self.ui.versionEdit.text().strip(),
|
||||
'path_to_dir': Path(self.ui.pathEdit.text().strip()),
|
||||
'output_file_extension': self.ui.extensionEdit.text().strip() or "pdf"
|
||||
}
|
||||
|
||||
|
||||
@@ -264,36 +157,13 @@ class XslDirConfigDialog(QDialog):
|
||||
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
self.setWindowTitle("XSL-Verzeichnis Konfiguration")
|
||||
self.setModal(True)
|
||||
self.resize(500, 150)
|
||||
|
||||
# Layout erstellen
|
||||
layout = QVBoxLayout()
|
||||
form_layout = QFormLayout()
|
||||
# UI einrichten
|
||||
self.ui = Ui_XslDirConfigDialog()
|
||||
self.ui.setupUi(self)
|
||||
|
||||
# Name Eingabefeld
|
||||
self.name_edit = QLineEdit()
|
||||
form_layout.addRow("Name:", self.name_edit)
|
||||
|
||||
# Pfad zum Root-Verzeichnis
|
||||
path_layout = QHBoxLayout()
|
||||
self.path_edit = QLineEdit()
|
||||
self.browse_button = QPushButton("Durchsuchen...")
|
||||
self.browse_button.clicked.connect(self.browse_directory)
|
||||
path_layout.addWidget(self.path_edit)
|
||||
path_layout.addWidget(self.browse_button)
|
||||
form_layout.addRow("Pfad zum Root-Verzeichnis:", path_layout)
|
||||
|
||||
layout.addLayout(form_layout)
|
||||
|
||||
# Dialog-Buttons
|
||||
button_box = QDialogButtonBox(QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel)
|
||||
button_box.accepted.connect(self.accept)
|
||||
button_box.rejected.connect(self.reject)
|
||||
layout.addWidget(button_box)
|
||||
|
||||
self.setLayout(layout)
|
||||
# Signale verbinden
|
||||
self.ui.browseButton.clicked.connect(self.browse_directory)
|
||||
|
||||
def browse_directory(self):
|
||||
"""Öffnet einen Verzeichnisdialog."""
|
||||
@@ -301,16 +171,16 @@ class XslDirConfigDialog(QDialog):
|
||||
self, "XSL Root-Verzeichnis auswählen"
|
||||
)
|
||||
if dir_path:
|
||||
self.path_edit.setText(dir_path)
|
||||
self.ui.pathEdit.setText(dir_path)
|
||||
|
||||
def get_data(self):
|
||||
"""Gibt die eingegebenen Daten zurück."""
|
||||
if not self.name_edit.text().strip() or not self.path_edit.text().strip():
|
||||
if not self.ui.nameEdit.text().strip() or not self.ui.pathEdit.text().strip():
|
||||
return None
|
||||
|
||||
return {
|
||||
'name': self.name_edit.text().strip(),
|
||||
'path_to_root_dir': Path(self.path_edit.text().strip())
|
||||
'name': self.ui.nameEdit.text().strip(),
|
||||
'path_to_root_dir': Path(self.ui.pathEdit.text().strip())
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user