You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Image editor: slim down to image-loading; park legacy UV editor
The image editor fused two concerns: loading/displaying images and a full
UV editor (UVEditor component, UV picking, select/transform/flag ToolOps,
unwrap tools sidebar). To support sculptcore and a future UV-editing
abstraction, split them apart.
- Park the legacy implementation, unwired, under
scripts/editors/image/pending-port/ (ImageEditor.ts, uv_ops.js,
uv_selectops.js, uv_transformops.js) with a TODO.md port checklist.
Nothing imports them, so they fall out of the TS module graph (tsconfig
uses `files`) and are neither typechecked nor bundled. ImageBus.ts stays
put: it is a cross-cutting bus token still used by the mesh unwrapper.
- New minimal ImageEditor: loads images into ImageBlocks (image.open(),
Ctrl+O, DataBlockBrowser) and displays the active image with a checker
background + textured quad and pan/zoom. Owns the ImageUser directly, so
the active image now lives at `imageEditor.imageUser.image` (was
`imageEditor.uvEditor.imageUser.image`).
- Update cross-layer consumers to the new path / decouple them:
context.activeTexture, image_ops.js dataPath default, and
mesh_uvops_base.ts (stops reaching into editor.uvEditor; defaults
selectedFacesOnly=true until the new UV layer restores a binding).
Regenerate the datapath catalog and update documentation/editors.md.
A new UV-editing abstraction layer will be designed in a follow-up plan;
see scripts/editors/image/pending-port/TODO.md.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: documentation/editors.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -47,7 +47,7 @@ path.ux Area (scripts/path.ux/scripts/screen/ScreenArea.js)
47
47
├─ NodeEditor — shader node graph
48
48
├─ MaterialEditor — material shader editor (extends NodeEditor)
49
49
├─ NodeViewer — scene graph viewer
50
-
├─ ImageEditor — UV/image editor
50
+
├─ ImageEditor — image loader/viewer (UV editing parked; see pending-port)
51
51
├─ ConsoleEditor — JS console
52
52
├─ SettingsEditor — application preferences
53
53
├─ DebugEditor — GPU debug viewer
@@ -232,7 +232,7 @@ main content area. UI widgets are added to this container.
232
232
| NodeEditor |`node-editor-x`|`NodeEditor`|`editors/node/NodeEditor.js`| Shader node graph editor with pan/zoom and node connections |
233
233
| MaterialEditor |`material-editor-x`|`MaterialEditor`|`editors/node/MaterialEditor.js`| Material-specific node editor with material slot selection |
234
234
| NodeViewer |`nodegraph-viewer-x`|`nodegraph_viewer`|`editors/node/NodeEditor_debug.js`| Read-only scene graph visualization |
235
-
| ImageEditor |`uv-image-editor-x`|`ImageEditor`|`editors/image/ImageEditor.ts`|UV editor with image display and UV transform tools|
235
+
| ImageEditor |`uv-image-editor-x`|`ImageEditor`|`editors/image/ImageEditor.ts`|Loads images into `ImageBlock`s and displays the active image (pan/zoom). The legacy UV-editing implementation is parked, unwired, under `editors/image/pending-port/` pending a new UV abstraction — see its `TODO.md`.|
236
236
| ConsoleEditor |`console-editor-x`|`console_editor`|`editors/console/console.js`| JavaScript console with history and autocomplete |
0 commit comments