Kontexrmenü für neues Root-Element im Baum
This commit is contained in:
+19
-9
@@ -555,14 +555,16 @@ class MainWindow(QMainWindow):
|
||||
"""
|
||||
# Hole das Item an der Position
|
||||
item = self.ui.treeWidget.itemAt(position)
|
||||
|
||||
if not item:
|
||||
return
|
||||
|
||||
# Bestimme den Node-Typ basierend auf dem Item
|
||||
node_type = self._get_node_type_from_item(item)
|
||||
|
||||
# Erstelle das entsprechende Kontextmenü
|
||||
context_menu = self._create_context_menu_for_type(node_type, item)
|
||||
# Kein Item gefunden - zeige Kontextmenü für Root-Elemente
|
||||
node_type = "Unknown"
|
||||
context_menu = self._create_context_menu_for_type(node_type, None)
|
||||
else:
|
||||
# Bestimme den Node-Typ basierend auf dem Item
|
||||
node_type = self._get_node_type_from_item(item)
|
||||
# Erstelle das entsprechende Kontextmenü
|
||||
context_menu = self._create_context_menu_for_type(node_type, item)
|
||||
|
||||
if context_menu:
|
||||
# Zeige das Kontextmenü an der globalen Position
|
||||
@@ -720,8 +722,10 @@ class MainWindow(QMainWindow):
|
||||
menu.addAction(action_delete)
|
||||
|
||||
else:
|
||||
# Unbekannter Typ - kein Menü
|
||||
return None
|
||||
# Unbekannter Typ oder leerer Bereich - Menü für Root-Elemente
|
||||
action_add_tree_node = QAction("Unterknoten hinzufügen", self)
|
||||
action_add_tree_node.triggered.connect(lambda: self._add_root_tree_node())
|
||||
menu.addAction(action_add_tree_node)
|
||||
|
||||
return menu
|
||||
|
||||
@@ -1040,6 +1044,12 @@ class MainWindow(QMainWindow):
|
||||
print(f"XmlFile löschen: {item.text(0)}")
|
||||
# TODO: Bestätigungsdialog und Löschung implementieren
|
||||
|
||||
# Kontextmenü-Aktionen für Root-Elemente (Unbekannter Typ)
|
||||
def _add_root_tree_node(self):
|
||||
"""Fügt einen neuen TreeNode als Root-Element hinzu."""
|
||||
print("Neuen TreeNode als Root-Element hinzufügen")
|
||||
# TODO: Dialog zum Eingeben der TreeNode-Daten öffnen
|
||||
|
||||
def closeEvent(self, event):
|
||||
"""Wird beim Schließen der Anwendung aufgerufen."""
|
||||
# PDF-Dokumente schließen ist bei QtPdf automatisch durch Garbage Collection
|
||||
|
||||
Reference in New Issue
Block a user