summaryrefslogtreecommitdiff
path: root/sources/simulator/VSSimulation.java
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2008-05-22 16:16:07 +0000
committerPaul Buetow <paul@buetow.org>2008-05-22 16:16:07 +0000
commitbf92cacd3c01a84a751e17b9ab5d42784929b86b (patch)
tree4d3f65e9273235e48e24c58e3e8347bac3c96150 /sources/simulator/VSSimulation.java
parentd16ef68f4376eec8754d86b134a2f23b4daa13fb (diff)
Expert mode quick checkbox added.
Diffstat (limited to 'sources/simulator/VSSimulation.java')
-rw-r--r--sources/simulator/VSSimulation.java35
1 files changed, 26 insertions, 9 deletions
diff --git a/sources/simulator/VSSimulation.java b/sources/simulator/VSSimulation.java
index fcdff39..5ca422a 100644
--- a/sources/simulator/VSSimulation.java
+++ b/sources/simulator/VSSimulation.java
@@ -164,12 +164,29 @@ public class VSSimulation extends JPanel {
this.add(splitPaneV, BorderLayout.CENTER);
}
+ private boolean lastExpertState;
private JPanel createToolsPanel() {
JPanel toolsPanel = new JPanel();
boolean expertMode = prefs.getBoolean("sim.mode.expert");
toolsPanel.setLayout(new BoxLayout(toolsPanel, BoxLayout.X_AXIS));
+ JCheckBox expertActiveCheckBox = new JCheckBox(prefs.getString("lang.mode.expert"));
+ expertActiveCheckBox.setSelected(expertMode);
+ expertActiveCheckBox.addChangeListener(new ChangeListener() {
+ public void stateChanged(ChangeEvent ce) {
+ AbstractButton abstractButton = (AbstractButton) ce.getSource();
+ ButtonModel buttonModel = abstractButton.getModel();
+ boolean newState = buttonModel.isSelected();
+ if (lastExpertState != newState) {
+ lastExpertState = newState;
+ prefs.setBoolean("sim.mode.expert", newState);
+ fireExpertModeChanged();
+ }
+ }
+ });
+ toolsPanel.add(expertActiveCheckBox);
+
if (expertMode) {
lamportActiveCheckBox = new JCheckBox(prefs.getString("lang.time.lamport"));
lamportActiveCheckBox.setSelected(false);
@@ -898,12 +915,12 @@ public class VSSimulation extends JPanel {
}
tabbedPane.setSelectedIndex(selectedIndex);
- /* Update the 'Variables tab' */
- if (getSelectedProcessNum() != simulationCanvas.getNumProcesses()) {
- VSProcess process = getSelectedProcess();
- VSProcessEditor editor = new VSProcessEditor(prefs, process);
- tabbedPane.setComponentAt(1, editor.getContentPane());
- }
+ /* Update the 'Variables tab' */
+ if (getSelectedProcessNum() != simulationCanvas.getNumProcesses()) {
+ VSProcess process = getSelectedProcess();
+ VSProcessEditor editor = new VSProcessEditor(prefs, process);
+ tabbedPane.setComponentAt(1, editor.getContentPane());
+ }
/* Update the tools panel */
loggingPanel.remove(1);
@@ -911,7 +928,7 @@ public class VSSimulation extends JPanel {
updateUI();
}
- public VSPrefs getPrefs() {
- return prefs;
- }
+ public VSPrefs getPrefs() {
+ return prefs;
+ }
}