Notes for a future document on:
Start with a summary of the includeX methods in GridAppFrame. Talk about including general Java Swing components (includeControlComponent) and about extending the ControlButton and ThreadedControlButton classes (anonymous inner classes or explicit subclasses, with which students may be more familiar).
Next describe the difference(s) between GridAppFrame and SteppedGridAppFrame, including the additional includeX methods.
Finally, talk about subclassing GridAppFrame and SteppedGridAppFrame. Start with the easiest and most obvious extensions, e.g., onMouseClick. Will have to go through the various levels of Template Method Pattern by the end.
Using images to display new classes (with and without rotation).
Associating existing displays with new classes -- e.g., ColorBlockDisplay can be used to display any class that responds to the color method, TextCellDisplay ..., PictureBlockDisplay....
Implementing new display classes.
Next version: Will acm.java graphics objects work well in the scaled grid world?