Fix node details

This commit is contained in:
Joey Yakimowich-Payne 2026-02-06 08:41:55 -07:00
commit 9ac56d0d0b
2 changed files with 146 additions and 20 deletions

View file

@ -881,6 +881,9 @@ void GraphEditorWidget::showNodeContextMenu(const QPoint &screenPos,
createRuleAction = menu.addAction(QStringLiteral("Create Rule..."));
}
menu.addSeparator();
QAction *detailsAction = menu.addAction(QStringLiteral("Node Details"));
menu.addSeparator();
QAction *pasteAction = menu.addAction(QStringLiteral("Paste"));
pasteAction->setShortcut(QKeySequence::Paste);
@ -900,6 +903,10 @@ void GraphEditorWidget::showNodeContextMenu(const QPoint &screenPos,
duplicateSelection();
} else if (chosen == deleteAction && m_client) {
deleteSelection();
} else if (chosen == detailsAction) {
m_selectedNodeId = qtNodeId;
updateNodeDetailsPanel(qtNodeId);
m_sidebar->setCurrentWidget(m_nodeDetailsScroll);
} else if (chosen == pasteAction) {
pasteSelection(QPointF(0, 0));
} else if (chosen == createRuleAction) {
@ -1936,12 +1943,10 @@ void GraphEditorWidget::onSelectionChanged() {
if (selected == m_selectedNodeId)
return;
if (selected != 0) {
m_selectedNodeId = selected;
m_selectedNodeId = selected;
if (selected != 0 && m_sidebar->currentWidget() == m_nodeDetailsScroll) {
updateNodeDetailsPanel(selected);
m_sidebar->setCurrentWidget(m_nodeDetailsScroll);
} else {
m_selectedNodeId = 0;
} else if (selected == 0 && m_sidebar->currentWidget() == m_nodeDetailsScroll) {
clearNodeDetailsPanel();
}
}
@ -2099,6 +2104,9 @@ void GraphEditorWidget::updateNodeDetailsPanel(QtNodes::NodeId nodeId) {
}
layout->addWidget(targetCombo);
connect(loopbackCheck, &QCheckBox::toggled, targetCombo,
&QWidget::setEnabled);
if (vnResult.ok() && vnResult.value.loopback) {
loopbackCheck->setChecked(true);
int idx = targetCombo->findData(
@ -2106,9 +2114,6 @@ void GraphEditorWidget::updateNodeDetailsPanel(QtNodes::NodeId nodeId) {
if (idx >= 0)
targetCombo->setCurrentIndex(idx);
}
connect(loopbackCheck, &QCheckBox::toggled, targetCombo,
&QWidget::setEnabled);
}
layout->addSpacing(12);