While exploring the Dr Geo sketch tests and trying to see how we could make them work in GT, I discovered that a sketch would try to draw on a “drawable” morph that it obtained from the DrGeo system object. The drawable is stored a few layers down:
DrGeo → DrGUIMinimalControlsManager → DrGeoMiniView → DrGDrawable
This is fine, but it seems to me that this limits Sketches to having only a single view available at a time, whereas a true MVC architecture would completely decouple the model classes from the view, thus allowing arbitrary views to connect to the same underlying model via announcements. To work in GT, I need to be able to spawn any number of views on the same Sketch.
Is this correct? If so, I should ignore the DrGeo class and instead set up views on demand. This would also eliminate the need for “beDevelopment” and “beWorkstation” since these are just different views on the same underlying model.