[Newbies] GUI (using MVC?) application writing advice

Michael van der Gulik mikevdg at gmail.com
Sun Mar 22 20:58:02 UTC 2009


On Mon, Mar 23, 2009 at 12:45 AM, Kevin Polston <khwp.01 at googlemail.com>wrote:

> Hi
>
> I'm just beginning to learn Smalltalk.  I've been using Cincom's
> VisualWorks and have been writing a small GUI application (Text boxes, radio
> buttons, action buttons - that kind of thing) using MVC.  I've now come
> across Squeak and have been looking for a similar set of classes (or a
> package) to help me do a similar GUI application in Squeak but I can't seem
> to find anything.  Can anybody help me here - some pointers to a tutorial
> would be fantastic.
>


The GUI components in the base Squeak image are mostly implemented in
Morphic. The classes are:

Text boxes: PluggableTextMorph, TextFieldMorph.
Radio buttons: UpdatingThreePhaseButtonMorph, ThreePhaseButtonMorph,
ButtonMorph, ...
Normal buttons: SimpleButtonMorph, UpdatingSimpleButtonMorph.
Windows: SystemWindow

I dislike Morphic and I don't hide the fact. It's a huge time-waster when
you're trying to get things to work right. Instead, I use ToolBuilder
(Google it), which gives a simplified API that has most of what I need.
ToolBuilder is available in standard Squeak images, although I have updated
packages lying around somewhere. There's no documentation (afaik) and you'll
need to rely on example code. One day I plan to fix that.

If you want your user interface to actually look respectable, then these are
your options:

* Go back to VisualWorks.
* Try Pharo where a lot of UI work has been done.
* Try Seaside for web-based applications.
* Use WxSqueak or GtkSqueak which use native widgets. I've found WxSqueak to
work okay and look quite nice, although you'll be working with old and
experimental software.

Gulik.

-- 
http://gulik.pbwiki.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/beginners/attachments/20090323/1f7d2d19/attachment.htm


More information about the Beginners mailing list