Plugin GUI: graft the editor's views onto a host-supplied window #3
Labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
bcox/tymbal#3
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The largest outstanding extension, and the reason preset transport had to be
built at all: the plugin has no GUI, so a host renders the generic parameter UI
over eight macro knobs, and a patch can only be authored in the standalone
editor.
The seam already exists and is deliberate.
editor/BUILD.bazelstates it:So the work is not "write an editor UI" — that exists. It is:
clap.guiinplugin/plugin.cc.tools/patch_editor.cc's GLFW one.EditSinkwhose patch is owned by the audio thread, where editsmust reach it without tearing and the host must be told about the ones it
considers parameters. See the companion issue on
RequestMacro().Why the seam is worth defending
It has already been defended once. During preset transport,
editor/preset_browserwas given a dep on
@imgui//:imgui_glfw_opengl3— the GLFW+OpenGL backend —where every other view target deps on plain
@imgui. That would have made thepreset browser the first
editor/target that could not link into ahost-supplied window without dragging GLFW along. Caught in review and fixed in
6cae523.Worth a build-level guard so it cannot regress: nothing under
editor/shouldbe able to depend on the ImGui backend target.