Revision [187]

This is an old revision of ioGetNextEvent made by JohnMcIntosh on 2008-10-16 23:19:40.


sqInt ioGetNextEvent( sqInputEvent *evt)

Evt is a pointer to an array of words that we populate with event data.

return: NONE, fake return of zero
Can set success() to fail, not fail the primitive

From: Interpreter
To get FIFO UI event data from the UI

Most VMs have a FIFO queue that contains subclasses of sqInputEvent to record mouse, keyboard, drag/drop, menu and window events.
Most VMs call ioProcessEvents if the queue is empty

ioProcessEvents is always called.


Adds a new event type that indicates we have a pending complex data object to return. This data object is to support the
multi-touch UI. The smalltalk event queue processing logic has to make a different call to fetch the data from another queue.
This requires a change to the currently shipping VMMaker to allow us to pass up a smalltalk object, versus just integers.


IF there are no events it calls ioProcessEvents, otherwise return next event on queue. Queue is not locked

Most VMs don't consider locking the FIFO queue, are they all thread safe?
Some VMs return true/false, but the return value is ignored.

There are no comments on this page.
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki