ZMAX-GUI-CORE // EMBEDDABLE GUI SURFACE

// MacVim-style menu · ⌘-shortcuts · dialogs · drag-drop → the zmax IDE PTY — one webview layer, every host

Engineering Report Source

zmax-gui-core is the embeddable webview surface behind zmax-gui, the native desktop wrapper around the zmax CLI IDE. It owns the GUI layer — a MacVim-style menu bar, ⌘-key shortcuts, Open / Save-As / Help dialogs, and drag-and-drop — built entirely from zgui-core widgets and bridged to the IDE by writing into the embedded PTY. No native menus or dialogs, no IPC of its own, so the standalone app and every embedding host serve the exact same GUI code. Created by MenkeTechnologies.

Embeddable

A host provides a terminal pane running the zmax PTY, then calls window.ZmaxMenu.mount(shell) to add the menu bar, shortcuts and dialogs, and ZmaxMenu.settingsExtra(panel) to fold the IDE toggles into its own settings panel.

All zgui-core

Every control is a zgui-core widget — ZGui.menubar + ZGui.contextMenu for the menu bar, ZGui.modal + ZGui.tree for Open / Save-As, ZGui.fileDrag for drag-and-drop. No hand-rolled chrome.

PTY bridge

Menu actions are translated to IDE commands written straight into the PTY (ESC-disambiguated ex-commands and keystrokes), so the GUI drives the unmodified CLI IDE with no IDE-side coupling.

What it does

menu / shortcut / dialog → bridge writes into the zmax PTY → the IDE acts → the terminal renders — the GUI never owns IDE state, only feeds it.

The OS-access primitives (list_dir, fullscreen, blur) are thin Tauri commands supplied by the host; everything user-facing is a zgui-core widget. See the engineering report for the action map and the PTY-bridge details.

Quick start (embedding host)

// host has mounted ZGui.appShell and a terminal pane running the zmax PTY
window.ZmaxMenu.mount(shell);               // menu bar + ⌘-shortcuts + dialogs + drag-drop
window.ZmaxMenu.settingsExtra(settingsEl);  // IDE language picker + toggles into the host's settings

More

See the engineering report for the menu/action map, the PTY-bridge protocol, and the zgui-core widget inventory. Source lives at github.com/MenkeTechnologies/zmax-gui-core; the umbrella stack is MenkeTechnologiesMeta.