diff options
| author | Paul Buetow <paul@buetow.org> | 2008-06-02 00:21:43 +0000 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2008-06-02 00:21:43 +0000 |
| commit | 378c2674fc704b2a6bbf0e6a01b721a7aea7c2e2 (patch) | |
| tree | ae228c2fb8c1387d2667322f60a649032c52c152 /sources/simulator | |
| parent | a24f52761a623afa3c041b7823004952d8c5286e (diff) | |
saveing seems work, but may have bugs
Diffstat (limited to 'sources/simulator')
| -rw-r--r-- | sources/simulator/VSSimulator.java | 5 | ||||
| -rw-r--r-- | sources/simulator/VSSimulatorCanvas.java | 4 | ||||
| -rw-r--r-- | sources/simulator/VSSimulatorFrame.java | 51 |
3 files changed, 39 insertions, 21 deletions
diff --git a/sources/simulator/VSSimulator.java b/sources/simulator/VSSimulator.java index f376719..4323190 100644 --- a/sources/simulator/VSSimulator.java +++ b/sources/simulator/VSSimulator.java @@ -402,7 +402,7 @@ public class VSSimulator extends JPanel implements VSSerializable { this.globalTextFields = new ArrayList<String>(); /* Not null if init has been called from the deserialization */ - if (logging == null) + if (this.logging == null) this.logging = new VSLogging(); logging.logg(prefs.getString("lang.simulator.new")); @@ -443,7 +443,7 @@ public class VSSimulator extends JPanel implements VSSerializable { splitPaneV = new JSplitPane(); /* Not null if init has been called from the deserialization */ - if (simulatorCanvas == null) + if (this.simulatorCanvas == null) simulatorCanvas = new VSSimulatorCanvas(prefs, this, logging); taskManager = simulatorCanvas.getTaskManager(); @@ -873,6 +873,7 @@ public class VSSimulator extends JPanel implements VSSerializable { for (VSProcess process : processes) { VSTask task = createTask.createTask(process, time, localTasks); + System.out.println(task); taskManager.addTask(task, VSTaskManager.PROGRAMMED); if (selectedProcess == null || diff --git a/sources/simulator/VSSimulatorCanvas.java b/sources/simulator/VSSimulatorCanvas.java index cfc6549..1d12a06 100644 --- a/sources/simulator/VSSimulatorCanvas.java +++ b/sources/simulator/VSSimulatorCanvas.java @@ -495,11 +495,11 @@ public class VSSimulatorCanvas extends Canvas this.messageLinesToRemove = new LinkedList<VSMessageLine>(); /* May be not null if called from deserialization */ - if (taskManager == null) + if (this.taskManager == null) this.taskManager = new VSTaskManager(prefs, this); /* May be not null if called from deserialization */ - if (processes == null) { + if (this.processes == null) { this.processes = new ArrayList<VSProcess>(); numProcesses = prefs.getInteger("sim.process.num"); diff --git a/sources/simulator/VSSimulatorFrame.java b/sources/simulator/VSSimulatorFrame.java index aff8787..c538284 100644 --- a/sources/simulator/VSSimulatorFrame.java +++ b/sources/simulator/VSSimulatorFrame.java @@ -145,7 +145,8 @@ public class VSSimulatorFrame extends VSFrame { } else if (sourceText.equals( finalPrefs.getString("lang.open"))) { - + pauseCurrentSimulator(); + resetCurrentSimulator(); VSSerialize serialize = new VSSerialize(); VSSimulator simulator = serialize.openSimulator( VSSerialize.STANDARD_FILENAME, @@ -155,6 +156,8 @@ public class VSSimulatorFrame extends VSFrame { } else if (sourceText.equals( finalPrefs.getString("lang.save"))) { + pauseCurrentSimulator(); + resetCurrentSimulator(); VSSerialize serialize = new VSSerialize(); serialize.saveSimulator(VSSerialize.STANDARD_FILENAME, currentSimulator); @@ -180,25 +183,11 @@ public class VSSimulatorFrame extends VSFrame { } else if (sourceText.equals( finalPrefs.getString("lang.pause"))) { - VSMenuItemStates menuItemState = - currentSimulator.getMenuItemStates(); - menuItemState.setStart(true); - menuItemState.setPause(false); - menuItemState.setReset(true); - menuItemState.setReplay(true); - currentSimulator.getSimulatorCanvas().pause(); - updateSimulatorMenu(); + pauseCurrentSimulator(); } else if (sourceText.equals( finalPrefs.getString("lang.reset"))) { - VSMenuItemStates menuItemState = - currentSimulator.getMenuItemStates(); - menuItemState.setStart(true); - menuItemState.setPause(false); - menuItemState.setReset(false); - menuItemState.setReplay(false); - currentSimulator.getSimulatorCanvas().reset(); - updateSimulatorMenu(); + resetCurrentSimulator(); } else if (sourceText.equals( finalPrefs.getString("lang.replay"))) { @@ -532,6 +521,34 @@ public class VSSimulatorFrame extends VSFrame { } /** + * Resets the current simulator + */ + public void resetCurrentSimulator() { + VSMenuItemStates menuItemState = + currentSimulator.getMenuItemStates(); + menuItemState.setStart(true); + menuItemState.setPause(false); + menuItemState.setReset(false); + menuItemState.setReplay(false); + currentSimulator.getSimulatorCanvas().reset(); + updateSimulatorMenu(); + } + + /** + * Pauses the current simulator + */ + public void pauseCurrentSimulator() { + VSMenuItemStates menuItemState = + currentSimulator.getMenuItemStates(); + menuItemState.setStart(true); + menuItemState.setPause(false); + menuItemState.setReset(true); + menuItemState.setReplay(true); + currentSimulator.getSimulatorCanvas().pause(); + updateSimulatorMenu(); + } + + /** * Gets the image icon. * * @param name the name |
