private void startConsole(DefaultMutableTreeNode node) {
public void startConsole() { DefaultMutableTreeNode node = getSelectedNode();
  private void startConsole(DefaultMutableTreeNode node) {    Object o = node.getUserObject();    Experiment experiment;    if (o instanceof SocietyComponent) {      SocietyComponent sc = (SocietyComponent) o;      String name = "Temp Experiment for " + sc.getSocietyName();      name = experimentNames.generateName(name);      experiment = new Experiment(name,				  new SocietyComponent[] {sc},				  new RecipeComponent[0]);      DefaultMutableTreeNode parent = 	(DefaultMutableTreeNode) node.getParent();      DefaultMutableTreeNode newNode =	new DefaultMutableTreeNode(experiment, false);      model.insertNodeInto(newNode, parent, parent.getChildCount());      experimentNames.add(name);      experiment.addModificationListener(myModificationListener);      workspace.setSelection(newNode);    } else if (o instanceof Experiment) {      experiment = (Experiment) o;    } else {      return;    }    // In addition, its possible there are unbound properties!    if (experiment.hasUnboundProperties()) {      // can't run it without setting these      csmart.runExperimentBuilder(experiment, false, true);    }    // At this point the user may not have created a configuration.    // So they really can't run the console quite yet.    // We'll create a default configuration for them    if (! experiment.hasConfiguration())      experiment.createDefaultConfiguration();    // Start up the console on the experiment    csmart.runConsole(experiment);  }