mirror of
https://github.com/alicevision/Meshroom.git
synced 2025-04-28 17:57:16 +02:00
[ui] Graph: add removeSelectedNodes
method
Add and use an explicit method to remove the currently selected nodes in a graph.
This commit is contained in:
parent
05eabb2b13
commit
686927a92d
3 changed files with 16 additions and 11 deletions
|
@ -676,18 +676,23 @@ class UIGraph(QObject):
|
|||
position = Position(node.x + offset.x(), node.y + offset.y())
|
||||
self.moveNode(node, position)
|
||||
|
||||
@Slot(QObject)
|
||||
def removeNodes(self, nodes):
|
||||
@Slot()
|
||||
def removeSelectedNodes(self):
|
||||
"""Remove selected nodes from the graph."""
|
||||
self.removeNodes(list(self.iterSelectedNodes()))
|
||||
|
||||
@Slot(list)
|
||||
def removeNodes(self, nodes: list[Node]):
|
||||
"""
|
||||
Remove 'nodes' from the graph.
|
||||
|
||||
Args:
|
||||
nodes (list[Node]): the nodes to remove
|
||||
nodes: The nodes to remove.
|
||||
"""
|
||||
nodes = self.filterNodes(nodes)
|
||||
if any([ n.locked for n in nodes ]):
|
||||
if any(n.locked for n in nodes):
|
||||
return
|
||||
with self.groupedGraphModification("Remove Selected Nodes"):
|
||||
|
||||
with self.groupedGraphModification("Remove Nodes"):
|
||||
for node in nodes:
|
||||
self.push(commands.RemoveNodeCommand(self._graph, node))
|
||||
|
||||
|
|
|
@ -541,7 +541,7 @@ Page {
|
|||
enabled: _reconstruction ? _reconstruction.selectedNodes.count > 0 : false
|
||||
onTriggered: {
|
||||
graphEditor.copyNodes()
|
||||
graphEditor.uigraph.removeNodes(graphEditor.uigraph.selectedNodes)
|
||||
graphEditor.uigraph.removeSelectedNodes()
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -140,13 +140,13 @@ Item {
|
|||
if (event.modifiers === Qt.AltModifier) {
|
||||
uigraph.removeNodesFrom(uigraph.selectedNodes)
|
||||
} else {
|
||||
uigraph.removeNodes(uigraph.selectedNodes)
|
||||
uigraph.removeSelectedNodes()
|
||||
}
|
||||
} else if (event.key === Qt.Key_D) {
|
||||
duplicateNode(event.modifiers === Qt.AltModifier)
|
||||
} else if (event.key === Qt.Key_X && event.modifiers === Qt.ControlModifier) {
|
||||
copyNodes()
|
||||
uigraph.removeNodes(uigraph.selectedNodes)
|
||||
uigraph.removeSelectedNodes()
|
||||
} else if (event.key === Qt.Key_C) {
|
||||
if (event.modifiers === Qt.ControlModifier) {
|
||||
copyNodes()
|
||||
|
@ -685,7 +685,7 @@ Item {
|
|||
ToolTip.visible: hovered
|
||||
onTriggered: {
|
||||
copyNodes()
|
||||
uigraph.removeNodes(uigraph.selectedNodes)
|
||||
uigraph.removeSelectedNodes()
|
||||
}
|
||||
}
|
||||
MenuItem {
|
||||
|
@ -726,7 +726,7 @@ Item {
|
|||
MenuItem {
|
||||
text: "Remove Node(s)" + (removeFollowingButton.hovered ? " From Here" : "")
|
||||
enabled: nodeMenu.currentNode ? !nodeMenu.currentNode.locked : false
|
||||
onTriggered: uigraph.removeNodes(uigraph.selectedNodes)
|
||||
onTriggered: uigraph.removeSelectedNodes()
|
||||
MaterialToolButton {
|
||||
id: removeFollowingButton
|
||||
height: parent.height
|
||||
|
|
Loading…
Add table
Reference in a new issue