Remember from section object-sets, an object set is a collection of objects, CLX windows in this case, with some set of operations, event keywords, with corresponding implementations, the same handler functions. Since X allows multiple display connections from a given process, you can avoid using object sets if every window in an application or display connection behaves the same. If a particular X application on a single display connection has windows that want to handle certain events differently, then using object sets is a convenient way to organize this since you need some way to map the window/event combination to the appropriate functionality.
The following is a discussion of functions exported from the
package that facilitate handling CLX events through
The first two routines are useful regardless of whether you use
This function parses string for an X display specification including display and screen numbers. String defaults to the following:
(cdr (assoc :display ext:*environment-list* :test #'eq))
If any field in the display specification is missing, this signals
ext:open-clx-display returns the CLX display and
This function flushes all the events in display’s event queue including the current event, in case the user calls this from within an event handler.
|• Without Object Sets|
|• With Object Sets|