Croquet UI input handling
Joshua 'Schwa' Gargus
schwa at cc.gatech.edu
Fri Jan 31 01:02:05 UTC 2003
I'm creating a simple interface to Croquet to allow setting of
keyframes, sketching, etc., and I need to create my own UI behaviors.
As it now stands, the tool support is insufficient (I did read the
TPointer class comment, and realize that tool support isn't done). It
appears that the tool only operates when there is an object selected.
I envision a pen-based system that uses Genie to interpret any stroke
made with the pen, even if there is no selected object. I would also
like to be able to assign different behaviors to the yellow and red
The approach that I have come up with is to have a hierarchy beneath
TPointer, where each class defines a different type of UI behavior.
There would be a TStandardPointer that supports the current behavior.
Some of the protocol of TCamera (such as snapBack) would be moved into
TPointer or TStandardPointer.
I also want to add a history to support undo/redo. I haven't decided
whether this belongs in the camera, the pointer, or somewhere more
global. I'll probably opt for the pointer, and move it later if
I'm writing this so as not to re-invent the wheel in case this area is
actively being worked on. If not, I hope that I can do some work that
furthers my research and is useful for Croquet. I'm also hoping to
generate a bit of discussion, since I'm not sure I have a solid grasp
on the design space, and know that there are others out there. If
anyone is interested, I'll write something a bit more detailed than
More information about the Squeak-dev