is_up_to_date() prüft nun auch transitiv importierte/inkludierte XSL-Dateien.
Abhängigkeiten werden per Tooltip und Kontextmenü-Aktion im TreeWidget angezeigt.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Beim Auswählen eines XML-Knotens im Baum wird jetzt die Ref-PDF direkt im
internen Viewer geladen, sofern keine Diff-PDF existiert. Der Kontextmenü-Eintrag
"Ref-PDF öffnen" und der zugehörige Handler wurden entfernt.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
ItemType(Enum) mit TREE_NODE, XSL_FILE, XML_FILE, UNKNOWN statt
String-Konstanten in tree_manager.py. Verbessert Typsicherheit und IDE-Support.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Rekursive Löschung von TreeNodes mit PDF-Bereinigung, automatischer
physischer Löschung nicht mehr verwendeter XML-Dateien und korrekter
"anderswo verwendet"-Prüfung durch vorheriges Entfernen aus dem
Datenmodell.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Ersetzt den bisherigen Stub durch eine vollständige Implementierung mit
Bestätigungsdialog, automatischer PDF-Bereinigung, optionaler physischer
XML-Löschung und Datenmodell-Aktualisierung.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Implementiert intelligente Löschlogik die zugehörige PDF-Dateien (new/ref/diff) automatisch entfernt wenn eine XML-Datei aus einem XSL-Knoten gelöscht wird. PDFs werden nur gelöscht wenn die XML+XSL-Kombination nicht mehr anderswo im Projektbaum verwendet wird.
- ProjectData um optionales Feld 'expanded_nodes' erweitert (abwärtskompatibel)
- _save_project_settings() speichert nun automatisch den Expand-Status
- Expand-Status wird bei allen Speicheroperationen gesichert:
* Beim Bearbeiten von TreeNodes und XslFiles
* Bei Drag&Drop-Operationen im Tree
* Bei Hash-Berechnungen für XML-Dateien
* Beim Laden von Daten aus der Datenbank
* Beim Beenden der Anwendung
- Beim Laden eines Projekts werden aufgeklappte Knoten wiederhergestellt
- Rekursive Speicherung und Wiederherstellung für TreeNode und XslFile
- Umfassendes Logging für Debugging und Fehlerbehandlung
Beim Laden des Projekts werden nun auch XSL-Knoten automatisch deaktiviert (ausgegraut), wenn die entsprechende XSL-Datei nicht im XSL-Verzeichnis vorhanden ist.
Zusätzlich werden alle untergeordneten XML-Knoten ebenfalls deaktiviert, wenn die übergeordnete XSL-Datei fehlt. Dies verhindert, dass Transformationen mit fehlenden XSL-Dateien gestartet werden und gibt sofortige visuelle Rückmeldung.
- XSL-Knoten werden mit setDisabled(True) deaktiviert
- Tooltip zeigt den vollständigen Pfad der fehlenden XSL-Datei
- Alle untergeordneten XML-Knoten werden ebenfalls deaktiviert
- Warnung wird ins Log geschrieben
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Beim Laden des Projekts in den TreeWidget werden nun XML-Knoten automatisch deaktiviert (ausgegraut), wenn die entsprechende XML-Datei nicht im Projekt vorhanden ist. Dies verbessert die Benutzerfreundlichkeit durch sofortige visuelle Rückmeldung über fehlende Dateien.
- XML-Knoten werden mit setDisabled(True) deaktiviert
- Tooltip zeigt den vollständigen Pfad der fehlenden Datei
- Warnung wird ins Log geschrieben
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>