Skip to content

rxe/editor: the editor as a module, apps/editor as its main - #88

Merged
Force67 merged 1 commit into
mainfrom
structure-phase6c
Sep 29, 2026
Merged

Force67 merged 1 commit into
mainfrom
structure-phase6c

Conversation

@Force67

@Force67 Force67 commented Sep 29, 2026

Copy link
Copy Markdown
Owner

Phase 6c of docs/STRUCTURE.md.

  • rx::editor (rxe/editor): the editor app code (Editor, its UI, input, terrain and placement tools, editor.ugui) plus selection and undo from rxe/edit, which is gone (rx::edit becomes rx::editor). apps/editor is now just main.cc. A game's editor is the same few lines linking its own modules next to rx::editor, and the install package exports rx::editor.
  • The module takes the rx_editor target name; the executable target is rx_editor_app with OUTPUT_NAME rx_editor, so the binary users run keeps its name (build/linux/apps/editor/rx_editor).
  • terrain moves from plugins/ into rxe/. Terrain editing is built into Editor (a mode with its own undo hooks and UI), and an engine module cannot depend on a plugin. It can go back to plugins/ with its editor mode once the editor has an extension point.
  • Lint: only apps and the editor may depend on app. The editor is the one engine module that is itself an application; games extend it. Everything under rxe/editor/ is editor-only for other libraries. The editor's own action enum moves from flat rx:: into rx::editor; the namespace lint caught it.
  • world, rxworld and the shell no longer link edit; they only needed what moved into scene in authoring becomes devtools, scene takes reflection and hierarchy #81.
  • Drops the editor's per-DSO InitOptionsFromEnv workaround (obsolete since Shared build links and runs: exports, one option registry, per-DSO volk, linux-dev #84).

Verified:

  • static and shared: build, ctest (same 155 tests, 155 pass) in both; lint 0 violations
  • swrun rx_editor starts, mounts rxe://, reports 0 platform-config problems, and is still running at a 15 s timeout

@Force67
Force67 merged commit effeb14 into main Sep 29, 2026
@Force67
Force67 deleted the structure-phase6c branch September 29, 2026 08:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant