[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: picking up mouse-drag events
- To: chrispi@merle.acns.nwu.edu (christian e. crone)
- Subject: Re: picking up mouse-drag events
- From: bill@cambridge.apple.com (Bill St. Clair)
- Date: Mon, 15 Nov 1993 11:05:13 -0600
- Cc: info-mcl
At 12:48 PM 11/12/93 -0600, christian e. crone wrote:
>are there variables that holds the beginning and current position of a drag
>event (for example, as in selecting a group of objects)? it seems like
>*mouse-view*, etc. are bound to the click-down point.
>
>is there a method which handles such "selections" (which can be specialized)?
>if i were to try to make my own multi-view selection routine, where would it
>best fit?
Neither the Macintosh nor MCL has a concept of a "drag event". To
process dragging in MCL, you need to write a view-click-event-handler
that either calls #_DragGrayRgn or tracks the mouse until (mouse-down-p)
no longer returns true.
You can find some examples of this in the file
"ccl:interface tools;dialog-editor.lisp". Look at
(method view-click-event-handler :around (window t)) and
the functions it calls: drag-guide and grow-or-move-dialog-item
which calls move-selected-dialog-items.
Another example is the file "ccl:examples;view-example.lisp".
Look at (method view-click-event-handler (r-view-mixin t)) and
move-r-view which it calls.