Release SyncVito 1.0.15
This commit is contained in:
1 parent
1d0b1b2d38
commit
6c677f0161
9 files changed
+163
-10
No files matched your search
@@ -133,6 +133,7 @@ class TaskDialog(QDialog):
|
||||
super().__init__(parent)
|
||||
self._original = task
|
||||
self._selected_paths = list(task.selected_paths) if task else []
|
||||
self._ignored_paths = list(task.ignored_paths) if task else []
|
||||
self.setWindowTitle("Aufgabe bearbeiten" if task else "Neue Aufgabe")
|
||||
self.setMinimumWidth(690)
|
||||
self.resize(720, 610)
|
||||
@@ -208,6 +209,19 @@ class TaskDialog(QDialog):
|
||||
warning.setProperty("muted", True)
|
||||
behavior_layout.addRow("", warning)
|
||||
|
||||
ignored_count = len(self._ignored_paths)
|
||||
self.ignored_label = QLabel(
|
||||
f"{ignored_count} Datei(en) werden künftig ignoriert." if ignored_count else "Keine Dateien ignoriert."
|
||||
)
|
||||
self.ignored_label.setProperty("muted", True)
|
||||
self.clear_ignored_button = QPushButton("Ignorier-Liste leeren")
|
||||
self.clear_ignored_button.setEnabled(ignored_count > 0)
|
||||
self.clear_ignored_button.clicked.connect(self._clear_ignored)
|
||||
ignored_row = QHBoxLayout()
|
||||
ignored_row.addWidget(self.ignored_label, 1)
|
||||
ignored_row.addWidget(self.clear_ignored_button)
|
||||
behavior_layout.addRow("Gesperrte Dateien", ignored_row)
|
||||
|
||||
tabs = QTabWidget()
|
||||
tabs.addTab(base_page, "Ordner und Zeitplan")
|
||||
tabs.addTab(behavior_page, "Konflikte und Löschungen")
|
||||
@@ -228,6 +242,11 @@ class TaskDialog(QDialog):
|
||||
self._update_visibility()
|
||||
self._update_selection_label()
|
||||
|
||||
def _clear_ignored(self) -> None:
|
||||
self._ignored_paths.clear()
|
||||
self.ignored_label.setText("Keine Dateien ignoriert.")
|
||||
self.clear_ignored_button.setEnabled(False)
|
||||
|
||||
def task(self) -> SyncTask:
|
||||
"""Erzeugt das validierte Modell aus den Formulardaten."""
|
||||
task = SyncTask(
|
||||
@@ -241,6 +260,7 @@ class TaskDialog(QDialog):
|
||||
conflict_mode=self.conflict_combo.currentData(),
|
||||
interval_minutes=self.interval_spin.value(),
|
||||
selected_paths=self._selected_paths,
|
||||
ignored_paths=self._ignored_paths,
|
||||
enabled=self.enabled_check.isChecked(),
|
||||
last_run=self._original.last_run if self._original else None,
|
||||
)
|
||||
|
||||
Reference in new issue
Block a user