Page 233 Table of Contents Index Page 235
Chapters
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
A, B, C, D, E



CHAPTER 23. PRESENTATION TYPES

cable, and highlighting the presentation that is applicable. Typically on entry to highlight-
applicable-presentation
, input-context will be the value of *input-context* and frame will
be the value of *application-frame*.

Implementation note: This will probably use frame-find-innermost-applicable-presentation-
at-position
to locate the innermost presentation, and unhighlight-highlighted-presentation
and set-highlighted-presentation to unhighlight and highlight presentations.

=> set-highlighted-presentation stream presentation &optional prefer-pointer-window [Function]
Highlights the presentation presentation on stream. This must call highlight-presentation
methods if that is appropriate.

=> unhighlight-highlighted-presentation stream &optional prefer-pointer-window [Function]
Unhighlights any highlighted presentations on stream.

23.7.4 Translator Applicability

The top-level "input wait", which is what you are in when inside of a with-input-context,
is responsible for determining what translators are applicable to which presentations in a given
input context. This loop both provides feedback in the form of highlighting sensitive presentation,
and is responsible for calling the applicable translator when the user presses a pointer button.

Implementation note: with-input-context uses frame-find-innermost-applicable-presentation-
at-position
(via highlight-applicable-presentation) as its "input wait" handler, and
frame-input-context-button-press-handler as its button press "event handler".

Given a presentation, an input context established by with-input-context, and an event cor-
responding to a user gesture, translator matching proceeds as follows.

The set of candidate translators is initially those translators accessible in the command table in
use by the current application. A translator is said to "match" if all of the following are true (in
this order):

  1. The presentation's type is presentation-subtypep of the translator's from-type, ignoring
    type parameters.

  2. The translator's to-type is presentation-subtypep of the input context type, ignoring
    type parameters.

  3. The translator's gesture is either t, or matches the event corresponding to the user's
    gesture.

  4. If there are parameters in the from-type, the presentation's object must be presentation-
    typep
    of the from-type.


Page 233 Table of Contents Index Page 235
Chapters
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
A, B, C, D, E