Application note 241 "The RISC OS Drag-and-Drop System"



Hi,

I am having some trouble interpreting application note 241, which
describes a message protocol for drag and drop data transfer between
applications. It extends the standard data transfer protocol by
allowing the receiving task to display an insertion point during a
drag; either a 'ghost' caret or a bounding box scaled according to the
destination window's zoom factors. The full text of this application
note is on the web at
http://www.starfighter.acornarcade.com/mysite/articles/Drag-and-Drop.html

My question concerns flags bit 1 in the DragClaim (code 18) message,
which is named 'remove wimp dragbox'. The relevant paragraph states:

"The 'remove wimp dragbox' flag works slightly differently - since the
receiver is not allowed to alter the wimp dragbox, it should instead
ask the sender to do this by setting bit 1 of the DragClaim message. If
at some later time a DragClaim is sent without this bit set, or the
Message_Dragging bounces, the sender should restore the wimp dragbox.
It should do this by calling Wimp_DragBox again with the appropriate
drag type."

It is not clear to me whether the 'wimp dragbox' (i.e. the sender's
representation of the dragged data) should be removed by calling SWI
Wimp_DragBox with R1 = -1 (to cancel the drag), or by calling
Wimp_DragBox with a drag type of 7 (drag invisible point). Initially I
read it as requiring cancellation of the drag, but this would prevent
the sender task from subsequently receiving notification of drag
termination via a User Drag Box event.

Can anyone clarify please?

Thanks,
--
Chris Bazley

.



Relevant Pages

  • Re: Drag and Drop
    ... that someone here could help me simplify it. ... There is no data transfer. ... is all happening in the same JFrame so it should be simple. ... a complication than using drag and drop, ...
    (comp.lang.java.programmer)
  • Re: Dragging and pointer entering/leaving window
    ... Users can choose to drag in extra tools from ... another window and place them on the toolbar, ... monitors null events and watches the pointer position. ... The drag and drop message protocol described in application note 241 ...
    (comp.sys.acorn.programmer)
  • Re: Application note 241 "The RISC OS Drag-and-Drop System"
    ... "The 'remove wimp dragbox' flag works slightly differently - since the ... representation of the dragged data) should be removed by calling SWI ... Wimp_DragBox with a drag type of 7. ... The difficulty with this protocol is finding applications to test it with. ...
    (comp.sys.acorn.programmer)