[UI] ToolBuilder
Gary Chambers
gazzaguru2 at btinternet.com
Fri Sep 7 22:46:15 UTC 2007
Also, IMHO, it looks like ToolBuilder was there to just support the tools in
an MVC/Morphic/Other manner rather than a more general UI. I.e. just enough
for the IDE tools...
> -----Original Message-----
> From: ui-bounces at lists.squeakfoundation.org
> [mailto:ui-bounces at lists.squeakfoundation.org] On Behalf Of
> Matthew Fulmer
> Sent: 07 September 2007 11:30 pm
> To: ui at lists.squeakfoundation.org
> Subject: [UI] ToolBuilder
>
>
> On Tue, Sep 04, 2007 at 02:09:10PM -0400, Bill Schwab wrote:
> > I am not so much thinking of a new IDE, only hooking into the tools
> > (that I _think_ are intended) to take the existing tools over to
> > tweak, etc. I vaguely recall seeing some of it in action, but it
> > might be very far short of what would be needed. One way
> to find out
> > though.
>
> You may be thinking of PlusTools, which is a port of the
> Squeak toolset to use the ToolBuilder abstraction layer.
>
> ---- A survey of squeak UI toolkits ----
>
> The default squeak browsers use the Pluggable*Morphs, whose
> sole purpose was to get the toolset, which was and still is
> written for MVC, to work in Morphic. They are not terribly
> useful morphs and are not representative of Morphic at all.
> They are the keepers of most of the "Unspeakable Horrors" in
> Morphic. Unfortunately, due to the popularity of the toolset,
> these widgets have given the average squeak developer a bad
> image of Morphic.
>
> ToolBuilder has an equally utilitarian original purpose: port
> the toolset to Tweak. Thus, it currently supports exactly
> what is needed to implement the Toolset. Unlike the Pluggable
> morphs, it creates a new, incompatible but slightly simpler
> abstraction layer, meaning that the entire toolset must be
> ported to use it. PlusTools is the name of this port, and it
> is not in the image by default.
>
> OmniBrowser is another abstraction created for the toolset.
> It is mostly a new model rather than a new view. That said,
> it does have it's own view abstraction I know nothing about.
>
> Monticello uses yet another custom view abstraction, or so I
> have heard. I know nothing about it.
>
> ToolBuilder is currently very primitive with regards to
> layout policy and widget variety. That is understandable, as
> it has not been used much since it was created. However, it
> does provide the necessary abstraction to enable a UI to be
> run on MVC, Morphic, Tweak, and (maybe?) Seaside. From what I
> have seen of
> it:
>
> I am not sure if ToolBuilder supports a hierarchal box model
> layout or not. It supports a Panel widget, but I have only
> seen it applied to the toolbar in the Browser. I have only
> seen ToolBuilder used with window-size relative positioning
> (ie, put this text pane in the rectangle (0 @ 0.5 corner: 1 @
> 1), where (0 @ 0 corner: 1 @ 1) is the drawable window area).
> No box model as far as I can tell.
>
> Also, I don't know if ToolBuilder supports dynamic UI's; all
> of squeak's tools are build-then-forget; the UI is never
> changed once built. I don't know if that is a technical
> limitation or a lack of imagination.
>
>
> Widgets ToolBuilder always supports:
> - Lists
> - Text areas
> - Button
> - Panel
> - Window
>
> Widgets ToolBuilder optionally supports:
> - Tree (with no fallback)
> - Multi-select list (with list fallback)
> - Input field (with text area fallback)
> - Action button (with button fallback)
> - Radio button (with button fallback)
> - Check box (with button fallback)
>
>
> So, in summary, ToolBuilder may be a fine start for a
> portable GUI framework, but it needs work and PlusTools is
> not in wide use yet and so still has a few rough edges. And
> there are quite a few projects that aren't using it.
>
> Jason: Could you describe MVP and what it is? I read a
> tutorial once but didn't get it...
>
> --
> Matthew Fulmer -- http://mtfulmer.wordpress.com/
> Help improve Squeak Documentation:
> http://wiki.squeak.org/squeak/808
> _______________________________________________
> UI mailing list
> UI at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/ui
>
More information about the UI
mailing list