[ < ] | [ > ] | [ << ] | [Plus haut] | [ >> ] | [Top] | [Table des matières] | [Index] | [ ? ] |
With Emacs, you can have a drag event without even changing your clothes. A drag event happens every time the user presses a mouse button and then moves the mouse to a different character position before releasing the button. Like all mouse events, drag events are represented in Lisp as lists. The lists record both the starting mouse position and the final position, like this:
(event-type (window1 buffer-pos1 (x1 . y1) timestamp1) (window2 buffer-pos2 (x2 . y2) timestamp2) click-count) |
For a drag event, the name of the symbol event-type contains the
prefix ‘drag-’. For example, dragging the mouse with button 2 held
down generates a drag-mouse-2
event. The second and third elements
of the event give the starting and ending position of the drag. Aside from
that, the data have the same meanings as in a click event (voir la section Click Events). You can access the second element of any mouse event in the same
way, with no need to distinguish drag events from others.
The ‘drag-’ prefix follows the modifier key prefixes such as ‘C-’ and ‘M-’.
If read-key-sequence
receives a drag event that has no key binding,
and the corresponding click event does have a binding, it changes the drag
event into a click event at the drag's starting position. This means that
you don't have to distinguish between click and drag events unless you want
to.
Ce document a été généré par Eric Reinbold le 13 Octobre 2007 en utilisant texi2html 1.78.