Refactor widget wrappers

This commit is contained in:
space-nuko
2023-04-07 08:43:58 -05:00
parent 2536fbbe27
commit c40143ef88
6 changed files with 130 additions and 68 deletions

View File

@@ -12,25 +12,34 @@
export let totalId = 0;
function addUIForNewNode(node: LGraphNode) {
let minWidgetCount = 2 ** 64;
let minIndex = 0;
let state = get(widgetState);
for (let i = 0; i < dragItemss.length; i++) {
let widgetCount = 0;
for (let j = 0; j < dragItemss[i].length; j++) {
const nodeID = dragItemss[i][j].node.id;
widgetCount += state[nodeID].length;
}
if (widgetCount < minWidgetCount) {
minWidgetCount = widgetCount
minIndex = i;
}
}
dragItemss[minIndex].push({ id: totalId++, node: node });
}
$: if(app && !dragConfigured) {
dragConfigured = true;
app.eventBus.on("nodeAdded", (node: LGraphNode) => {
let minWidgetCount = 2 ** 64;
let minIndex = 0;
let state = get(widgetState);
for (let i = 0; i < dragItemss.length; i++) {
let widgetCount = 0;
for (let j = 0; j < dragItemss[i].length; j++) {
const nodeID = dragItemss[i][j].node.id;
widgetCount += state[nodeID].length;
}
if (widgetCount < minWidgetCount) {
minWidgetCount = widgetCount
minIndex = i;
}
}
dragItemss[minIndex].push({ id: totalId++, node: node });
});
app.eventBus.on("nodeAdded", addUIForNewNode);
}
/*
* Serialize UI panel order so it can be restored when workflow is loaded
*/
function getUIState(): any {
}
</script>