76b5182a53
- `JavaVmConfigDialog` - `DiffPdfConfigDialog` - `SaxonJarConfigDialog` - `ApacheFopConfigDialog` - `XslDirConfigDialog`
43 lines
1.4 KiB
Python
43 lines
1.4 KiB
Python
from PySide6.QtWidgets import QDialog, QFileDialog
|
|
from pathlib import Path
|
|
|
|
from ui.JavaVmConfigDialog_ui import Ui_JavaVmConfigDialog
|
|
|
|
|
|
class JavaVmConfigDialog(QDialog):
|
|
"""Dialog zur Konfiguration einer Java VM ohne ID."""
|
|
|
|
def __init__(self, parent=None):
|
|
super().__init__(parent)
|
|
|
|
# UI einrichten
|
|
self.ui = Ui_JavaVmConfigDialog()
|
|
self.ui.setupUi(self)
|
|
|
|
# Signale verbinden
|
|
self.ui.browseButton.clicked.connect(self.browse_binary_file)
|
|
|
|
def browse_binary_file(self):
|
|
"""Öffnet einen Dateidialog für die Binary-Datei."""
|
|
file_path, _ = QFileDialog.getOpenFileName(
|
|
self, "Java Binary-Datei auswählen", "", "Executable Files (*.exe);;All Files (*)"
|
|
)
|
|
if file_path:
|
|
self.ui.pathEdit.setText(file_path)
|
|
|
|
def set_data(self, data):
|
|
"""Setzt die Daten in den Dialog."""
|
|
if data:
|
|
self.ui.versionEdit.setText(data.get("version", ""))
|
|
self.ui.pathEdit.setText(str(data.get("path_to_binary_file", "")))
|
|
|
|
def get_data(self):
|
|
"""Gibt die eingegebenen Daten zurück."""
|
|
if not self.ui.versionEdit.text().strip() or not self.ui.pathEdit.text().strip():
|
|
return None
|
|
|
|
return {
|
|
"version": self.ui.versionEdit.text().strip(),
|
|
"path_to_binary_file": Path(self.ui.pathEdit.text().strip()),
|
|
}
|