I need a standard single line text entry widget
Ned Konz
ned at bike-nomad.com
Tue Apr 9 19:58:13 UTC 2002
On Tuesday 09 April 2002 01:28 pm, Tim Rowledge wrote:
> Good Grief. People are expected to actually be able to work this
> out? I suppose folks that have done as much morphic hacking as ned
> might find it possible to keep track of but really, isn't this
> getting a little complex?
How I got this (in full):
* think of places where I've seen text entry fields.
* remember the Message Names browser.
* open one up
* test the widget. Figure it's good enough for an example.
* open a browser on the MessageNames class
* locate its initialization protocol
* look first at method #inMorphicWindowLabeled:, note that it just
calls #inMorphicWindowWithInitialSearchString:
* look at method named #inMorphicWindowWithInitialSearchString:
* look down a bit to where it constructs the PTM
* copy the text to a workspace.
* do it after adding the "openInHand"
* see it blow up on #searchString (which is a pluggable selector in my
Workspace code)
* replace the model callbacks in the Workspace code with nil (and hope
that that doesn't blow up)
* try it again.
* note that size is too big.
* open up halos, size it to what looks like a single line.
* open up inspector from halo
* type in expression "self extent" in inspector and evaluate it.
* Copy that to my workspace and add the extent: call.
* try it again
* copy to mail message
All of which looks much more complex than it really was.
The alternative is to make a version of a text entry field that works
the way you want and get it added to Squeak. There have been several
people who have made these in the past. Look at
http://minnow.cc.gatech.edu/squeak/1576 for some of these.
If I were going to make one of these I'd probably try to construct
something out of a TextMorphForEditView, a TransformMorph, and a
BorderedMorph.
--
Ned Konz
http://bike-nomad.com
GPG key ID: BEEA7EFE
More information about the Squeak-dev
mailing list
|