Blue Plane?

Boris G. Chr. Shingarov usib6tfj at pol.ru
Mon Mar 16 03:56:16 UTC 1998


Squeakers,

After Cheese 4 is there, and questions like 'how do I get
callbacks working' seem clear, I afforded to put a little
more thought into design; and I must admit that after a
view from a more general perspective I'm not too happy. I
think the design of Cheese should be enhanced to not break
Squeak portability.  I wrote my thoughts on how to do it
in a document I uploaded to create today, the filename is
CheeseDoc.v0.1.ps.gz (gzipped PostScript).

Please share your opinions (good/bad, how to improve, ...)

Here is a short citation from the first page:

Cheese is a work-in-progress to enable Squeak use native 
resources of modern GUI systems, while not sacrificing 
portability not only among such systems but preserve BitBlt 
for systems which require it (like DOS).

To achieve this portability, Cheese introduces an intermediate 
layer to the architecture of the system.  The protocol provided 
by this layer is used by Smalltalk tools like browsers or 
workspaces, and may be used by or reside on top of UI frameworks 
like Morphic.  This variable level of abstraction allows 
higher-level code use BitBlt or native windows completely
transparently.  
For example, a SystemBrowser uses the protocol provided by Cheese 
to display a window consisting of several panes.  On Windows or 
Motif, these panes may be native widgets; a WorldMorph is also 
a window.  On the other hand, on another platform Cheese may 
depend on Morphic in its notion about how to display, say, a ListBox.

This document tries to provide a common base for Cheese portability 
to GUI platforms of different nature, such as Win32, OS/2 PM, 
OSF/Motif, and MacOS.


Regards,

Boris





More information about the Squeak-dev mailing list