[IDEA] Gtk2.0 and Squeak in the 'real boring world'
Steven Swerling
sps2000 at mail.com
Thu Jun 20 16:41:46 UTC 2002
Nahuel Greco wrote:
>Other option is to add multi window capabilities to Squeak and write a good and
>boring widget library :)
>
With modules well under way, this doesn't seem like such a bad idea. If
I understand you, you are implying a smalltalk widget set that mimics
the behavior of GTK, both in user experience and the ability to read GTK
window specs. The work (in man-hours) might be a lot. But it has a some
advantages over doing it with bindings to GTK.
First, with the arrival of modules, it could be implemented as a simple
add on module, without radical changes or extentions to Morphic. Put
another way, it seems to lend itself the style of open source
collaboration that has evolved in the Squeak community. If Andreas is
correct about how difficult it would be to do real GTK bindings, than a
real worry about doing such a project is that developing and maintaining
GTK support would be tantamount to a fork in the code base, or at least
in Morphic. Unless, that is, we were able to get a high level of
cooperation and collaboration from SqueakC. And my sense is that the
SqueakC guys believe a boringly typical widget set is not where their
priorities lay (intentionally tendentious phrasing). In contrast,
writing the widgets as a set of modules could require minimal
cooperation from SqueakC without losing the enumerable benefits of their
continuing labors.
Third, less coordination would be required among developers. Anyone who
wanted to pitch in could pick a GTK widget that has not been copied, and
write it. Like it or not, copying existing UI designs is the bedrock of
many, perhaps most, successful open source projects, including GTK
itself. Either the widget set behaves like GTK or it doesn't, either it
reads third party GTK window specs or it doesn't. There would still be
conflict among developers about the underlying design, but the more
"religious" conflicts over UI design that would be avoided, since anyone
who wishes that there was a GTK-like widget set for Squeak has implictly
signed on to the UI design before they write a line of code.
Fourth, of course, is that it is all in smalltalk. If, in the end, you
in fact have not really signed on to the design of the UI for a given
widget, than you could subclass it. With real GTK bindings, you are more
beholden to GTK's machinery, and subclassing a widget may require some C
code.
Fifth, of course, you would not have to ask your users to install GTK
libraries on a Mac or Win32 machine.
More information about the Squeak-dev
mailing list
|