summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sources/prefs/editors/VSSimulationEditor.java13
-rw-r--r--sources/simulator/VSSimulatorFrame.java1
2 files changed, 9 insertions, 5 deletions
diff --git a/sources/prefs/editors/VSSimulationEditor.java b/sources/prefs/editors/VSSimulationEditor.java
index ca43962..e274c0b 100644
--- a/sources/prefs/editors/VSSimulationEditor.java
+++ b/sources/prefs/editors/VSSimulationEditor.java
@@ -50,11 +50,12 @@ public class VSSimulationEditor extends VSBetterEditor {
if (actionCommand.equals(prefs.getString("lang.takeover"))) {
savePrefs();
- if (expertModeChanged()) {
- if (simulation != null)
- simulation.fireExpertModeChanged();
- }
- simulation.updateFromPrefs();
+
+ if (simulation != null) {
+ if (expertModeChanged())
+ simulation.fireExpertModeChanged();
+ simulation.updateFromPrefs();
+ }
} else if (actionCommand.equals(prefs.getString("lang.cancel"))) {
if (!dontStartNewSimulation)
@@ -68,6 +69,8 @@ public class VSSimulationEditor extends VSBetterEditor {
}
if (!dontStartNewSimulation)
simulatorFrame.addSimulation(new VSSimulation(prefsToEdit, simulatorFrame));
+ else if (simulation != null)
+ simulation.updateFromPrefs();
} else {
super.actionPerformed(e);
diff --git a/sources/simulator/VSSimulatorFrame.java b/sources/simulator/VSSimulatorFrame.java
index 0a5ae6a..dd52ed8 100644
--- a/sources/simulator/VSSimulatorFrame.java
+++ b/sources/simulator/VSSimulatorFrame.java
@@ -198,6 +198,7 @@ public class VSSimulatorFrame extends VSFrame implements ActionListener {
globalPrefsItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
VSPrefs simulationPrefs = currentSimulation.getPrefs();
+ VSSimulationEditor.TAKEOVER_BUTTON = true;
VSSimulationEditor simulationEditor = new VSSimulationEditor(
simulationPrefs, VSSimulatorFrame.this, currentSimulation);
new VSEditorFrame(prefs, VSSimulatorFrame.this, simulationEditor);