updated graph rendering to be more efficient. added smooth scrolling, added color type, mmb drag for cutting

This commit is contained in:
2026-03-21 06:57:26 +11:00
parent 1f5da03474
commit ae374db9fb
54 changed files with 9147 additions and 138 deletions

View File

@@ -33,7 +33,7 @@ export const circNode = createNodeModule(
kind: "number",
defaultValue: 4,
},
{ id: "color", name: "Color", direction: "input", kind: "number" },
{ id: "color", name: "Color", direction: "input", kind: "color" },
],
outputs: [
{ id: "exec_out", name: "Exec", direction: "output", kind: "exec" },

View File

@@ -33,7 +33,7 @@ export const circfillNode = createNodeModule(
kind: "number",
defaultValue: 4,
},
{ id: "color", name: "Color", direction: "input", kind: "number" },
{ id: "color", name: "Color", direction: "input", kind: "color" },
],
outputs: [
{ id: "exec_out", name: "Exec", direction: "output", kind: "exec" },

View File

@@ -12,7 +12,7 @@ export const clsNode = createNodeModule(
searchTags: ["cls", "clear", "screen", "background"],
inputs: [
{ id: "exec_in", name: "Exec", direction: "input", kind: "exec" },
{ id: "color", name: "Color", direction: "input", kind: "number" },
{ id: "color", name: "Color", direction: "input", kind: "color" },
],
outputs: [
{ id: "exec_out", name: "Exec", direction: "output", kind: "exec" },

View File

@@ -12,7 +12,7 @@ export const colorNode = createNodeModule(
searchTags: ["color", "color", "ink", "draw"],
inputs: [
{ id: "exec_in", name: "Exec", direction: "input", kind: "exec" },
{ id: "color", name: "Color", direction: "input", kind: "number" },
{ id: "color", name: "Color", direction: "input", kind: "color" },
],
outputs: [
{ id: "exec_out", name: "Exec", direction: "output", kind: "exec" },

View File

@@ -15,7 +15,7 @@ export const cursorNode = createNodeModule(
{ id: "exec_in", name: "Exec", direction: "input", kind: "exec" },
{ id: "x", name: "X", direction: "input", kind: "number" },
{ id: "y", name: "Y", direction: "input", kind: "number" },
{ id: "color", name: "Color", direction: "input", kind: "number" },
{ id: "color", name: "Color", direction: "input", kind: "color" },
],
outputs: [
{ id: "exec_out", name: "Exec", direction: "output", kind: "exec" },

View File

@@ -29,7 +29,7 @@ export const lineNode = createNodeModule(
},
{ id: "x1", name: "X1", direction: "input", kind: "number" },
{ id: "y1", name: "Y1", direction: "input", kind: "number" },
{ id: "color", name: "Color", direction: "input", kind: "number" },
{ id: "color", name: "Color", direction: "input", kind: "color" },
],
outputs: [
{ id: "exec_out", name: "Exec", direction: "output", kind: "exec" },

View File

@@ -40,7 +40,7 @@ export const ovalNode = createNodeModule(
kind: "number",
defaultValue: 8,
},
{ id: "color", name: "Color", direction: "input", kind: "number" },
{ id: "color", name: "Color", direction: "input", kind: "color" },
],
outputs: [
{ id: "exec_out", name: "Exec", direction: "output", kind: "exec" },

View File

@@ -40,7 +40,7 @@ export const ovalfillNode = createNodeModule(
kind: "number",
defaultValue: 8,
},
{ id: "color", name: "Color", direction: "input", kind: "number" },
{ id: "color", name: "Color", direction: "input", kind: "color" },
],
outputs: [
{ id: "exec_out", name: "Exec", direction: "output", kind: "exec" },

View File

@@ -12,12 +12,12 @@ export const palNode = createNodeModule(
searchTags: ["pal", "palette", "color", "remap"],
inputs: [
{ id: "exec_in", name: "Exec", direction: "input", kind: "exec" },
{ id: "c0", name: "Color 0", direction: "input", kind: "number" },
{ id: "c0", name: "Color 0", direction: "input", kind: "color" },
{
id: "c1",
name: "Color 1",
direction: "input",
kind: "number",
kind: "color",
defaultValue: 0,
},
{ id: "p", name: "Palette", direction: "input", kind: "number" },

View File

@@ -12,7 +12,7 @@ export const paltNode = createNodeModule(
searchTags: ["palt", "transparency", "palette", "sprite"],
inputs: [
{ id: "exec_in", name: "Exec", direction: "input", kind: "exec" },
{ id: "color", name: "Color", direction: "input", kind: "number" },
{ id: "color", name: "Color", direction: "input", kind: "color" },
{
id: "transparent",
name: "Transparent",

View File

@@ -27,7 +27,7 @@ export const pgetNode = createNodeModule(
},
],
outputs: [
{ id: "value", name: "Color", direction: "output", kind: "number" },
{ id: "value", name: "Color", direction: "output", kind: "color" },
],
properties: [],
},

View File

@@ -26,7 +26,7 @@ export const psetNode = createNodeModule(
kind: "number",
defaultValue: 0,
},
{ id: "color", name: "Color", direction: "input", kind: "number" },
{ id: "color", name: "Color", direction: "input", kind: "color" },
],
outputs: [
{ id: "exec_out", name: "Exec", direction: "output", kind: "exec" },

View File

@@ -40,7 +40,7 @@ export const rectNode = createNodeModule(
kind: "number",
defaultValue: 8,
},
{ id: "color", name: "Color", direction: "input", kind: "number" },
{ id: "color", name: "Color", direction: "input", kind: "color" },
],
outputs: [
{ id: "exec_out", name: "Exec", direction: "output", kind: "exec" },

View File

@@ -40,7 +40,7 @@ export const rectfillNode = createNodeModule(
kind: "number",
defaultValue: 8,
},
{ id: "color", name: "Color", direction: "input", kind: "number" },
{ id: "color", name: "Color", direction: "input", kind: "color" },
],
outputs: [
{ id: "exec_out", name: "Exec", direction: "output", kind: "exec" },

View File

@@ -47,7 +47,7 @@ export const rrectNode = createNodeModule(
kind: "number",
defaultValue: 2,
},
{ id: "color", name: "Color", direction: "input", kind: "number" },
{ id: "color", name: "Color", direction: "input", kind: "color" },
],
outputs: [
{ id: "exec_out", name: "Exec", direction: "output", kind: "exec" },

View File

@@ -47,7 +47,7 @@ export const rrectfillNode = createNodeModule(
kind: "number",
defaultValue: 2,
},
{ id: "color", name: "Color", direction: "input", kind: "number" },
{ id: "color", name: "Color", direction: "input", kind: "color" },
],
outputs: [
{ id: "exec_out", name: "Exec", direction: "output", kind: "exec" },

View File

@@ -28,7 +28,7 @@ export const sgetNode = createNodeModule(
},
],
outputs: [
{ id: "value", name: "Color", direction: "output", kind: "number" },
{ id: "value", name: "Color", direction: "output", kind: "color" },
],
properties: [],
},

View File

@@ -30,7 +30,7 @@ export const ssetNode = createNodeModule(
id: "color",
name: "Color",
direction: "input",
kind: "number",
kind: "color",
defaultValue: 0,
},
],