Finds an interface of a given class that matches supplied initargs.
capi
locate-interface class-spec &rest initargs &key screen no-busy-interface &allow-other-keys => interface
class-spec⇩ |
A specifier for a subclass of interface. |
initargs⇩ |
Initialization arguments for class-spec. |
screen⇩ |
A screen or nil . |
no-busy-interface⇩ |
A boolean, defaulting to nil . |
interface |
An interface of class class-spec, or nil . |
The generic function locate-interface
finds an interface of the class specified by class-spec that matches initargs and screen.
First, locate-interface
finds all interfaces of the class specified by class-spec by calling collect-interfaces with class-spec and screen. The first of these which match initargs (by interface-match-p) is returned.
If there is no match, then locate-interface
finds the first of these which can be reused for initargs, by interface-reuse-p. This reusable interface is reinitialized by reinitialize-interface and returned.
no-busy-interface controls the use of the busy cursor during reinitializing of a reusable interface. If no-busy-interface is nil
, then this interface has the busy cursor during reinitialization. If no-busy-interface is true, then there is no busy cursor.
If no matching or reusable interface is found, or if global interface re-use is disabled by (setf
reuse-interfaces-p)
, then locate-interface
returns nil
.
collect-interfaces
interface-match-p
interface-reuse-p
reuse-interfaces-p
CAPI User Guide and Reference Manual (Macintosh version) - 01 Dec 2021 19:31:27