luvcraft/clim/command-menu.lisp
Return Luvcraft's currently defined argument-free commands as conses.
This compatibility-shaped query is useful to callers which only inspect the
vocabulary. The live menu itself retains mcluv:command-menu-entry objects.
Search legacy cons entries through the shared M-x matcher.
Cancel and release session's M-x menu.
Removing the widget invokes its ordinary release protocol, which destroys the shared McCLIM frame and all retained direct-GPU resources.
Create, attach, and focus session's shared direct-GPU M-x instrument.
The semantic input layers whose directly owned commands M-x offers.
()Return Luvcraft's currently defined argument-free commands as conses. This compatibility-shaped query is useful to callers which only inspect the vocabulary. The live menu itself retains MCLUV:COMMAND-MENU-ENTRY objects.
One cached, executable command-table entry displayed by M-x.
(tables &key owner-frame (inherited nil))Return cached M-x entries read from TABLES. Each command appears once even when command-table inheritance exposes it in several layers. OWNER-FRAME, when supplied, excludes commands which that application currently disables. Commands with required arguments remain out until M-x has an argument-prompting interaction…
(entries query)A direct McCLIM surface mounted in the presentation HUD.
(overlay)Return where OVERLAY draws: :SCENE, :WORLD-PANEL, :VIEWMODEL, :HUD, or :NONE. Scene overlays inhabit world depth; viewmodels are first-person geometry above the world but below held items and the crosshair. World panels retain world projection and depth while drawing analytic application graphics at native…
(overlay session pass surface-texture)Encode OVERLAY into SESSION's open scene PASS for SURFACE-TEXTURE.
An explicitly owned AVFrame.
A native destination with a lifetime and frame clock.
(frame)(frame viewport-logical-extent)Return a centered affine state measured in destination logical pixels. At scale one, one command-menu coordinate occupies one logical pixel in the game viewport. The final direct render therefore receives the destination's native pixel density automatically: a 2x drawable evaluates every analytic edge and Slug glyph…
(focus session)Return a non-negative targeting score when FOCUS can be entered by TAB.
(focus session)Return FOCUS's desired CAMERA-POSE in SESSION, or NIL for an FOV-only cue.
(position)The block-world camera's 70-degree vertical field of view.
(focus session)Notify FOCUS that SESSION has entered its interaction mode.
(session)(overlay session)(session)(session overlay &key (release-p t))Detach OVERLAY at a frame boundary and optionally release it there. The no-release path is intentionally preserved for FUSE-LUVCRAFT-OVERLAY: that path may run inside a frame whose command stream still borrows OVERLAY.
(overlay session action command)One named verb over a session.
(frame command &key before-execute)Execute COMMAND on FRAME's owner, after optional BEFORE-EXECUTE. The owner is captured first so BEFORE-EXECUTE may destroy FRAME while removing the modal surface. Application commands therefore never run underneath M-x.
(focus session canvas event)Handle EVENT while FOCUS owns SESSION's modal player interaction.
(frame event)Handle one portable key press and return ACTION and optional COMMAND. ACTION is :CONTINUE, :DISMISS, or :EXECUTE. This function never calls the application command while it is updating or repainting M-x; the host dismisses its modal surface first and passes COMMAND to EXECUTE-COMMAND-MENU-COMMAND.
(overlay session canvas event)Handle EVENT projected onto OVERLAY, returning true when consumed.
(overlay x y)(overlay)(frame x y button)Multiplication and scalar scaling.
(session &key (title "luvcraft M-x"))(owner-frame canvas context device
&key command-tables (inherited (null command-tables)) (title "M-x"))Create OWNER-FRAME's retained direct-GPU M-x surface on CANVAS. The returned frame owns no native window and no raster backing texture. Its prepared semantic commands are replayed by the host application's existing GPU pass.
(session)(frame &key (errorp t))(session overlay)Attach OVERLAY at SESSION's next native frame boundary and return it. ADD consumes a newly offered OVERLAY on both success and terminal rejection. Once SESSION begins stopping, the rejected overlay is released exactly once before APPLICATION-ATTACHMENT-CLOSED is signalled.
(session focus)Enter modal interaction with FOCUS, suspending ordinary player input. This is the common session transition behind using a world terminal or book, mounting a vehicle, and other interactions described by #8JCMA5.
Logical conjunction of tests and raw truth values.
Logical negation of one test or raw truth value.
(overlay)Release resources owned by an object attached to luvcraft.
(frame)(session)(name (&rest lambda-list) documentation &body body)
Luvcraft contributes only its application vocabulary and modal-overlay lifecycle. Search, retained GPU drawing, input editing, and execution on the owning command frame belong to luv/mcclim's shared M-x instrument.