Fix executing class
This commit is contained in:
@@ -41,6 +41,7 @@
|
|||||||
<div class="container {container.attrs.direction} {container.attrs.classes} {classes.join(' ')}"
|
<div class="container {container.attrs.direction} {container.attrs.classes} {classes.join(' ')}"
|
||||||
class:selected={$uiState.uiEditMode !== "disabled" && $layoutState.currentSelection.includes(container.id)}
|
class:selected={$uiState.uiEditMode !== "disabled" && $layoutState.currentSelection.includes(container.id)}
|
||||||
class:root-container={zIndex === 0}
|
class:root-container={zIndex === 0}
|
||||||
|
class:is-executing={container.isNodeExecuting}
|
||||||
class:container-edit-outline={$uiState.uiEditMode === "widgets" && zIndex > 1}>
|
class:container-edit-outline={$uiState.uiEditMode === "widgets" && zIndex > 1}>
|
||||||
<Block>
|
<Block>
|
||||||
{#if container.attrs.showTitle}
|
{#if container.attrs.showTitle}
|
||||||
@@ -70,7 +71,6 @@
|
|||||||
>
|
>
|
||||||
{#each children.filter(item => item.id !== SHADOW_PLACEHOLDER_ITEM_ID) as item(item.id)}
|
{#each children.filter(item => item.id !== SHADOW_PLACEHOLDER_ITEM_ID) as item(item.id)}
|
||||||
<div class="animation-wrapper"
|
<div class="animation-wrapper"
|
||||||
class:is-executing={item.isNodeExecuting}
|
|
||||||
animate:flip={{duration:flipDurationMs}}>
|
animate:flip={{duration:flipDurationMs}}>
|
||||||
<WidgetContainer dragItem={item} zIndex={zIndex+1} />
|
<WidgetContainer dragItem={item} zIndex={zIndex+1} />
|
||||||
{#if item[SHADOW_ITEM_MARKER_PROPERTY_NAME]}
|
{#if item[SHADOW_ITEM_MARKER_PROPERTY_NAME]}
|
||||||
|
|||||||
@@ -15,22 +15,20 @@
|
|||||||
let widgetState: WidgetUIState | null = null;
|
let widgetState: WidgetUIState | null = null;
|
||||||
let showHandles: boolean = false;
|
let showHandles: boolean = false;
|
||||||
|
|
||||||
$: if (dragItem) {
|
$: if (!dragItem || !$layoutState.allItems[dragItem.id]) {
|
||||||
if (!$layoutState.allItems[dragItem.id]) {
|
dragItem = null;
|
||||||
dragItem = null;
|
container = null;
|
||||||
widget = null;
|
widget = null;
|
||||||
widgetState = null;
|
widgetState = null;
|
||||||
container = null;
|
}
|
||||||
}
|
else if (dragItem.type === "container") {
|
||||||
else if (dragItem.type === "container") {
|
container = dragItem as ContainerLayout;
|
||||||
container = dragItem as ContainerLayout;
|
widget = null;
|
||||||
widget = null;
|
}
|
||||||
}
|
else if (dragItem.type === "widget") {
|
||||||
else if (dragItem.type === "widget") {
|
widget = dragItem as WidgetLayout;
|
||||||
widget = dragItem as WidgetLayout;
|
widgetState = nodeState.findWidgetByName(widget.nodeId, widget.widgetName)
|
||||||
widgetState = nodeState.findWidgetByName(widget.nodeId, widget.widgetName)
|
container = null;
|
||||||
container = null;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$: showHandles = $uiState.uiEditMode === "widgets" // TODO
|
$: showHandles = $uiState.uiEditMode === "widgets" // TODO
|
||||||
@@ -38,8 +36,8 @@
|
|||||||
&& !$layoutState.isMenuOpen
|
&& !$layoutState.isMenuOpen
|
||||||
|
|
||||||
|
|
||||||
$: if ($queueState && widget) {
|
$: if ($queueState && dragItem) {
|
||||||
widget.isNodeExecuting = $queueState.runningNodeId === widget.nodeId;
|
dragItem.isNodeExecuting = $queueState.runningNodeId === dragItem.nodeId;
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
@@ -51,10 +49,6 @@
|
|||||||
class:selected={$uiState.uiEditMode !== "disabled" && $layoutState.currentSelection.includes(widget.id)}
|
class:selected={$uiState.uiEditMode !== "disabled" && $layoutState.currentSelection.includes(widget.id)}
|
||||||
class:is-executing={$queueState.runningNodeId && $queueState.runningNodeId == widget.attrs.associatedNode}
|
class:is-executing={$queueState.runningNodeId && $queueState.runningNodeId == widget.attrs.associatedNode}
|
||||||
>
|
>
|
||||||
{#if widget.attrs.associatedNode}
|
|
||||||
{@const node = $nodeState[widget.attrs.associatedNode].node}
|
|
||||||
<span class="node-type">({node.type})</span>
|
|
||||||
{/if}
|
|
||||||
<svelte:component this={getComponentForWidgetState(widgetState)} item={widgetState} />
|
<svelte:component this={getComponentForWidgetState(widgetState)} item={widgetState} />
|
||||||
</div>
|
</div>
|
||||||
{#if showHandles}
|
{#if showHandles}
|
||||||
|
|||||||
@@ -265,6 +265,7 @@ function nodeRemoved(node: LGraphNode) {
|
|||||||
let delContainers = []
|
let delContainers = []
|
||||||
|
|
||||||
// Remove widget from all children lists
|
// Remove widget from all children lists
|
||||||
|
// TODO just use parent.children
|
||||||
for (const entry of Object.values(state.allItems)) {
|
for (const entry of Object.values(state.allItems)) {
|
||||||
if (entry.children?.length === 0 && isAssociatedContainer(entry.dragItem))
|
if (entry.children?.length === 0 && isAssociatedContainer(entry.dragItem))
|
||||||
delContainers.push(entry.dragItem.id)
|
delContainers.push(entry.dragItem.id)
|
||||||
|
|||||||
Reference in New Issue
Block a user