mcclim/port.lisp
Renderer-independent McCLIM display connection owned by luv.
A luv port whose media rasterize into MCCLIM-RENDER images.
A CPU raster medium whose image and semantic reliefs feed a luv target.
A luv port whose media record McCLIM drawing directly as GPU geometry.
An ordered McCLIM drawing stream containing no software pixel surface.
A McCLIM frame manager constrained by luv's current native host.
McCLIM pointer state cached from portable canvas events.
Synchronize mirror's pending output with its target.
Release renderer-specific resources retained by mirror.
The unqualified backend name is the production path. Keep the old raster uploader available only under its deliberately explicit name.
Wait cooperatively until McCLIM has another reason to run.
Concurrent McCLIM sheet queues are woken directly when luv appends translated events. This quiet fallback remains for single-process queue users.
A port I/O process may call us with neither argument. Remain quiescent until it is interrupted or real event delivery exists.
MCCLIM-RENDER gives us a useful, inspectable CPU image. Finish/force output synchronizes its dirty contents with the mirror's GPU texture.
Renderer-independent McCLIM display connection owned by luv.
((graft luv-graft) &key (units :device))((graft luv-graft) &key (units :device))A luv port whose media rasterize into MCCLIM-RENDER images.
A CPU raster medium whose image and semantic reliefs feed a luv target.
A luv port whose media record McCLIM drawing directly as GPU geometry.
An ordered McCLIM drawing stream containing no software pixel surface.
A McCLIM frame manager constrained by luv's current native host.
((manager luv-frame-manager) items &rest options)(canvas)Claim any process-global native host required before CANVAS starts.
Logical disjunction of tests and raw truth values.
McCLIM pointer state cached from portable canvas events.
((pointer luv-pointer))((pointer luv-pointer))((port luv-port))(mirror)Release renderer-specific resources retained by MIRROR.
The root of the McCLIM sheet hierarchy on a LUV-PORT.
((type (eql :luv)))Headings, paragraphs, figures and their IDs, mentions, marks.
((agent application-agent) &key)((call tool-call) stream)((port luv-port)
&key (orientation :default) (units :device))(pixels dpi units)Division of two represented quantities.
Multiplication and scalar scaling.
((port luv-port)
&key wait-function timeout)Wait cooperatively until McCLIM has another reason to run. Concurrent McCLIM sheet queues are woken directly when luv appends translated events. This quiet fallback remains for single-process queue users.
Logical conjunction of tests and raw truth values.
((port luv-raster-port) sheet)((port luv-port))((medium luv-raster-medium))((medium luv-raster-medium))((port luv-port))Protocol class for objects receiving canvas events.
(mirror)
McCLIM implements menus as temporary top-level frames. SDL's current Cocoa host gives one canvas a durable process-main-thread event loop, so a menu would require precisely the unsupported second native canvas that
claim-sdl-canvas-hostrejects. Decline it at the semantic boundary and leave the owning application frame responsive.