[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: picking up mouse-drag events



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.