From f0cd7272630d5a74ed90c09b3d4e177daf2f6862 Mon Sep 17 00:00:00 2001 From: Vitali Graf Date: Wed, 18 Jun 2025 20:08:55 +0200 Subject: [PATCH] Tabellen-Zellen sind zentriert --- src/ui/AppSettings.py | 100 +++++++++++++++++++++++++++++++++--------- 1 file changed, 79 insertions(+), 21 deletions(-) diff --git a/src/ui/AppSettings.py b/src/ui/AppSettings.py index 32e04cd..91313ce 100644 --- a/src/ui/AppSettings.py +++ b/src/ui/AppSettings.py @@ -1,4 +1,5 @@ from PySide6.QtWidgets import QDialog, QTableWidgetItem, QHeaderView +from PySide6.QtCore import Qt from pathlib import Path from ui.AppSettings_ui import Ui_Dialog @@ -122,57 +123,114 @@ class AppSettingsDlg(QDialog): """Füllt die XSL-Ordner Tabelle.""" self.ui.tableXsls.setRowCount(len(self.temp_xsl_dirs)) for row, xsl_dir in enumerate(self.temp_xsl_dirs): - self.ui.tableXsls.setItem(row, 0, QTableWidgetItem(xsl_dir.name)) - self.ui.tableXsls.setItem(row, 1, QTableWidgetItem(str(xsl_dir.path_to_root_dir))) + name_item = QTableWidgetItem(xsl_dir.name) + name_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tableXsls.setItem(row, 0, name_item) + + path_item = QTableWidgetItem(str(xsl_dir.path_to_root_dir)) + path_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tableXsls.setItem(row, 1, path_item) self.ui.tableXsls.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeMode.ResizeToContents) def _populate_java_vm_table(self): """Füllt die Java VM Tabelle.""" self.ui.tableJavaVms.setRowCount(len(self.temp_java_vms)) for row, java_vm in enumerate(self.temp_java_vms): - self.ui.tableJavaVms.setItem(row, 0, QTableWidgetItem(java_vm.version)) - self.ui.tableJavaVms.setItem(row, 1, QTableWidgetItem(str(java_vm.path_to_binary_file))) + version_item = QTableWidgetItem(java_vm.version) + version_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tableJavaVms.setItem(row, 0, version_item) + + path_item = QTableWidgetItem(str(java_vm.path_to_binary_file)) + path_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tableJavaVms.setItem(row, 1, path_item) self.ui.tableJavaVms.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeMode.ResizeToContents) def _populate_saxon_table(self): """Füllt die Saxon Tabelle.""" self.ui.tableSaxons.setRowCount(len(self.temp_saxon_jars)) for row, saxon in enumerate(self.temp_saxon_jars): - self.ui.tableSaxons.setItem(row, 0, QTableWidgetItem(saxon.version)) - self.ui.tableSaxons.setItem(row, 1, QTableWidgetItem(str(saxon.path_to_jar_file))) - self.ui.tableSaxons.setItem(row, 2, QTableWidgetItem(saxon.output_file_extension)) + version_item = QTableWidgetItem(saxon.version) + version_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tableSaxons.setItem(row, 0, version_item) + + path_item = QTableWidgetItem(str(saxon.path_to_jar_file)) + path_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tableSaxons.setItem(row, 1, path_item) + + extension_item = QTableWidgetItem(saxon.output_file_extension) + extension_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tableSaxons.setItem(row, 2, extension_item) self.ui.tableSaxons.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeMode.ResizeToContents) def _populate_apache_fop_table(self): """Füllt die Apache FOP Tabelle.""" self.ui.tableApacheFops.setRowCount(len(self.temp_apache_fops)) for row, fop in enumerate(self.temp_apache_fops): - self.ui.tableApacheFops.setItem(row, 0, QTableWidgetItem(fop.version)) - self.ui.tableApacheFops.setItem(row, 1, QTableWidgetItem(str(fop.path_to_dir))) - self.ui.tableApacheFops.setItem(row, 2, QTableWidgetItem(fop.output_file_extension)) + version_item = QTableWidgetItem(fop.version) + version_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tableApacheFops.setItem(row, 0, version_item) + + path_item = QTableWidgetItem(str(fop.path_to_dir)) + path_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tableApacheFops.setItem(row, 1, path_item) + + extension_item = QTableWidgetItem(fop.output_file_extension) + extension_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tableApacheFops.setItem(row, 2, extension_item) self.ui.tableApacheFops.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeMode.ResizeToContents) def _populate_diff_pdf_table(self): """Füllt die Diff PDF Tabelle.""" self.ui.tableDiffPdfs.setRowCount(len(self.temp_diff_pdfs)) for row, diff_pdf in enumerate(self.temp_diff_pdfs): - self.ui.tableDiffPdfs.setItem(row, 0, QTableWidgetItem(diff_pdf.version)) - self.ui.tableDiffPdfs.setItem(row, 1, QTableWidgetItem(str(diff_pdf.path_to_binary_file))) - self.ui.tableDiffPdfs.setItem(row, 2, QTableWidgetItem(", ".join(diff_pdf.default_params))) - self.ui.tableDiffPdfs.setItem(row, 3, QTableWidgetItem(diff_pdf.output_file_extension)) + version_item = QTableWidgetItem(diff_pdf.version) + version_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tableDiffPdfs.setItem(row, 0, version_item) + + path_item = QTableWidgetItem(str(diff_pdf.path_to_binary_file)) + path_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tableDiffPdfs.setItem(row, 1, path_item) + + params_item = QTableWidgetItem(", ".join(diff_pdf.default_params)) + params_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tableDiffPdfs.setItem(row, 2, params_item) + + extension_item = QTableWidgetItem(diff_pdf.output_file_extension) + extension_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tableDiffPdfs.setItem(row, 3, extension_item) self.ui.tableDiffPdfs.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeMode.ResizeToContents) def _populate_pdf_project_table(self): """Füllt die PDF-Projekte Tabelle.""" self.ui.tablePdfProjects.setRowCount(len(self.temp_pdf_projects)) for row, pdf_project in enumerate(self.temp_pdf_projects): - self.ui.tablePdfProjects.setItem(row, 0, QTableWidgetItem(pdf_project.name)) - self.ui.tablePdfProjects.setItem(row, 1, QTableWidgetItem(str(pdf_project.project_dir))) - self.ui.tablePdfProjects.setItem(row, 2, QTableWidgetItem(pdf_project.getXsl())) - self.ui.tablePdfProjects.setItem(row, 3, QTableWidgetItem(pdf_project.getJavaVm())) - self.ui.tablePdfProjects.setItem(row, 4, QTableWidgetItem(pdf_project.getSaxon())) - self.ui.tablePdfProjects.setItem(row, 5, QTableWidgetItem(pdf_project.getApacheFop())) - self.ui.tablePdfProjects.setItem(row, 6, QTableWidgetItem(pdf_project.getDiffPdf())) + name_item = QTableWidgetItem(pdf_project.name) + name_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tablePdfProjects.setItem(row, 0, name_item) + + project_dir_item = QTableWidgetItem(str(pdf_project.project_dir)) + project_dir_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tablePdfProjects.setItem(row, 1, project_dir_item) + + xsl_item = QTableWidgetItem(pdf_project.getXsl()) + xsl_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tablePdfProjects.setItem(row, 2, xsl_item) + + java_vm_item = QTableWidgetItem(pdf_project.getJavaVm()) + java_vm_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tablePdfProjects.setItem(row, 3, java_vm_item) + + saxon_item = QTableWidgetItem(pdf_project.getSaxon()) + saxon_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tablePdfProjects.setItem(row, 4, saxon_item) + + apache_fop_item = QTableWidgetItem(pdf_project.getApacheFop()) + apache_fop_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tablePdfProjects.setItem(row, 5, apache_fop_item) + + diff_pdf_item = QTableWidgetItem(pdf_project.getDiffPdf()) + diff_pdf_item.setTextAlignment(Qt.AlignmentFlag.AlignCenter) + self.ui.tablePdfProjects.setItem(row, 6, diff_pdf_item) self.ui.tablePdfProjects.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeMode.ResizeToContents) # XSL-Ordner Methoden