The Mars sample application uses control state instances created from the GrafEdit control state classes and a number of other control state classes provided by the Cursor Tool framework and the Document framework.
The canvas view creates the menu palette and the menu hierarchy, which are made up of TMenu instances. At the bottom of the menu hierarchy is a TMomentaryMenu item that performs an action on a canvas graphic. The momentary menu item calls the Select function of the control state class associated with it.