From b424c62a995b2cf6473250405ea20e4a5885835d Mon Sep 17 00:00:00 2001 From: Austin Mroz Date: Fri, 5 Sep 2025 10:11:51 -0500 Subject: [PATCH] wip cleanup, filtering, setdirty --- src/components/selectionbar/SubgraphNode.vue | 17 ++--------------- .../selectionbar/SubgraphNodeWidget.vue | 6 +++++- 2 files changed, 7 insertions(+), 16 deletions(-) diff --git a/src/components/selectionbar/SubgraphNode.vue b/src/components/selectionbar/SubgraphNode.vue index 0691a8977..806cdc4dc 100644 --- a/src/components/selectionbar/SubgraphNode.vue +++ b/src/components/selectionbar/SubgraphNode.vue @@ -32,25 +32,16 @@ const { t } = useI18n() const canvasStore = useCanvasStore() -const items = ref(null) const expandedKeys = ref>({}) -watchDebounced(items,() => { - console.log(items.value.map(i => `${i[0].title}: ${i[1].name}`)) - }, { debounce: 500 } -) - const widgetTree = computed(() => { const node = canvasStore.selectedItems[0] ?? {} const interiorNodes = node?.subgraph?.nodes ?? [] - if (!interiorNodes) { - items.value = null - return - } node.widgets ??= [] const intn = interiorNodes.map((n) => n.widgets?.map((w) => [n, w, node]) ?? []).flat(1) - //items.value = intn + //widget has connected link. Should not be displayed + .filter((i) => !i[1].computedDisabled) //TODO: filter enabled/disabled items while keeping order console.log(intn) return buildTree(intn, (item: [unknown, unknown]) => @@ -58,8 +49,6 @@ const widgetTree = computed(() => { ) }) - - const renderedRoot = computed>(() => { const fillNodeInfo = (node: TreeNode): TreeExplorerNode => { const children = node.children?.map(fillNodeInfo) @@ -77,9 +66,7 @@ const renderedRoot = computed>(() => { draggable: true, } } - console.log(widgetTree.value) const ret = fillNodeInfo(widgetTree.value) - console.log(ret) return ret }) diff --git a/src/components/selectionbar/SubgraphNodeWidget.vue b/src/components/selectionbar/SubgraphNodeWidget.vue index c162ee556..32d471fc4 100644 --- a/src/components/selectionbar/SubgraphNodeWidget.vue +++ b/src/components/selectionbar/SubgraphNodeWidget.vue @@ -20,6 +20,7 @@ import { ref, onMounted } from 'vue' import Button from 'primevue/button' import { useDomWidgetStore } from '@/stores/domWidgetStore' +import { useCanvasStore } from '@/stores/graphStore' function hasWidget() { const node = props.node.data[2] @@ -45,7 +46,6 @@ function onClick(e) { const widgetName = props.node.data[1].name const node = props.node.data[2] - console.log(isShown.value) const { widgetStates } = useDomWidgetStore() if (!isShown.value) { const w = node.addProxyWidget(`${nodeId}`, widgetName) @@ -63,8 +63,12 @@ function onClick(e) { if (widgetStates.has(w.id)) { widgetStates.get(w.id).active = false } + const { properties } = node + properties.proxyWidgets = properties.proxyWidgets.filter((p) => p[1] !== widgetName) + isShown.value = false } + useCanvasStore().canvas.setDirty(true) }