Pausing isn't a simulation concept: it's a graphical user interface concept. That is, if you ran the simulation on the command line minus the GUI, pausing doesn't even exist as a notion.
Probably the easiest thing for you to do is to add a Steppable into your GUIstate's minischedule. I'd do this in your GUIState.start() method.
GUIState gui = ...;
final GUIState gui2 = gui;
Steppable step = new Steppable()
{
public void step(SimState state)
{
boolean test = ... ; // this should be set to true if you wish to pause
if (test) SwingUtilities.invokeLater(new Runnable()
{
public void run()
{
(Console)(gui2.controller)).pressPause();
}
});
}
};
>> There is already a method for killing a simulation. It's called GUIState.kill().
> Okay, and is there also a method for programmatically pausing a simulation ?
>
> axel