[squeak-dev] Re: PlusTools and Tweak

Andreas Raab andreas.raab at gmx.de
Wed Apr 30 04:57:43 UTC 2008


David Faught wrote:
> Andreas Raab wrote:
>> I don't see any dependencies between SystemNavigation and Morphic (at
>> least in the Croquet images). What makes you think that the former
>> depends on the latter?
> 
> <general confusion>
> I guess it's just my general confusion trying to unravel the toolset,
> the related models, and the fact that SystemNavigation is referenced
> as a method at the Object instance level.  The only reason I would
> think that the SystemNavigation methods would be implemented at that
> level would be so that specific methods of the SystemNavigation
> instance would be overloaded by the current toolset context, similar
> to the way a model is used.  And yet I don't see any reference to
> which methods should be overloaded as opposed to those that would be
> private or non-toolset dependent.  The fact that the structure of some
> of the tools is different between PlusTools, the standard Tweak tools,
> and the other toolsets in the Croquet image doesn't help my general
> confusion level.  It's just taking me a while to sort through what's
> what.
> </general confusion>

Let's try to resolve this first. SystemNavigation is a set of functions 
that were originally associated with other places. In the Squeak 3.4 
days for example you would say "SomeClass browseAllCallsOn: #foobar" 
instead of "SystemNavigation new browseAllCallsOn: #foobar from: 
SomeClass". Unfortunately the transfer of functionality wasn't done to 
maximize usability but rather more in a mechanical way which leads to 
some conceptual dissonances. However, outside of this SystemNavigation 
(at least in the Croquet images) ties directly into ToolSet - which is 
the abstraction over the different varieties of tools (including PlusTools).

> <weak defense of earlier statement>
> Your comment makes it sound like SystemNavigation should be
> UI-independent.  If that is truly the case, then I think there are a
> few little things to be cleaned up there.
> 
> The SystemNavigation instance methods often reference the Cursor,
> which I guess is a really a Display-related thing and not Morphic.
> But maybe those references don't really belong if SystemNavigation is
> supposed to be UI-independent.  I am presently trying to sort out the
> #implementorsOfIt and #sendersOfIt methods in the CPluggableText class
> and find in the SystemNavigation method
> #browseMessageList:name:autoSelect:that a MessageSet instance is
> created.  MessageSet looks to be part of a whole different toolset
> which has some Morphic stuff in it.  Maybe that's where I went astray,
> and this should really work indirectly through the toolset instead of
> using MessageSet directly, as I see that there is also a
> MessageSetPlus class.
> </weak defense of earlier statement>

Indeed, this *should* be cleaned up. If you have patches towards that 
effect I'd be happy to review those and fold them into Croquet.

> <trying to sound positive>
> I am plowing ahead and just having a little difficulty keeping
> everything straight.
> </trying to sound positive>

Yup, please let me know how your work is coming along.

Cheers,
   - Andreas



More information about the Squeak-dev mailing list