diff options
| author | Paul Buetow <paul@buetow.org> | 2008-06-14 01:30:24 +0000 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2008-06-14 01:30:24 +0000 |
| commit | 02eb6a4ff881ad9878a1105c6737e1583c94ed7e (patch) | |
| tree | e25aa5c104b90145be1b7550a3cea2a797ae5c0d /sources | |
| parent | faaadb9c546e376dd8e8dd6553017d334aa0e0c4 (diff) | |
if creating a new simulator frame, it has no simulation loaded. you can either
create a new simulation or load an old one using the 'File' menu!
Diffstat (limited to 'sources')
| -rw-r--r-- | sources/prefs/VSPrefs.java | 2 | ||||
| -rw-r--r-- | sources/prefs/editors/VSAbstractEditor.java | 4 | ||||
| -rw-r--r-- | sources/simulator/VSMain.java | 11 | ||||
| -rw-r--r-- | sources/simulator/VSSimulatorFrame.java | 82 |
4 files changed, 64 insertions, 35 deletions
diff --git a/sources/prefs/VSPrefs.java b/sources/prefs/VSPrefs.java index 413bc46..2861bfc 100644 --- a/sources/prefs/VSPrefs.java +++ b/sources/prefs/VSPrefs.java @@ -885,7 +885,7 @@ public class VSPrefs implements VSSerializable { */ public synchronized void initString(String key, String val) { //if (!stringPrefs.containsKey(key)) - stringPrefs.put(key, val); + stringPrefs.put(key, val); } /** diff --git a/sources/prefs/editors/VSAbstractEditor.java b/sources/prefs/editors/VSAbstractEditor.java index fe0e7e4..6640a07 100644 --- a/sources/prefs/editors/VSAbstractEditor.java +++ b/sources/prefs/editors/VSAbstractEditor.java @@ -233,7 +233,7 @@ public abstract class VSAbstractEditor implements ActionListener { booleanKeys = filterKeys(prefsToEdit.getBooleanKeySet()); stringKeys = filterKeys(prefsToEdit.getStringKeySet()); - fillEditPanelFront(prefsToEdit); + fillEditPanelFront(prefsToEdit); fillEditPanel(prefsToEdit); } @@ -544,7 +544,7 @@ public abstract class VSAbstractEditor implements ActionListener { * @param prefsToEdit the prefs to edit */ protected void fillEditPanelFront(VSPrefs prefsToEdit) { - } + } /** * Fills the edit panel. diff --git a/sources/simulator/VSMain.java b/sources/simulator/VSMain.java index e6e0906..aaddea9 100644 --- a/sources/simulator/VSMain.java +++ b/sources/simulator/VSMain.java @@ -69,11 +69,12 @@ public class VSMain { private void init(VSPrefs prefs, Component relativeTo) { VSSimulatorFrame simulatorFrame = new VSSimulatorFrame(prefs, relativeTo); - - VSSimulatorEditor editor = - new VSSimulatorEditor(prefs, simulatorFrame, - VSSimulatorEditor.OPENED_NEW_WINDOW); - new VSEditorFrame(prefs, relativeTo, editor); + /* + VSSimulatorEditor editor = + new VSSimulatorEditor(prefs, simulatorFrame, + VSSimulatorEditor.OPENED_NEW_WINDOW); + new VSEditorFrame(prefs, relativeTo, editor); + */ } /** diff --git a/sources/simulator/VSSimulatorFrame.java b/sources/simulator/VSSimulatorFrame.java index fde7996..beac858 100644 --- a/sources/simulator/VSSimulatorFrame.java +++ b/sources/simulator/VSSimulatorFrame.java @@ -76,6 +76,15 @@ public class VSSimulatorFrame extends VSFrame { /** The menu file. */ private JMenu menuFile; + /** The close item. */ + private JMenuItem closeItem; + + /** The save item. */ + private JMenuItem saveItem; + + /** The save as item. */ + private JMenuItem saveAsItem; + /** The menu simulator. */ private JMenu menuSimulator; @@ -228,7 +237,10 @@ public class VSSimulatorFrame extends VSFrame { resetButton.setEnabled(false); startButton.setEnabled(false); menuEdit.setEnabled(false); - menuFile.setEnabled(false); + //menuFile.setEnabled(false); + closeItem.setEnabled(false); + saveItem.setEnabled(false); + saveAsItem.setEnabled(false); menuSimulator.setEnabled(false); } @@ -250,13 +262,13 @@ public class VSSimulatorFrame extends VSFrame { menuItem.addActionListener(actionListener); menuFile.add(menuItem); - menuItem = new JMenuItem( + closeItem = new JMenuItem( prefs.getString("lang.simulator.close")); - menuItem.setAccelerator(KeyStroke.getKeyStroke( - prefs.getInteger("keyevent.close"), - ActionEvent.ALT_MASK)); - menuItem.addActionListener(actionListener); - menuFile.add(menuItem); + closeItem.setAccelerator(KeyStroke.getKeyStroke( + prefs.getInteger("keyevent.close"), + ActionEvent.ALT_MASK)); + closeItem.addActionListener(actionListener); + menuFile.add(closeItem); menuFile.addSeparator(); @@ -277,19 +289,19 @@ public class VSSimulatorFrame extends VSFrame { menuItem.addActionListener(actionListener); menuFile.add(menuItem); - menuItem = new JMenuItem(prefs.getString("lang.save")); - menuItem.setAccelerator(KeyStroke.getKeyStroke( + saveItem = new JMenuItem(prefs.getString("lang.save")); + saveItem.setAccelerator(KeyStroke.getKeyStroke( prefs.getInteger("keyevent.save"), ActionEvent.ALT_MASK)); - menuItem.addActionListener(actionListener); - menuFile.add(menuItem); + saveItem.addActionListener(actionListener); + menuFile.add(saveItem); - menuItem = new JMenuItem(prefs.getString("lang.saveas")); - menuItem.setAccelerator(KeyStroke.getKeyStroke( - prefs.getInteger("keyevent.saveas"), - ActionEvent.ALT_MASK)); - menuItem.addActionListener(actionListener); - menuFile.add(menuItem); + saveAsItem = new JMenuItem(prefs.getString("lang.saveas")); + saveAsItem.setAccelerator(KeyStroke.getKeyStroke( + prefs.getInteger("keyevent.saveas"), + ActionEvent.ALT_MASK)); + saveAsItem.addActionListener(actionListener); + menuFile.add(saveAsItem); menuFile.addSeparator(); @@ -384,9 +396,11 @@ public class VSSimulatorFrame extends VSFrame { public void stateChanged(ChangeEvent ce) { JTabbedPane pane = (JTabbedPane) ce.getSource(); currentSimulator = (VSSimulator) pane.getSelectedComponent(); - currentSimulator.getSimulatorCanvas().paint(); - updateEditMenu(); - updateSimulatorMenu(); + if (currentSimulator != null) { + currentSimulator.getSimulatorCanvas().paint(); + updateEditMenu(); + updateSimulatorMenu(); + } } }); @@ -495,7 +509,10 @@ public class VSSimulatorFrame extends VSFrame { if (simulators.size() == 1) { menuEdit.setEnabled(true); - menuFile.setEnabled(true); + //menuFile.setEnabled(true); + closeItem.setEnabled(true); + saveItem.setEnabled(true); + saveAsItem.setEnabled(true); menuSimulator.setEnabled(true); } } @@ -507,13 +524,21 @@ public class VSSimulatorFrame extends VSFrame { */ public void removeSimulator(VSSimulator simulatorToRemove) { if (simulators.size() == 1) { - dispose(); - - } else { - simulators.remove(simulatorToRemove); - tabbedPane.remove(simulatorToRemove); - simulatorToRemove.getSimulatorCanvas().stopThread(); + pauseButton.setEnabled(false); + replayButton.setEnabled(false); + resetButton.setEnabled(false); + startButton.setEnabled(false); + menuEdit.setEnabled(false); + //menuFile.setEnabled(false); + closeItem.setEnabled(false); + saveItem.setEnabled(false); + saveAsItem.setEnabled(false); + menuSimulator.setEnabled(false); } + + simulators.remove(simulatorToRemove); + tabbedPane.remove(simulatorToRemove); + simulatorToRemove.getSimulatorCanvas().stopThread(); } /** @@ -536,6 +561,9 @@ public class VSSimulatorFrame extends VSFrame { * Resets the current simulator */ public void resetCurrentSimulator() { + if (currentSimulator == null) + return; + VSMenuItemStates menuItemState = currentSimulator.getMenuItemStates(); menuItemState.setStart(true); |
