* @param object The object to configure.
* @param parent The parent window, or null if there is none.
*/
public void createEditor(NamedObj object, Frame parent) {
try {
Configuration configuration = ((TableauFrame) parent)
.getConfiguration();
NamedObj container = object.getContainer();
_taskMap = new HashMap();
_taskState = new ArrayList();
plot = new Plot();
plot.setTitle("TM Schedule");
plot.setButtons(true);
// We put the plotter as a sub-effigy of the toplevel effigy,
// so that it closes when the model is closed.
Effigy effigy = Configuration.findEffigy(toplevel());
PlotEffigy schedulePlotterEffigy = new PlotEffigy(effigy,
container.uniqueName("schedulePlotterEffigy"));
schedulePlotterEffigy.setPlot(plot);
schedulePlotterEffigy.identifier.setExpression("TM Schedule");
configuration.createPrimaryTableau(schedulePlotterEffigy);
plot.setVisible(true);
} catch (Throwable throwable) {
throw new InternalErrorException(object, throwable,
"Cannot create Schedule Plotter");