An image with VMMaker is http://etoys.laptop.org/svn/trunk/vmm/ (olpc-vmm.image and olpc-vmm.changes)
Image side code is http://etoys.laptop.org/svn/trunk/etoys/ (etoys-dev.image and etoys.changes, you might need to update)
But I don't have any code running on Windows...
Cheers, - Takashi
On Mon, Apr 21, 2008 at 4:41 PM, Andreas Raab andreas.raab@gmx.de wrote:
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@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.
- 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.
- 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:
and support codes for unix vm are:
http://squeakvm.org/svn/squeak/branches/olpc/platforms/unix/plugins/DropPlug...
http://squeakvm.org/svn/squeak/branches/olpc/platforms/unix/vm-display-X11/s...