Nodes sollen bearbeitbar sein
This commit is contained in:
+123
-4
@@ -12,6 +12,8 @@ from PySide6.QtPdf import QPdfDocument
|
||||
from ui.MainWinddow_ui import Ui_MainWindow
|
||||
from ui.AppSettings import AppSettingsDlg
|
||||
from ui.PdfProject import PdfProjectDlg
|
||||
from ui.TreeNodeEditDialog import TreeNodeEditDialog
|
||||
from ui.XslFileEditDialog import XslFileEditDialog
|
||||
from conf import app_settings, Project, ProjectData, TreeNode, XslFile, XmlFile
|
||||
from pathlib import Path
|
||||
|
||||
@@ -1041,9 +1043,49 @@ class MainWindow(QMainWindow):
|
||||
# TODO: Dialog zum Auswählen der XSL-Datei öffnen
|
||||
|
||||
def _edit_tree_node(self, item):
|
||||
"""Bearbeitet einen TreeNode."""
|
||||
"""
|
||||
Bearbeitet einen TreeNode.
|
||||
|
||||
Args:
|
||||
item: Das TreeWidgetItem des TreeNode
|
||||
"""
|
||||
print(f"TreeNode bearbeiten: {item.text(0)}")
|
||||
# TODO: Dialog zum Bearbeiten der Node-Daten öffnen
|
||||
|
||||
try:
|
||||
# Hole das Node-Objekt aus dem TreeWidgetItem
|
||||
node = item.data(0, Qt.ItemDataRole.UserRole)
|
||||
if not node or not isinstance(node, TreeNode):
|
||||
QMessageBox.warning(self, "Warnung", "Kein gültiger TreeNode gefunden.")
|
||||
return
|
||||
|
||||
# Sammle Eltern-Parameter
|
||||
parent_params = self._collect_parent_params(item)
|
||||
|
||||
# Erstelle und zeige den Dialog
|
||||
dialog = TreeNodeEditDialog(self, node, parent_params)
|
||||
if dialog.exec() == TreeNodeEditDialog.DialogCode.Accepted:
|
||||
# Hole die bearbeiteten Daten
|
||||
data = dialog.get_data()
|
||||
if data:
|
||||
# Aktualisiere den Node
|
||||
node.bez = data['bez']
|
||||
node.xslt_params = data['xslt_params']
|
||||
|
||||
print(f"TreeNode '{node.bez}' wurde aktualisiert")
|
||||
print(f"XSLT-Parameter: {node.xslt_params}")
|
||||
|
||||
# Speichere die Änderungen
|
||||
self._save_project_settings()
|
||||
|
||||
# Aktualisiere das TreeWidget
|
||||
self._load_nodes_to_tree()
|
||||
|
||||
QMessageBox.information(self, "Erfolg", "TreeNode wurde erfolgreich aktualisiert.")
|
||||
|
||||
except Exception as e:
|
||||
error_msg = f"Fehler beim Bearbeiten des TreeNode: {str(e)}"
|
||||
print(error_msg)
|
||||
QMessageBox.critical(self, "Fehler", error_msg)
|
||||
|
||||
def _delete_tree_node(self, item):
|
||||
"""Löscht einen TreeNode."""
|
||||
@@ -1168,9 +1210,49 @@ class MainWindow(QMainWindow):
|
||||
QMessageBox.critical(self, "Fehler", error_msg)
|
||||
|
||||
def _edit_xsl_file(self, item):
|
||||
"""Bearbeitet eine XSL-Datei."""
|
||||
"""
|
||||
Bearbeitet eine XSL-Datei.
|
||||
|
||||
Args:
|
||||
item: Das TreeWidgetItem des XslFile
|
||||
"""
|
||||
print(f"XslFile bearbeiten: {item.text(0)}")
|
||||
# TODO: Dialog zum Bearbeiten der XSL-Datei öffnen
|
||||
|
||||
try:
|
||||
# Hole das Node-Objekt aus dem TreeWidgetItem
|
||||
node = item.data(0, Qt.ItemDataRole.UserRole)
|
||||
if not node or not isinstance(node, XslFile):
|
||||
QMessageBox.warning(self, "Warnung", "Keine gültige XSL-Datei gefunden.")
|
||||
return
|
||||
|
||||
# Sammle Eltern-Parameter
|
||||
parent_params = self._collect_parent_params(item)
|
||||
|
||||
# Erstelle und zeige den Dialog
|
||||
dialog = XslFileEditDialog(self, node, parent_params)
|
||||
if dialog.exec() == XslFileEditDialog.DialogCode.Accepted:
|
||||
# Hole die bearbeiteten Daten
|
||||
data = dialog.get_data()
|
||||
if data:
|
||||
# Aktualisiere den Node
|
||||
node.bez = data['bez']
|
||||
node.xslt_params = data['xslt_params']
|
||||
|
||||
print(f"XslFile '{node.bez}' wurde aktualisiert")
|
||||
print(f"XSLT-Parameter: {node.xslt_params}")
|
||||
|
||||
# Speichere die Änderungen
|
||||
self._save_project_settings()
|
||||
|
||||
# Aktualisiere das TreeWidget
|
||||
self._load_nodes_to_tree()
|
||||
|
||||
QMessageBox.information(self, "Erfolg", "XSL-Datei wurde erfolgreich aktualisiert.")
|
||||
|
||||
except Exception as e:
|
||||
error_msg = f"Fehler beim Bearbeiten der XSL-Datei: {str(e)}"
|
||||
print(error_msg)
|
||||
QMessageBox.critical(self, "Fehler", error_msg)
|
||||
|
||||
def _delete_xsl_file(self, item):
|
||||
"""Löscht eine XSL-Datei."""
|
||||
@@ -1439,6 +1521,43 @@ class MainWindow(QMainWindow):
|
||||
existing_node.children.append(new_child)
|
||||
print(f"Neues Kind hinzugefügt zu Node {existing_node.id}: {new_child.bez}")
|
||||
|
||||
def _collect_parent_params(self, item):
|
||||
"""
|
||||
Sammelt die XSLT-Parameter aller Eltern-Nodes.
|
||||
|
||||
Args:
|
||||
item: Das TreeWidgetItem
|
||||
|
||||
Returns:
|
||||
dict: Dictionary mit allen Eltern-Parametern
|
||||
"""
|
||||
parent_params = {}
|
||||
|
||||
try:
|
||||
# Gehe die Hierarchie nach oben durch
|
||||
current_item = item.parent()
|
||||
|
||||
while current_item:
|
||||
# Hole das Node-Objekt
|
||||
parent_node = current_item.data(0, Qt.ItemDataRole.UserRole)
|
||||
|
||||
if parent_node and hasattr(parent_node, 'xslt_params') and parent_node.xslt_params:
|
||||
# Füge die Parameter des Eltern-Nodes hinzu
|
||||
# Eltern-Parameter haben niedrigere Priorität (werden überschrieben)
|
||||
for key, value in parent_node.xslt_params.items():
|
||||
if key not in parent_params: # Nur hinzufügen wenn noch nicht vorhanden
|
||||
parent_params[key] = value
|
||||
|
||||
# Gehe zum nächsten Eltern-Element
|
||||
current_item = current_item.parent()
|
||||
|
||||
print(f"Gesammelte Eltern-Parameter: {parent_params}")
|
||||
return parent_params
|
||||
|
||||
except Exception as e:
|
||||
print(f"Fehler beim Sammeln der Eltern-Parameter: {e}")
|
||||
return {}
|
||||
|
||||
def _save_project_settings(self):
|
||||
"""
|
||||
Speichert die aktualisierten Projekt-Einstellungen.
|
||||
|
||||
@@ -0,0 +1,158 @@
|
||||
from PySide6.QtWidgets import QDialog, QTableWidgetItem, QMessageBox
|
||||
from PySide6.QtCore import Qt
|
||||
|
||||
from ui.TreeNodeEditDialog_ui import Ui_TreeNodeEditDialog
|
||||
from conf import TreeNode
|
||||
|
||||
|
||||
class TreeNodeEditDialog(QDialog):
|
||||
"""Dialog zur Bearbeitung von TreeNode-Objekten."""
|
||||
|
||||
def __init__(self, parent=None, node=None, parent_params=None):
|
||||
"""
|
||||
Initialisiert den Dialog.
|
||||
|
||||
Args:
|
||||
parent: Übergeordnetes Widget
|
||||
node: TreeNode-Objekt zum Bearbeiten
|
||||
parent_params: Dictionary mit Eltern-Parametern (nur anzeigen)
|
||||
"""
|
||||
super().__init__(parent)
|
||||
|
||||
# UI einrichten
|
||||
self.ui = Ui_TreeNodeEditDialog()
|
||||
self.ui.setupUi(self)
|
||||
|
||||
# Node-Objekt speichern
|
||||
self.node = node
|
||||
self.parent_params = parent_params or {}
|
||||
|
||||
# Signale verbinden
|
||||
self.ui.addParamButton.clicked.connect(self.add_parameter)
|
||||
self.ui.removeParamButton.clicked.connect(self.remove_parameter)
|
||||
|
||||
# Tabellen konfigurieren
|
||||
self._setup_tables()
|
||||
|
||||
# Daten laden
|
||||
if self.node:
|
||||
self._load_data()
|
||||
|
||||
def _setup_tables(self):
|
||||
"""Konfiguriert die Tabellen."""
|
||||
# XSLT Parameter Tabelle
|
||||
self.ui.xsltParamsTable.setColumnWidth(0, 200)
|
||||
self.ui.xsltParamsTable.setColumnWidth(1, 300)
|
||||
self.ui.xsltParamsTable.horizontalHeader().setStretchLastSection(True)
|
||||
|
||||
# Eltern-Parameter Tabelle
|
||||
self.ui.parentParamsTable.setColumnWidth(0, 200)
|
||||
self.ui.parentParamsTable.setColumnWidth(1, 300)
|
||||
self.ui.parentParamsTable.horizontalHeader().setStretchLastSection(True)
|
||||
|
||||
def _load_data(self):
|
||||
"""Lädt die Daten des TreeNode in den Dialog."""
|
||||
if not self.node:
|
||||
return
|
||||
|
||||
# Bezeichnung setzen
|
||||
self.ui.bezEdit.setText(str(self.node.bez) if self.node.bez else "")
|
||||
|
||||
# XSLT Parameter laden
|
||||
self._load_xslt_params()
|
||||
|
||||
# Eltern-Parameter laden
|
||||
self._load_parent_params()
|
||||
|
||||
def _load_xslt_params(self):
|
||||
"""Lädt die XSLT Parameter in die Tabelle."""
|
||||
if not self.node or not self.node.xslt_params:
|
||||
return
|
||||
|
||||
params = self.node.xslt_params
|
||||
self.ui.xsltParamsTable.setRowCount(len(params))
|
||||
|
||||
for row, (key, value) in enumerate(params.items()):
|
||||
# Parameter-Name
|
||||
key_item = QTableWidgetItem(str(key))
|
||||
self.ui.xsltParamsTable.setItem(row, 0, key_item)
|
||||
|
||||
# Parameter-Wert
|
||||
value_item = QTableWidgetItem(str(value))
|
||||
self.ui.xsltParamsTable.setItem(row, 1, value_item)
|
||||
|
||||
def _load_parent_params(self):
|
||||
"""Lädt die Eltern-Parameter in die Tabelle (nur anzeigen)."""
|
||||
if not self.parent_params:
|
||||
return
|
||||
|
||||
self.ui.parentParamsTable.setRowCount(len(self.parent_params))
|
||||
|
||||
for row, (key, value) in enumerate(self.parent_params.items()):
|
||||
# Parameter-Name
|
||||
key_item = QTableWidgetItem(str(key))
|
||||
key_item.setFlags(key_item.flags() & ~Qt.ItemFlag.ItemIsEditable)
|
||||
self.ui.parentParamsTable.setItem(row, 0, key_item)
|
||||
|
||||
# Parameter-Wert
|
||||
value_item = QTableWidgetItem(str(value))
|
||||
value_item.setFlags(value_item.flags() & ~Qt.ItemFlag.ItemIsEditable)
|
||||
self.ui.parentParamsTable.setItem(row, 1, value_item)
|
||||
|
||||
def add_parameter(self):
|
||||
"""Fügt einen neuen Parameter hinzu."""
|
||||
row_count = self.ui.xsltParamsTable.rowCount()
|
||||
self.ui.xsltParamsTable.insertRow(row_count)
|
||||
|
||||
# Leere Items hinzufügen
|
||||
key_item = QTableWidgetItem("")
|
||||
value_item = QTableWidgetItem("")
|
||||
|
||||
self.ui.xsltParamsTable.setItem(row_count, 0, key_item)
|
||||
self.ui.xsltParamsTable.setItem(row_count, 1, value_item)
|
||||
|
||||
# Fokus auf den neuen Parameter setzen
|
||||
self.ui.xsltParamsTable.setCurrentCell(row_count, 0)
|
||||
|
||||
def remove_parameter(self):
|
||||
"""Entfernt den ausgewählten Parameter."""
|
||||
current_row = self.ui.xsltParamsTable.currentRow()
|
||||
if current_row >= 0:
|
||||
self.ui.xsltParamsTable.removeRow(current_row)
|
||||
|
||||
def get_data(self):
|
||||
"""
|
||||
Gibt die bearbeiteten Daten zurück.
|
||||
|
||||
Returns:
|
||||
dict: Dictionary mit den bearbeiteten Daten oder None bei Fehler
|
||||
"""
|
||||
# Bezeichnung prüfen
|
||||
bez = self.ui.bezEdit.text().strip()
|
||||
if not bez:
|
||||
QMessageBox.warning(self, "Warnung", "Bitte geben Sie eine Bezeichnung ein.")
|
||||
return None
|
||||
|
||||
# XSLT Parameter sammeln
|
||||
xslt_params = {}
|
||||
for row in range(self.ui.xsltParamsTable.rowCount()):
|
||||
key_item = self.ui.xsltParamsTable.item(row, 0)
|
||||
value_item = self.ui.xsltParamsTable.item(row, 1)
|
||||
|
||||
if key_item and value_item:
|
||||
key = key_item.text().strip()
|
||||
value = value_item.text().strip()
|
||||
|
||||
if key: # Nur Parameter mit nicht-leerem Schlüssel hinzufügen
|
||||
xslt_params[key] = value
|
||||
|
||||
return {
|
||||
"bez": bez,
|
||||
"xslt_params": xslt_params
|
||||
}
|
||||
|
||||
def accept(self):
|
||||
"""Überschreibt accept() um Datenvalidierung durchzuführen."""
|
||||
data = self.get_data()
|
||||
if data is not None:
|
||||
super().accept()
|
||||
@@ -0,0 +1,179 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>TreeNodeEditDialog</class>
|
||||
<widget class="QDialog" name="TreeNodeEditDialog">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>600</width>
|
||||
<height>400</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>TreeNode bearbeiten</string>
|
||||
</property>
|
||||
<property name="modal">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<layout class="QFormLayout" name="formLayout">
|
||||
<property name="sizeConstraint">
|
||||
<enum>QLayout::SizeConstraint::SetMaximumSize</enum>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="bezLabel">
|
||||
<property name="text">
|
||||
<string>Bezeichnung:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QLineEdit" name="bezEdit"/>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="xsltParamsGroupBox">
|
||||
<property name="title">
|
||||
<string>XSLT Parameter</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="xsltParamsLayout">
|
||||
<item>
|
||||
<widget class="QTableWidget" name="xsltParamsTable">
|
||||
<property name="columnCount">
|
||||
<number>2</number>
|
||||
</property>
|
||||
<attribute name="horizontalHeaderVisible">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Parameter</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Wert</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="xsltParamsButtonLayout">
|
||||
<item>
|
||||
<widget class="QPushButton" name="addParamButton">
|
||||
<property name="text">
|
||||
<string>Parameter hinzufügen</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="removeParamButton">
|
||||
<property name="text">
|
||||
<string>Parameter entfernen</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Orientation::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="parentParamsGroupBox">
|
||||
<property name="title">
|
||||
<string>Eltern-Parameter (nur anzeigen)</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="parentParamsLayout">
|
||||
<item>
|
||||
<widget class="QTableWidget" name="parentParamsTable">
|
||||
<property name="columnCount">
|
||||
<number>2</number>
|
||||
</property>
|
||||
<property name="editTriggers">
|
||||
<set>QAbstractItemView::EditTrigger::NoEditTriggers</set>
|
||||
</property>
|
||||
<attribute name="horizontalHeaderVisible">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Parameter</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Wert</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QDialogButtonBox" name="buttonBox">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Orientation::Horizontal</enum>
|
||||
</property>
|
||||
<property name="standardButtons">
|
||||
<set>QDialogButtonBox::StandardButton::Cancel|QDialogButtonBox::StandardButton::Ok</set>
|
||||
</property>
|
||||
<property name="centerButtons">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>accepted()</signal>
|
||||
<receiver>TreeNodeEditDialog</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>TreeNodeEditDialog</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,0 +1,140 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
################################################################################
|
||||
## Form generated from reading UI file 'TreeNodeEditDialog.ui'
|
||||
##
|
||||
## Created by: Qt User Interface Compiler version 6.9.1
|
||||
##
|
||||
## 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, QAbstractItemView, QApplication, QDialog,
|
||||
QDialogButtonBox, QFormLayout, QGroupBox, QHBoxLayout,
|
||||
QHeaderView, QLabel, QLayout, QLineEdit,
|
||||
QPushButton, QSizePolicy, QSpacerItem, QTableWidget,
|
||||
QTableWidgetItem, QVBoxLayout, QWidget)
|
||||
|
||||
class Ui_TreeNodeEditDialog(object):
|
||||
def setupUi(self, TreeNodeEditDialog):
|
||||
if not TreeNodeEditDialog.objectName():
|
||||
TreeNodeEditDialog.setObjectName(u"TreeNodeEditDialog")
|
||||
TreeNodeEditDialog.resize(600, 400)
|
||||
TreeNodeEditDialog.setModal(True)
|
||||
self.verticalLayout = QVBoxLayout(TreeNodeEditDialog)
|
||||
self.verticalLayout.setObjectName(u"verticalLayout")
|
||||
self.formLayout = QFormLayout()
|
||||
self.formLayout.setObjectName(u"formLayout")
|
||||
self.formLayout.setSizeConstraint(QLayout.SizeConstraint.SetMaximumSize)
|
||||
self.bezLabel = QLabel(TreeNodeEditDialog)
|
||||
self.bezLabel.setObjectName(u"bezLabel")
|
||||
|
||||
self.formLayout.setWidget(0, QFormLayout.ItemRole.LabelRole, self.bezLabel)
|
||||
|
||||
self.bezEdit = QLineEdit(TreeNodeEditDialog)
|
||||
self.bezEdit.setObjectName(u"bezEdit")
|
||||
|
||||
self.formLayout.setWidget(0, QFormLayout.ItemRole.FieldRole, self.bezEdit)
|
||||
|
||||
|
||||
self.verticalLayout.addLayout(self.formLayout)
|
||||
|
||||
self.xsltParamsGroupBox = QGroupBox(TreeNodeEditDialog)
|
||||
self.xsltParamsGroupBox.setObjectName(u"xsltParamsGroupBox")
|
||||
self.xsltParamsLayout = QVBoxLayout(self.xsltParamsGroupBox)
|
||||
self.xsltParamsLayout.setObjectName(u"xsltParamsLayout")
|
||||
self.xsltParamsTable = QTableWidget(self.xsltParamsGroupBox)
|
||||
if (self.xsltParamsTable.columnCount() < 2):
|
||||
self.xsltParamsTable.setColumnCount(2)
|
||||
__qtablewidgetitem = QTableWidgetItem()
|
||||
self.xsltParamsTable.setHorizontalHeaderItem(0, __qtablewidgetitem)
|
||||
__qtablewidgetitem1 = QTableWidgetItem()
|
||||
self.xsltParamsTable.setHorizontalHeaderItem(1, __qtablewidgetitem1)
|
||||
self.xsltParamsTable.setObjectName(u"xsltParamsTable")
|
||||
self.xsltParamsTable.setColumnCount(2)
|
||||
self.xsltParamsTable.horizontalHeader().setVisible(True)
|
||||
|
||||
self.xsltParamsLayout.addWidget(self.xsltParamsTable)
|
||||
|
||||
self.xsltParamsButtonLayout = QHBoxLayout()
|
||||
self.xsltParamsButtonLayout.setObjectName(u"xsltParamsButtonLayout")
|
||||
self.addParamButton = QPushButton(self.xsltParamsGroupBox)
|
||||
self.addParamButton.setObjectName(u"addParamButton")
|
||||
|
||||
self.xsltParamsButtonLayout.addWidget(self.addParamButton)
|
||||
|
||||
self.removeParamButton = QPushButton(self.xsltParamsGroupBox)
|
||||
self.removeParamButton.setObjectName(u"removeParamButton")
|
||||
|
||||
self.xsltParamsButtonLayout.addWidget(self.removeParamButton)
|
||||
|
||||
self.horizontalSpacer = QSpacerItem(40, 20, QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Minimum)
|
||||
|
||||
self.xsltParamsButtonLayout.addItem(self.horizontalSpacer)
|
||||
|
||||
|
||||
self.xsltParamsLayout.addLayout(self.xsltParamsButtonLayout)
|
||||
|
||||
|
||||
self.verticalLayout.addWidget(self.xsltParamsGroupBox)
|
||||
|
||||
self.parentParamsGroupBox = QGroupBox(TreeNodeEditDialog)
|
||||
self.parentParamsGroupBox.setObjectName(u"parentParamsGroupBox")
|
||||
self.parentParamsLayout = QVBoxLayout(self.parentParamsGroupBox)
|
||||
self.parentParamsLayout.setObjectName(u"parentParamsLayout")
|
||||
self.parentParamsTable = QTableWidget(self.parentParamsGroupBox)
|
||||
if (self.parentParamsTable.columnCount() < 2):
|
||||
self.parentParamsTable.setColumnCount(2)
|
||||
__qtablewidgetitem2 = QTableWidgetItem()
|
||||
self.parentParamsTable.setHorizontalHeaderItem(0, __qtablewidgetitem2)
|
||||
__qtablewidgetitem3 = QTableWidgetItem()
|
||||
self.parentParamsTable.setHorizontalHeaderItem(1, __qtablewidgetitem3)
|
||||
self.parentParamsTable.setObjectName(u"parentParamsTable")
|
||||
self.parentParamsTable.setColumnCount(2)
|
||||
self.parentParamsTable.setEditTriggers(QAbstractItemView.EditTrigger.NoEditTriggers)
|
||||
self.parentParamsTable.horizontalHeader().setVisible(True)
|
||||
|
||||
self.parentParamsLayout.addWidget(self.parentParamsTable)
|
||||
|
||||
|
||||
self.verticalLayout.addWidget(self.parentParamsGroupBox)
|
||||
|
||||
self.buttonBox = QDialogButtonBox(TreeNodeEditDialog)
|
||||
self.buttonBox.setObjectName(u"buttonBox")
|
||||
self.buttonBox.setOrientation(Qt.Orientation.Horizontal)
|
||||
self.buttonBox.setStandardButtons(QDialogButtonBox.StandardButton.Cancel|QDialogButtonBox.StandardButton.Ok)
|
||||
self.buttonBox.setCenterButtons(True)
|
||||
|
||||
self.verticalLayout.addWidget(self.buttonBox)
|
||||
|
||||
|
||||
self.retranslateUi(TreeNodeEditDialog)
|
||||
self.buttonBox.accepted.connect(TreeNodeEditDialog.accept)
|
||||
self.buttonBox.rejected.connect(TreeNodeEditDialog.reject)
|
||||
|
||||
QMetaObject.connectSlotsByName(TreeNodeEditDialog)
|
||||
# setupUi
|
||||
|
||||
def retranslateUi(self, TreeNodeEditDialog):
|
||||
TreeNodeEditDialog.setWindowTitle(QCoreApplication.translate("TreeNodeEditDialog", u"TreeNode bearbeiten", None))
|
||||
self.bezLabel.setText(QCoreApplication.translate("TreeNodeEditDialog", u"Bezeichnung:", None))
|
||||
self.xsltParamsGroupBox.setTitle(QCoreApplication.translate("TreeNodeEditDialog", u"XSLT Parameter", None))
|
||||
___qtablewidgetitem = self.xsltParamsTable.horizontalHeaderItem(0)
|
||||
___qtablewidgetitem.setText(QCoreApplication.translate("TreeNodeEditDialog", u"Parameter", None));
|
||||
___qtablewidgetitem1 = self.xsltParamsTable.horizontalHeaderItem(1)
|
||||
___qtablewidgetitem1.setText(QCoreApplication.translate("TreeNodeEditDialog", u"Wert", None));
|
||||
self.addParamButton.setText(QCoreApplication.translate("TreeNodeEditDialog", u"Parameter hinzuf\u00fcgen", None))
|
||||
self.removeParamButton.setText(QCoreApplication.translate("TreeNodeEditDialog", u"Parameter entfernen", None))
|
||||
self.parentParamsGroupBox.setTitle(QCoreApplication.translate("TreeNodeEditDialog", u"Eltern-Parameter (nur anzeigen)", None))
|
||||
___qtablewidgetitem2 = self.parentParamsTable.horizontalHeaderItem(0)
|
||||
___qtablewidgetitem2.setText(QCoreApplication.translate("TreeNodeEditDialog", u"Parameter", None));
|
||||
___qtablewidgetitem3 = self.parentParamsTable.horizontalHeaderItem(1)
|
||||
___qtablewidgetitem3.setText(QCoreApplication.translate("TreeNodeEditDialog", u"Wert", None));
|
||||
# retranslateUi
|
||||
|
||||
@@ -0,0 +1,158 @@
|
||||
from PySide6.QtWidgets import QDialog, QTableWidgetItem, QMessageBox
|
||||
from PySide6.QtCore import Qt
|
||||
|
||||
from ui.XslFileEditDialog_ui import Ui_XslFileEditDialog
|
||||
from conf import XslFile
|
||||
|
||||
|
||||
class XslFileEditDialog(QDialog):
|
||||
"""Dialog zur Bearbeitung von XslFile-Objekten."""
|
||||
|
||||
def __init__(self, parent=None, node=None, parent_params=None):
|
||||
"""
|
||||
Initialisiert den Dialog.
|
||||
|
||||
Args:
|
||||
parent: Übergeordnetes Widget
|
||||
node: XslFile-Objekt zum Bearbeiten
|
||||
parent_params: Dictionary mit Eltern-Parametern (nur anzeigen)
|
||||
"""
|
||||
super().__init__(parent)
|
||||
|
||||
# UI einrichten
|
||||
self.ui = Ui_XslFileEditDialog()
|
||||
self.ui.setupUi(self)
|
||||
|
||||
# Node-Objekt speichern
|
||||
self.node = node
|
||||
self.parent_params = parent_params or {}
|
||||
|
||||
# Signale verbinden
|
||||
self.ui.addParamButton.clicked.connect(self.add_parameter)
|
||||
self.ui.removeParamButton.clicked.connect(self.remove_parameter)
|
||||
|
||||
# Tabellen konfigurieren
|
||||
self._setup_tables()
|
||||
|
||||
# Daten laden
|
||||
if self.node:
|
||||
self._load_data()
|
||||
|
||||
def _setup_tables(self):
|
||||
"""Konfiguriert die Tabellen."""
|
||||
# XSLT Parameter Tabelle
|
||||
self.ui.xsltParamsTable.setColumnWidth(0, 200)
|
||||
self.ui.xsltParamsTable.setColumnWidth(1, 300)
|
||||
self.ui.xsltParamsTable.horizontalHeader().setStretchLastSection(True)
|
||||
|
||||
# Eltern-Parameter Tabelle
|
||||
self.ui.parentParamsTable.setColumnWidth(0, 200)
|
||||
self.ui.parentParamsTable.setColumnWidth(1, 300)
|
||||
self.ui.parentParamsTable.horizontalHeader().setStretchLastSection(True)
|
||||
|
||||
def _load_data(self):
|
||||
"""Lädt die Daten des XslFile in den Dialog."""
|
||||
if not self.node:
|
||||
return
|
||||
|
||||
# Bezeichnung setzen
|
||||
self.ui.bezEdit.setText(str(self.node.bez) if self.node.bez else "")
|
||||
|
||||
# XSLT Parameter laden
|
||||
self._load_xslt_params()
|
||||
|
||||
# Eltern-Parameter laden
|
||||
self._load_parent_params()
|
||||
|
||||
def _load_xslt_params(self):
|
||||
"""Lädt die XSLT Parameter in die Tabelle."""
|
||||
if not self.node or not self.node.xslt_params:
|
||||
return
|
||||
|
||||
params = self.node.xslt_params
|
||||
self.ui.xsltParamsTable.setRowCount(len(params))
|
||||
|
||||
for row, (key, value) in enumerate(params.items()):
|
||||
# Parameter-Name
|
||||
key_item = QTableWidgetItem(str(key))
|
||||
self.ui.xsltParamsTable.setItem(row, 0, key_item)
|
||||
|
||||
# Parameter-Wert
|
||||
value_item = QTableWidgetItem(str(value))
|
||||
self.ui.xsltParamsTable.setItem(row, 1, value_item)
|
||||
|
||||
def _load_parent_params(self):
|
||||
"""Lädt die Eltern-Parameter in die Tabelle (nur anzeigen)."""
|
||||
if not self.parent_params:
|
||||
return
|
||||
|
||||
self.ui.parentParamsTable.setRowCount(len(self.parent_params))
|
||||
|
||||
for row, (key, value) in enumerate(self.parent_params.items()):
|
||||
# Parameter-Name
|
||||
key_item = QTableWidgetItem(str(key))
|
||||
key_item.setFlags(key_item.flags() & ~Qt.ItemFlag.ItemIsEditable)
|
||||
self.ui.parentParamsTable.setItem(row, 0, key_item)
|
||||
|
||||
# Parameter-Wert
|
||||
value_item = QTableWidgetItem(str(value))
|
||||
value_item.setFlags(value_item.flags() & ~Qt.ItemFlag.ItemIsEditable)
|
||||
self.ui.parentParamsTable.setItem(row, 1, value_item)
|
||||
|
||||
def add_parameter(self):
|
||||
"""Fügt einen neuen Parameter hinzu."""
|
||||
row_count = self.ui.xsltParamsTable.rowCount()
|
||||
self.ui.xsltParamsTable.insertRow(row_count)
|
||||
|
||||
# Leere Items hinzufügen
|
||||
key_item = QTableWidgetItem("")
|
||||
value_item = QTableWidgetItem("")
|
||||
|
||||
self.ui.xsltParamsTable.setItem(row_count, 0, key_item)
|
||||
self.ui.xsltParamsTable.setItem(row_count, 1, value_item)
|
||||
|
||||
# Fokus auf den neuen Parameter setzen
|
||||
self.ui.xsltParamsTable.setCurrentCell(row_count, 0)
|
||||
|
||||
def remove_parameter(self):
|
||||
"""Entfernt den ausgewählten Parameter."""
|
||||
current_row = self.ui.xsltParamsTable.currentRow()
|
||||
if current_row >= 0:
|
||||
self.ui.xsltParamsTable.removeRow(current_row)
|
||||
|
||||
def get_data(self):
|
||||
"""
|
||||
Gibt die bearbeiteten Daten zurück.
|
||||
|
||||
Returns:
|
||||
dict: Dictionary mit den bearbeiteten Daten oder None bei Fehler
|
||||
"""
|
||||
# Bezeichnung prüfen
|
||||
bez = self.ui.bezEdit.text().strip()
|
||||
if not bez:
|
||||
QMessageBox.warning(self, "Warnung", "Bitte geben Sie eine Bezeichnung ein.")
|
||||
return None
|
||||
|
||||
# XSLT Parameter sammeln
|
||||
xslt_params = {}
|
||||
for row in range(self.ui.xsltParamsTable.rowCount()):
|
||||
key_item = self.ui.xsltParamsTable.item(row, 0)
|
||||
value_item = self.ui.xsltParamsTable.item(row, 1)
|
||||
|
||||
if key_item and value_item:
|
||||
key = key_item.text().strip()
|
||||
value = value_item.text().strip()
|
||||
|
||||
if key: # Nur Parameter mit nicht-leerem Schlüssel hinzufügen
|
||||
xslt_params[key] = value
|
||||
|
||||
return {
|
||||
"bez": bez,
|
||||
"xslt_params": xslt_params
|
||||
}
|
||||
|
||||
def accept(self):
|
||||
"""Überschreibt accept() um Datenvalidierung durchzuführen."""
|
||||
data = self.get_data()
|
||||
if data is not None:
|
||||
super().accept()
|
||||
@@ -0,0 +1,179 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>XslFileEditDialog</class>
|
||||
<widget class="QDialog" name="XslFileEditDialog">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>600</width>
|
||||
<height>400</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>XSL-Datei bearbeiten</string>
|
||||
</property>
|
||||
<property name="modal">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<layout class="QFormLayout" name="formLayout">
|
||||
<property name="sizeConstraint">
|
||||
<enum>QLayout::SizeConstraint::SetMaximumSize</enum>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="bezLabel">
|
||||
<property name="text">
|
||||
<string>Bezeichnung:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QLineEdit" name="bezEdit"/>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="xsltParamsGroupBox">
|
||||
<property name="title">
|
||||
<string>XSLT Parameter</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="xsltParamsLayout">
|
||||
<item>
|
||||
<widget class="QTableWidget" name="xsltParamsTable">
|
||||
<property name="columnCount">
|
||||
<number>2</number>
|
||||
</property>
|
||||
<attribute name="horizontalHeaderVisible">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Parameter</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Wert</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="xsltParamsButtonLayout">
|
||||
<item>
|
||||
<widget class="QPushButton" name="addParamButton">
|
||||
<property name="text">
|
||||
<string>Parameter hinzufügen</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="removeParamButton">
|
||||
<property name="text">
|
||||
<string>Parameter entfernen</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Orientation::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="parentParamsGroupBox">
|
||||
<property name="title">
|
||||
<string>Eltern-Parameter (nur anzeigen)</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="parentParamsLayout">
|
||||
<item>
|
||||
<widget class="QTableWidget" name="parentParamsTable">
|
||||
<property name="columnCount">
|
||||
<number>2</number>
|
||||
</property>
|
||||
<property name="editTriggers">
|
||||
<set>QAbstractItemView::EditTrigger::NoEditTriggers</set>
|
||||
</property>
|
||||
<attribute name="horizontalHeaderVisible">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Parameter</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Wert</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QDialogButtonBox" name="buttonBox">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Orientation::Horizontal</enum>
|
||||
</property>
|
||||
<property name="standardButtons">
|
||||
<set>QDialogButtonBox::StandardButton::Cancel|QDialogButtonBox::StandardButton::Ok</set>
|
||||
</property>
|
||||
<property name="centerButtons">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>accepted()</signal>
|
||||
<receiver>XslFileEditDialog</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>XslFileEditDialog</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,0 +1,140 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
################################################################################
|
||||
## Form generated from reading UI file 'XslFileEditDialog.ui'
|
||||
##
|
||||
## Created by: Qt User Interface Compiler version 6.9.1
|
||||
##
|
||||
## 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, QAbstractItemView, QApplication, QDialog,
|
||||
QDialogButtonBox, QFormLayout, QGroupBox, QHBoxLayout,
|
||||
QHeaderView, QLabel, QLayout, QLineEdit,
|
||||
QPushButton, QSizePolicy, QSpacerItem, QTableWidget,
|
||||
QTableWidgetItem, QVBoxLayout, QWidget)
|
||||
|
||||
class Ui_XslFileEditDialog(object):
|
||||
def setupUi(self, XslFileEditDialog):
|
||||
if not XslFileEditDialog.objectName():
|
||||
XslFileEditDialog.setObjectName(u"XslFileEditDialog")
|
||||
XslFileEditDialog.resize(600, 400)
|
||||
XslFileEditDialog.setModal(True)
|
||||
self.verticalLayout = QVBoxLayout(XslFileEditDialog)
|
||||
self.verticalLayout.setObjectName(u"verticalLayout")
|
||||
self.formLayout = QFormLayout()
|
||||
self.formLayout.setObjectName(u"formLayout")
|
||||
self.formLayout.setSizeConstraint(QLayout.SizeConstraint.SetMaximumSize)
|
||||
self.bezLabel = QLabel(XslFileEditDialog)
|
||||
self.bezLabel.setObjectName(u"bezLabel")
|
||||
|
||||
self.formLayout.setWidget(0, QFormLayout.ItemRole.LabelRole, self.bezLabel)
|
||||
|
||||
self.bezEdit = QLineEdit(XslFileEditDialog)
|
||||
self.bezEdit.setObjectName(u"bezEdit")
|
||||
|
||||
self.formLayout.setWidget(0, QFormLayout.ItemRole.FieldRole, self.bezEdit)
|
||||
|
||||
|
||||
self.verticalLayout.addLayout(self.formLayout)
|
||||
|
||||
self.xsltParamsGroupBox = QGroupBox(XslFileEditDialog)
|
||||
self.xsltParamsGroupBox.setObjectName(u"xsltParamsGroupBox")
|
||||
self.xsltParamsLayout = QVBoxLayout(self.xsltParamsGroupBox)
|
||||
self.xsltParamsLayout.setObjectName(u"xsltParamsLayout")
|
||||
self.xsltParamsTable = QTableWidget(self.xsltParamsGroupBox)
|
||||
if (self.xsltParamsTable.columnCount() < 2):
|
||||
self.xsltParamsTable.setColumnCount(2)
|
||||
__qtablewidgetitem = QTableWidgetItem()
|
||||
self.xsltParamsTable.setHorizontalHeaderItem(0, __qtablewidgetitem)
|
||||
__qtablewidgetitem1 = QTableWidgetItem()
|
||||
self.xsltParamsTable.setHorizontalHeaderItem(1, __qtablewidgetitem1)
|
||||
self.xsltParamsTable.setObjectName(u"xsltParamsTable")
|
||||
self.xsltParamsTable.setColumnCount(2)
|
||||
self.xsltParamsTable.horizontalHeader().setVisible(True)
|
||||
|
||||
self.xsltParamsLayout.addWidget(self.xsltParamsTable)
|
||||
|
||||
self.xsltParamsButtonLayout = QHBoxLayout()
|
||||
self.xsltParamsButtonLayout.setObjectName(u"xsltParamsButtonLayout")
|
||||
self.addParamButton = QPushButton(self.xsltParamsGroupBox)
|
||||
self.addParamButton.setObjectName(u"addParamButton")
|
||||
|
||||
self.xsltParamsButtonLayout.addWidget(self.addParamButton)
|
||||
|
||||
self.removeParamButton = QPushButton(self.xsltParamsGroupBox)
|
||||
self.removeParamButton.setObjectName(u"removeParamButton")
|
||||
|
||||
self.xsltParamsButtonLayout.addWidget(self.removeParamButton)
|
||||
|
||||
self.horizontalSpacer = QSpacerItem(40, 20, QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Minimum)
|
||||
|
||||
self.xsltParamsButtonLayout.addItem(self.horizontalSpacer)
|
||||
|
||||
|
||||
self.xsltParamsLayout.addLayout(self.xsltParamsButtonLayout)
|
||||
|
||||
|
||||
self.verticalLayout.addWidget(self.xsltParamsGroupBox)
|
||||
|
||||
self.parentParamsGroupBox = QGroupBox(XslFileEditDialog)
|
||||
self.parentParamsGroupBox.setObjectName(u"parentParamsGroupBox")
|
||||
self.parentParamsLayout = QVBoxLayout(self.parentParamsGroupBox)
|
||||
self.parentParamsLayout.setObjectName(u"parentParamsLayout")
|
||||
self.parentParamsTable = QTableWidget(self.parentParamsGroupBox)
|
||||
if (self.parentParamsTable.columnCount() < 2):
|
||||
self.parentParamsTable.setColumnCount(2)
|
||||
__qtablewidgetitem2 = QTableWidgetItem()
|
||||
self.parentParamsTable.setHorizontalHeaderItem(0, __qtablewidgetitem2)
|
||||
__qtablewidgetitem3 = QTableWidgetItem()
|
||||
self.parentParamsTable.setHorizontalHeaderItem(1, __qtablewidgetitem3)
|
||||
self.parentParamsTable.setObjectName(u"parentParamsTable")
|
||||
self.parentParamsTable.setColumnCount(2)
|
||||
self.parentParamsTable.setEditTriggers(QAbstractItemView.EditTrigger.NoEditTriggers)
|
||||
self.parentParamsTable.horizontalHeader().setVisible(True)
|
||||
|
||||
self.parentParamsLayout.addWidget(self.parentParamsTable)
|
||||
|
||||
|
||||
self.verticalLayout.addWidget(self.parentParamsGroupBox)
|
||||
|
||||
self.buttonBox = QDialogButtonBox(XslFileEditDialog)
|
||||
self.buttonBox.setObjectName(u"buttonBox")
|
||||
self.buttonBox.setOrientation(Qt.Orientation.Horizontal)
|
||||
self.buttonBox.setStandardButtons(QDialogButtonBox.StandardButton.Cancel|QDialogButtonBox.StandardButton.Ok)
|
||||
self.buttonBox.setCenterButtons(True)
|
||||
|
||||
self.verticalLayout.addWidget(self.buttonBox)
|
||||
|
||||
|
||||
self.retranslateUi(XslFileEditDialog)
|
||||
self.buttonBox.accepted.connect(XslFileEditDialog.accept)
|
||||
self.buttonBox.rejected.connect(XslFileEditDialog.reject)
|
||||
|
||||
QMetaObject.connectSlotsByName(XslFileEditDialog)
|
||||
# setupUi
|
||||
|
||||
def retranslateUi(self, XslFileEditDialog):
|
||||
XslFileEditDialog.setWindowTitle(QCoreApplication.translate("XslFileEditDialog", u"XSL-Datei bearbeiten", None))
|
||||
self.bezLabel.setText(QCoreApplication.translate("XslFileEditDialog", u"Bezeichnung:", None))
|
||||
self.xsltParamsGroupBox.setTitle(QCoreApplication.translate("XslFileEditDialog", u"XSLT Parameter", None))
|
||||
___qtablewidgetitem = self.xsltParamsTable.horizontalHeaderItem(0)
|
||||
___qtablewidgetitem.setText(QCoreApplication.translate("XslFileEditDialog", u"Parameter", None));
|
||||
___qtablewidgetitem1 = self.xsltParamsTable.horizontalHeaderItem(1)
|
||||
___qtablewidgetitem1.setText(QCoreApplication.translate("XslFileEditDialog", u"Wert", None));
|
||||
self.addParamButton.setText(QCoreApplication.translate("XslFileEditDialog", u"Parameter hinzuf\u00fcgen", None))
|
||||
self.removeParamButton.setText(QCoreApplication.translate("XslFileEditDialog", u"Parameter entfernen", None))
|
||||
self.parentParamsGroupBox.setTitle(QCoreApplication.translate("XslFileEditDialog", u"Eltern-Parameter (nur anzeigen)", None))
|
||||
___qtablewidgetitem2 = self.parentParamsTable.horizontalHeaderItem(0)
|
||||
___qtablewidgetitem2.setText(QCoreApplication.translate("XslFileEditDialog", u"Parameter", None));
|
||||
___qtablewidgetitem3 = self.parentParamsTable.horizontalHeaderItem(1)
|
||||
___qtablewidgetitem3.setText(QCoreApplication.translate("XslFileEditDialog", u"Wert", None));
|
||||
# retranslateUi
|
||||
|
||||
Reference in New Issue
Block a user