Morphic - The Squeak User Interface

by Juan Manuel Vuletich
Back to Juan's studio


Morphic and conventional GUI builders

Most commercial programming tools encourage constructing user interfaces by arranging some standard controls on a form or panel. This way you can build visual metaphors that represent the control panes usually found in real world machines. You can build an UI that looks and acts like the panel of a stereo system, the panel of a microwave oven, the dashboard of a car, etc. (including buttons, meters, knobs, and such). But you can't make a decent visual metaphor of any other kind object, natural or made by man. So, you can't build in this way a good metaphor for: Even so, there are good and usable applications to manage these kinds of objects. In these applications, the panels with buttons and checkboxes are only auxiliary control panels, but not the main metaphor. For example, the word processor where I m writing this has a big window full of WYSIWYG text. That s the main metaphor. The toolbars are secondary to this. All the applications I mentioned have a strong and good visual metaphor for the objects they manage.
But when it comes to programming tools, this is forgotten. Very little is spoken about this because it s difficult to generalize. Programming tool vendors only give us several standard controls or widgets. And they want to convince us that the only visual metaphor our objects need is a catatonic icon.

This is where Morphic stands out.

The framework is fully in Smalltalk; there are no "primitive" widgets or hidden functionality. This means that there are no restrictions to how a morph will appear and react. There are morphs that behave like the widgets usually found, and therefore conventional interfaces can be built. But there are more interesting visual metaphors like CurveMorph, FishEyeMorph, EnvelopeEditorMorph, or SpectrumAnalyzerMorph (see the next section with a Squeak at hand to know them). And the framework is open end extensible. It s not difficult to make new visual metaphors for our own objects, which are perfectly integrated in the system.

This makes Morphic the ideal environment to experiment, learn and write new styles in user interfaces, breaking away from what commercial programming tools allows us to do. Morphic is the future of user interfaces.