




 
The function execute-with-interface is a useful way of operating on an interface owned by another process.  It takes a top-level interface, a function and some arguments and queues the function to be run by that process when it next enters its event loop (for an interface owned by the current process, it calls the function immediately).
execute-with-interface applies 
function
 even if 
interface
 does not have a screen representation, for example when it is destroyed. To call 
function
 only if 
interface
 has a representation, use execute-with-interface-if-alive.execute-with-interface is a useful utility in other circumstances.execute-with-interface calls 
function
 on the current process if 
interface
 does not have a process.
(setq a (capi:display (make-instance 'capi:interface)))
(capi:execute-with-interface
a 'break
"Break inside the interface process")
(example-edit-file "capi/elements/progress-bar-from-background-thread")
apply-in-pane-process
apply-in-pane-process-if-alive
execute-with-interface-if-alive
The correct thread for CAPI operations
Programming with CAPI Windows
CAPI User Guide and Reference Manual (Windows version) - 3 Aug 2017