[Squeakfoundation]defineClass fix!

goran.hultgren@bluefish.se squeakfoundation@lists.squeakfoundation.org
Mon, 16 Dec 2002 16:04:27 +0100

Ian Piumarta <ian.piumarta@inria.fr> wrote:
> On Mon, 16 Dec 2002 goran.hultgren@bluefish.se wrote:
> > "Andreas Raab" <andreas.raab@gmx.de> wrote:
> > > > The bug was introduced by Torge's 5137 fix.
> > > 
> > > What was the fix?! If I revert that change then everything seems to be
> > > all right. It doesn't have any effect I can see...
> > 
> > It appeared to be a check so that one can't enter methods when the
> > method category "all" is selected. But I never verified that Torge's
> > check worked... I just assumed it did.
> > 
> > Aha, ok - the idea is that it gives you a proper "inform" instad of
> > "Nothing more expected ->" if you start entering a method without first
> > selecting a method category. If I understood it correctly.
> Didn't this used to (way back yonder) create a new protocol (or add to an
> existing protocol) called "as yet unclassified" for methods entered while
> "--all--" is selected?  What happened to that?  (Or did I simply dream
> that this was the case, in some kind of "perverse hacker nightmare"?)
> Ian

It depends a bit on how you interact... :-) If you select a class,
select "--all--" and then enter a method (instead of the class template)
then you get the "Nothing more expected ->" thing (and we all know why).
This was what Torge wanted to make friendlier with an inform. Noble
intention but I don't like the code - not even my fixed version that

But if you select a class, select "--all--", select a method, deselect
that method (giving you a method template) and enter a new method then
it will - as you noted - end up in "as yet unclassified".

In short - the whole Browser-caboodle feels like a big mess sometimes
and it would be great to just rewrite the whole darn thing. That's
another story of course.

If this "newbie problem" really needs to be "patched" somehow then we
could instead throw up some nice inform: when we trap that the Compiler
failed to compile the expression. That would be much cleaner IMHO.

regards, Göran