2 Design by Reuse


In this chapter you will learn how to design a new morph – in the idea of a new widget – by assembling existing ones. We first illustrate the topic with existing morphs from the Cuis-Smalltalk system and the Cuis-Smalltalk-UI repository. Then, we dive into the design of a new morph – a file selector – gradually improving it from a quick design in a Workspace to a class of its own. Finally, its design is rigorously tested by reusing it in an end-user GUI.