[Vm-dev] changes to Cross headers files

Andreas Raab andreas.raab at gmx.de
Mon Apr 21 23:41:05 UTC 2008


Sounds good. Can you by any chance email me enough of the support code 
(or point me to an image that has it) so that I can try this out on Windows?

Cheers,
   - Andreas

Takashi Yamamiya wrote:
>  
> Hi Andreas,
> 
> On Mon, Apr 21, 2008 at 1:22 PM, Andreas Raab <andreas.raab at gmx.de> wrote:
>>  Looks good to me. Can you say something about the intended use case for the
>> dnd changes? Looks like you're trying to support drags out of Squeak? How
>> would the image utilize this?
> 
> I added one event type (DragRequest = 5) and three primitives in
> DropPlugin for OLPC etoys image.
> 
> HandMorph>>primitiveDndOutStart: aByteArray (DropPlugin>>primitiveDndOutStart:)
> - Initialize drag out session and tell types (null separated strings) to VM.
> 
> HandMorph>>primitiveDndOutAcceptedType (DropPlutin>>primitiveDndOutAcceptedType)
> - Answer a type which receiver program accepted.
> 
> HandMorph>>primitiveDndOutSend: aByteArray (DropPlugin>>primitiveDndOutSend:)
> - Transfar actual data to the receiver.
> 
> 1) For example, if you are about to drag a morph,
> #primitiveDndOutStart: is called with types like
> "image/png\0image/gif\0image/bmp". And VM starts drag out session.
> 
> 2) If some application accepts it, DragRequest event is send to the
> image. The image knows accepted type e.g. "img/png" through
> #primitiveDndOutAcceptedType then send actual png data with
> #primitiveDndOutSend:.
> 
> All other internal messy things like canceling the session are handled
> inside VM and image don't care about them.
> 
> additional code for DropPlugin is:
> - http://etoys.laptop.org/svn/trunk/vmm/additionalPlugins.cs
> and support codes for unix vm are:
> - http://squeakvm.org/svn/squeak/branches/olpc/platforms/unix/plugins/DropPlugin/sqUnixDragDrop.c
> - http://squeakvm.org/svn/squeak/branches/olpc/platforms/unix/vm-display-X11/sqUnixXdnd.c
> 
> Cheers,
> - Takashi
> 


More information about the Vm-dev mailing list