diff --git a/src/enginuity/Settings.java b/src/enginuity/Settings.java
index 086b8f76..76bcf210 100644
--- a/src/enginuity/Settings.java
+++ b/src/enginuity/Settings.java
@@ -28,6 +28,7 @@ public class Settings implements Serializable {
private int userLevel = 1;
private boolean saveDebugTables = false;
private boolean displayHighTables = true;
+ private boolean valueLimitWarning = true;
private Font tableFont = new Font("Arial", Font.BOLD, 12);
private Dimension cellSize = new Dimension(42, 18);
@@ -37,6 +38,7 @@ public class Settings implements Serializable {
private Color increaseBorder = new Color(255, 0, 0);
private Color decreaseBorder = new Color(0, 0, 255);
private Color axisColor = new Color(255, 255, 255);
+ private Color warningColor = new Color(255, 0, 0);
private int tableClickCount = 2; // number of clicks to open table
public Settings() {
@@ -243,4 +245,20 @@ public class Settings implements Serializable {
public void setDisplayHighTables(boolean displayHighTables) {
this.displayHighTables = displayHighTables;
}
+
+ public boolean isValueLimitWarning() {
+ return valueLimitWarning;
+ }
+
+ public void setValueLimitWarning(boolean valueLimitWarning) {
+ this.valueLimitWarning = valueLimitWarning;
+ }
+
+ public Color getWarningColor() {
+ return warningColor;
+ }
+
+ public void setWarningColor(Color warningColor) {
+ this.warningColor = warningColor;
+ }
}
\ No newline at end of file
diff --git a/src/enginuity/maps/Scale.java b/src/enginuity/maps/Scale.java
index 23b83b26..b0ca6518 100644
--- a/src/enginuity/maps/Scale.java
+++ b/src/enginuity/maps/Scale.java
@@ -95,4 +95,20 @@ public class Scale implements Serializable {
public void setName(String name) {
this.name = name;
}
+
+ public double getMin() {
+ return min;
+ }
+
+ public void setMin(double min) {
+ this.min = min;
+ }
+
+ public double getMax() {
+ return max;
+ }
+
+ public void setMax(double max) {
+ this.max = max;
+ }
}
\ No newline at end of file
diff --git a/src/enginuity/swing/SettingsForm.form b/src/enginuity/swing/SettingsForm.form
index 95f3a7dd..903d607d 100644
--- a/src/enginuity/swing/SettingsForm.form
+++ b/src/enginuity/swing/SettingsForm.form
@@ -24,14 +24,11 @@
-
-
+
+
-
-
-
-
+
@@ -45,36 +42,17 @@
-
-
-
-
-
+
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -83,14 +61,7 @@
-
-
-
-
-
-
-
-
+
@@ -100,19 +71,15 @@
-
-
-
-
-
+
-
+
-
+
@@ -120,18 +87,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
@@ -199,7 +154,7 @@
-
+
@@ -207,50 +162,56 @@
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
+
+
+
-
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
+
+
+
+
+
+
+
+
+
-
-
+
+
@@ -275,20 +236,33 @@
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -296,23 +270,25 @@
-
-
+
+
+
+
+
+
+
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
@@ -390,13 +366,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
@@ -404,35 +398,26 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
@@ -440,7 +425,7 @@
-
+
@@ -471,14 +456,14 @@
-
+
-
+
@@ -487,7 +472,7 @@
-
+
@@ -500,6 +485,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -517,31 +541,5 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/enginuity/swing/SettingsForm.java b/src/enginuity/swing/SettingsForm.java
index 1795fe50..694cc5a4 100644
--- a/src/enginuity/swing/SettingsForm.java
+++ b/src/enginuity/swing/SettingsForm.java
@@ -29,11 +29,11 @@ public class SettingsForm extends JFrame implements MouseListener {
axisColor.addMouseListener(this);
increaseColor.addMouseListener(this);
decreaseColor.addMouseListener(this);
+ warningColor.addMouseListener(this);
btnOk.addMouseListener(this);
btnApply.addMouseListener(this);
btnCancel.addMouseListener(this);
- btnEcuDefinitionBrowse.addMouseListener(this);
btnChooseFont.addMouseListener(this);
reset.addMouseListener(this);
@@ -42,10 +42,7 @@ public class SettingsForm extends JFrame implements MouseListener {
}
private void initSettings() {
-
- // COMMENDED FOR DEF MANAGER TESTING< FIX LATER
- //ecuDefinitionFile.setText(this.settings.getEcuDefinitionFile().getAbsolutePath());
-
+
obsoleteWarning.setSelected(settings.isObsoleteWarning());
calcConflictWarning.setSelected(settings.isCalcConflictWarning());
displayHighTables.setSelected(settings.isDisplayHighTables());
@@ -70,13 +67,13 @@ public class SettingsForm extends JFrame implements MouseListener {
} else { // double click opens table
tableClickCount.setSelectedIndex(1);
}
+
+ valueLimitWarning.setSelected(settings.isValueLimitWarning());
+ warningColor.setBackground(settings.getWarningColor());
}
// //GEN-BEGIN:initComponents
private void initComponents() {
- lblEcuDef = new javax.swing.JLabel();
- ecuDefinitionFile = new javax.swing.JTextField();
- btnEcuDefinitionBrowse = new javax.swing.JButton();
obsoleteWarning = new javax.swing.JCheckBox();
calcConflictWarning = new javax.swing.JCheckBox();
debug = new javax.swing.JCheckBox();
@@ -94,6 +91,8 @@ public class SettingsForm extends JFrame implements MouseListener {
minColor = new javax.swing.JLabel();
highlightColor = new javax.swing.JLabel();
axisColor = new javax.swing.JLabel();
+ warningColor = new javax.swing.JLabel();
+ lblWarning = new javax.swing.JLabel();
jPanel3 = new javax.swing.JPanel();
lblIncrease = new javax.swing.JLabel();
increaseColor = new javax.swing.JLabel();
@@ -105,19 +104,16 @@ public class SettingsForm extends JFrame implements MouseListener {
lblCellWidth = new javax.swing.JLabel();
lblFont = new javax.swing.JLabel();
btnChooseFont = new javax.swing.JButton();
+ saveDebugTables = new javax.swing.JCheckBox();
+ displayHighTables = new javax.swing.JCheckBox();
+ valueLimitWarning = new javax.swing.JCheckBox();
jLabel1 = new javax.swing.JLabel();
tableClickCount = new javax.swing.JComboBox();
- displayHighTables = new javax.swing.JCheckBox();
- saveDebugTables = new javax.swing.JCheckBox();
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
setTitle("Enginuity Settings");
setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
setFont(new java.awt.Font("Tahoma", 0, 11));
- lblEcuDef.setText("ECU Definition File:");
-
- btnEcuDefinitionBrowse.setText("Browse");
-
obsoleteWarning.setText("Warn me when opening out of date ECU image revision");
obsoleteWarning.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
obsoleteWarning.setMargin(new java.awt.Insets(0, 0, 0, 0));
@@ -142,7 +138,7 @@ public class SettingsForm extends JFrame implements MouseListener {
reset.setText("Restore Defaults");
- jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Data Cells"));
+ jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Table Display"));
jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder("Background"));
lblAxis.setText("Axis Cell:");
@@ -168,47 +164,63 @@ public class SettingsForm extends JFrame implements MouseListener {
axisColor.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
axisColor.setOpaque(true);
+ warningColor.setBackground(new java.awt.Color(255, 0, 0));
+ warningColor.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
+ warningColor.setOpaque(true);
+
+ lblWarning.setText("Warning:");
+
org.jdesktop.layout.GroupLayout jPanel2Layout = new org.jdesktop.layout.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(
jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel2Layout.createSequentialGroup()
+ .add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
+ .add(lblWarning)
+ .add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jPanel2Layout.createSequentialGroup()
+ .add(4, 4, 4)
+ .add(lblMin))
+ .add(lblMax)))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
- .add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
- .add(lblAxis)
+ .add(jPanel2Layout.createSequentialGroup()
+ .add(maxColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 22, Short.MAX_VALUE)
.add(lblHighlight)
- .add(lblMin))
- .add(lblMax))
- .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
- .add(org.jdesktop.layout.GroupLayout.TRAILING, maxColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
- .add(org.jdesktop.layout.GroupLayout.TRAILING, minColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
- .add(org.jdesktop.layout.GroupLayout.TRAILING, highlightColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
- .add(org.jdesktop.layout.GroupLayout.TRAILING, axisColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(highlightColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .add(jPanel2Layout.createSequentialGroup()
+ .add(minColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 55, Short.MAX_VALUE)
+ .add(lblAxis)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(axisColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .add(warningColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
.addContainerGap())
);
jPanel2Layout.setVerticalGroup(
jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel2Layout.createSequentialGroup()
- .add(maxColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(lblMax)
+ .add(maxColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(highlightColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(lblHighlight))
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
- .add(minColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(lblMin)
+ .add(minColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(axisColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(lblAxis))
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
- .add(highlightColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
- .add(axisColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
- .add(jPanel2Layout.createSequentialGroup()
- .add(lblMax)
- .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
- .add(lblMin)
- .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
- .add(lblHighlight)
- .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
- .add(lblAxis))
+ .add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(warningColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(lblWarning)))
);
- jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder("Border"));
- lblIncrease.setText("Increased Value:");
+ jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder("Cell Borders"));
+ lblIncrease.setText("Increased:");
increaseColor.setBackground(new java.awt.Color(255, 0, 0));
increaseColor.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
@@ -218,82 +230,98 @@ public class SettingsForm extends JFrame implements MouseListener {
decreaseColor.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
decreaseColor.setOpaque(true);
- lblDecrease.setText("Decreased Value:");
+ lblDecrease.setText("Decreased:");
org.jdesktop.layout.GroupLayout jPanel3Layout = new org.jdesktop.layout.GroupLayout(jPanel3);
jPanel3.setLayout(jPanel3Layout);
jPanel3Layout.setHorizontalGroup(
jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
- .add(jPanel3Layout.createSequentialGroup()
- .add(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
- .add(lblDecrease)
- .add(jPanel3Layout.createSequentialGroup()
- .add(3, 3, 3)
- .add(lblIncrease)))
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel3Layout.createSequentialGroup()
+ .addContainerGap()
+ .add(lblIncrease)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
- .add(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
- .add(increaseColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
- .add(decreaseColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))
+ .add(increaseColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 59, Short.MAX_VALUE)
+ .add(lblDecrease)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(decreaseColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .addContainerGap())
);
jPanel3Layout.setVerticalGroup(
jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
- .add(jPanel3Layout.createSequentialGroup()
- .add(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
- .add(increaseColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
- .add(lblIncrease))
- .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
- .add(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
- .add(lblDecrease)
- .add(decreaseColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
- .addContainerGap(42, Short.MAX_VALUE))
+ .add(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(decreaseColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(lblDecrease)
+ .add(lblIncrease)
+ .add(increaseColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
);
- lblCellHeight.setText("Height:");
+ lblCellHeight.setText("Cell Height:");
- lblCellWidth.setText("Width:");
+ lblCellWidth.setText("Cell Width:");
lblFont.setText("Font:");
btnChooseFont.setText("Choose");
+ saveDebugTables.setText("Save changes made on tables in debug mode");
+ saveDebugTables.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
+ saveDebugTables.setMargin(new java.awt.Insets(0, 0, 0, 0));
+
+ displayHighTables.setText("List tables that are above my userlevel");
+ displayHighTables.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
+ displayHighTables.setMargin(new java.awt.Insets(0, 0, 0, 0));
+
+ valueLimitWarning.setText("Warn when values exceed limits");
+ valueLimitWarning.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
+ valueLimitWarning.setMargin(new java.awt.Insets(0, 0, 0, 0));
+
org.jdesktop.layout.GroupLayout jPanel1Layout = new org.jdesktop.layout.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
- .add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel1Layout.createSequentialGroup()
- .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
- .add(jPanel2, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 152, Short.MAX_VALUE)
- .add(jPanel1Layout.createSequentialGroup()
- .add(lblCellHeight)
- .add(10, 10, 10)
+ .add(jPanel2, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(jPanel3, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(jPanel1Layout.createSequentialGroup()
+ .addContainerGap()
+ .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
+ .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(saveDebugTables)
+ .add(displayHighTables)
+ .add(valueLimitWarning))
+ .add(org.jdesktop.layout.GroupLayout.LEADING, jPanel1Layout.createSequentialGroup()
.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
- .add(btnChooseFont, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 107, Short.MAX_VALUE)
+ .add(lblCellHeight)
+ .add(lblFont))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(btnChooseFont)
.add(jPanel1Layout.createSequentialGroup()
.add(cellHeight, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 57, Short.MAX_VALUE)))))
- .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
- .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
- .add(jPanel1Layout.createSequentialGroup()
- .add(lblCellWidth)
- .add(10, 10, 10)
- .add(cellWidth, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
- .add(jPanel3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))
- .add(jPanel1Layout.createSequentialGroup()
- .add(lblFont)
- .addContainerGap())
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 18, Short.MAX_VALUE)
+ .add(lblCellWidth)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(cellWidth, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))))
+ .addContainerGap(71, Short.MAX_VALUE))
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel1Layout.createSequentialGroup()
- .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
- .add(jPanel2, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .add(jPanel3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .add(jPanel2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(jPanel3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(19, 19, 19)
+ .add(saveDebugTables)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(displayHighTables)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(valueLimitWarning)
+ .add(16, 16, 16)
.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
- .add(lblCellHeight)
- .add(cellHeight, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(lblCellWidth)
- .add(cellWidth, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .add(cellWidth, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(lblCellHeight)
+ .add(cellHeight, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(lblFont)
@@ -304,27 +332,16 @@ public class SettingsForm extends JFrame implements MouseListener {
tableClickCount.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Single", "Double" }));
- displayHighTables.setText("List tables that are above my userlevel");
- displayHighTables.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
- displayHighTables.setMargin(new java.awt.Insets(0, 0, 0, 0));
-
- saveDebugTables.setText("Save changes made on tables in debug mode");
- saveDebugTables.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
- saveDebugTables.setMargin(new java.awt.Insets(0, 0, 0, 0));
-
org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
- .add(layout.createSequentialGroup()
- .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
- .add(layout.createSequentialGroup()
- .add(10, 10, 10)
- .add(ecuDefinitionFile, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 257, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
- .add(btnEcuDefinitionBrowse)
- .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED))
- .add(layout.createSequentialGroup()
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup()
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
+ .add(org.jdesktop.layout.GroupLayout.LEADING, layout.createSequentialGroup()
+ .addContainerGap()
+ .add(jPanel1, 0, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+ .add(org.jdesktop.layout.GroupLayout.LEADING, layout.createSequentialGroup()
.addContainerGap()
.add(reset)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 34, Short.MAX_VALUE)
@@ -333,42 +350,22 @@ public class SettingsForm extends JFrame implements MouseListener {
.add(btnOk)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(btnCancel))
- .add(layout.createSequentialGroup()
+ .add(org.jdesktop.layout.GroupLayout.LEADING, layout.createSequentialGroup()
.addContainerGap()
- .add(jPanel1, 0, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
- .add(layout.createSequentialGroup()
- .addContainerGap()
- .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
- .add(calcConflictWarning)
- .add(obsoleteWarning)
- .add(layout.createSequentialGroup()
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
+ .add(org.jdesktop.layout.GroupLayout.LEADING, calcConflictWarning)
+ .add(org.jdesktop.layout.GroupLayout.LEADING, obsoleteWarning)
+ .add(org.jdesktop.layout.GroupLayout.LEADING, layout.createSequentialGroup()
.add(tableClickCount, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
- .add(jLabel1))))
- .add(layout.createSequentialGroup()
- .addContainerGap()
- .add(lblEcuDef))
- .add(layout.createSequentialGroup()
- .addContainerGap()
- .add(displayHighTables))
- .add(layout.createSequentialGroup()
- .addContainerGap()
- .add(saveDebugTables))
- .add(layout.createSequentialGroup()
- .addContainerGap()
- .add(debug)))
+ .add(jLabel1))
+ .add(org.jdesktop.layout.GroupLayout.LEADING, debug))))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.addContainerGap()
- .add(lblEcuDef)
- .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
- .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
- .add(btnEcuDefinitionBrowse)
- .add(ecuDefinitionFile, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
- .add(28, 28, 28)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(jLabel1)
.add(tableClickCount, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 18, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
@@ -377,19 +374,15 @@ public class SettingsForm extends JFrame implements MouseListener {
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(calcConflictWarning)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
- .add(displayHighTables)
- .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
- .add(saveDebugTables)
- .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(debug)
- .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 26, Short.MAX_VALUE)
+ .add(17, 17, 17)
.add(jPanel1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
- .add(34, 34, 34)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 34, Short.MAX_VALUE)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(btnCancel)
- .add(btnOk)
.add(btnApply)
- .add(reset))
+ .add(reset)
+ .add(btnOk))
.addContainerGap())
);
pack();
@@ -438,6 +431,13 @@ public class SettingsForm extends JFrame implements MouseListener {
decreaseColor.setBackground(color);
}
}
+ else if (e.getSource() == warningColor) {
+ Color color = JColorChooser.showDialog(this.getContentPane(),
+ "Warning Color", settings.getWarningColor());
+ if (color != null) {
+ warningColor.setBackground(color);
+ }
+ }
else if (e.getSource() == btnApply) {
applySettings();
}
@@ -448,16 +448,7 @@ public class SettingsForm extends JFrame implements MouseListener {
else if (e.getSource() == btnCancel) {
this.dispose();
}
- else if (e.getSource() == btnEcuDefinitionBrowse) {
- JFileChooser fc = new JFileChooser(new File(ecuDefinitionFile
- .getText()));
- fc.setFileFilter(new XMLFilter());
- if (fc.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
- ecuDefinitionFile.setText(fc.getSelectedFile()
- .getAbsolutePath());
- }
- }
else if (e.getSource() == btnChooseFont) {
JFontChooser fc = new JFontChooser(this);
fc.setLocationRelativeTo(this);
@@ -484,9 +475,7 @@ public class SettingsForm extends JFrame implements MouseListener {
} catch (NumberFormatException ex) {
// number formatted imporperly, reset
cellWidth.setText((int)(settings.getCellSize().getWidth())+"");
- }
-
- settings.addEcuDefinitionFile(new File(ecuDefinitionFile.getText()));
+ }
settings.setObsoleteWarning(obsoleteWarning.isSelected());
settings.setCalcConflictWarning(calcConflictWarning.isSelected());
@@ -512,6 +501,9 @@ public class SettingsForm extends JFrame implements MouseListener {
settings.setTableClickCount(2);
}
+ settings.setValueLimitWarning(valueLimitWarning.isSelected());
+ settings.setWarningColor(warningColor.getBackground());
+
parent.setSettings(settings);
}
@@ -525,7 +517,6 @@ public class SettingsForm extends JFrame implements MouseListener {
private javax.swing.JButton btnApply;
private javax.swing.JButton btnCancel;
private javax.swing.JButton btnChooseFont;
- private javax.swing.JButton btnEcuDefinitionBrowse;
private javax.swing.JButton btnOk;
private javax.swing.JCheckBox calcConflictWarning;
private javax.swing.JTextField cellHeight;
@@ -533,7 +524,6 @@ public class SettingsForm extends JFrame implements MouseListener {
private javax.swing.JCheckBox debug;
private javax.swing.JLabel decreaseColor;
private javax.swing.JCheckBox displayHighTables;
- private javax.swing.JTextField ecuDefinitionFile;
private javax.swing.JLabel highlightColor;
private javax.swing.JLabel increaseColor;
private javax.swing.JLabel jLabel1;
@@ -544,18 +534,20 @@ public class SettingsForm extends JFrame implements MouseListener {
private javax.swing.JLabel lblCellHeight;
private javax.swing.JLabel lblCellWidth;
private javax.swing.JLabel lblDecrease;
- private javax.swing.JLabel lblEcuDef;
private javax.swing.JLabel lblFont;
private javax.swing.JLabel lblHighlight;
private javax.swing.JLabel lblIncrease;
private javax.swing.JLabel lblMax;
private javax.swing.JLabel lblMin;
+ private javax.swing.JLabel lblWarning;
private javax.swing.JLabel maxColor;
private javax.swing.JLabel minColor;
private javax.swing.JCheckBox obsoleteWarning;
private javax.swing.JButton reset;
private javax.swing.JCheckBox saveDebugTables;
private javax.swing.JComboBox tableClickCount;
+ private javax.swing.JCheckBox valueLimitWarning;
+ private javax.swing.JLabel warningColor;
// End of variables declaration//GEN-END:variables
}
\ No newline at end of file
diff --git a/src/enginuity/xml/DOMRomUnmarshaller.java b/src/enginuity/xml/DOMRomUnmarshaller.java
index d16b7e63..c83e8823 100644
--- a/src/enginuity/xml/DOMRomUnmarshaller.java
+++ b/src/enginuity/xml/DOMRomUnmarshaller.java
@@ -373,6 +373,8 @@ public class DOMRomUnmarshaller {
scale.setExpression(unmarshallAttribute(scaleNode, "expression", scale.getExpression()));
scale.setByteExpression(unmarshallAttribute(scaleNode, "to_byte", scale.getByteExpression()));
scale.setFormat(unmarshallAttribute(scaleNode, "format", "#"));
+ scale.setMax(Double.parseDouble(unmarshallAttribute(scaleNode, "max", "0")));
+ scale.setMin(Double.parseDouble(unmarshallAttribute(scaleNode, "min", "0")));
// get coarse increment with new attribute name (coarseincrement), else look for old (increment)
scale.setCoarseIncrement(Double.parseDouble(unmarshallAttribute(scaleNode, "coarseincrement",
diff --git a/src/enginuity/xml/DOMSettingsBuilder.java b/src/enginuity/xml/DOMSettingsBuilder.java
index 5aa66df6..5b4e240f 100644
--- a/src/enginuity/xml/DOMSettingsBuilder.java
+++ b/src/enginuity/xml/DOMSettingsBuilder.java
@@ -123,7 +123,12 @@ public class DOMSettingsBuilder {
// display tables higher than userlevel
IIOMetadataNode displayHighTables = new IIOMetadataNode("displayhightables");
displayHighTables.setAttribute("value", settings.isDisplayHighTables()+"");
- options.appendChild(displayHighTables);
+ options.appendChild(displayHighTables);
+
+ // warning when exceeding limits
+ IIOMetadataNode valueLimitWarning = new IIOMetadataNode("valuelimitwarning");
+ valueLimitWarning.setAttribute("value", settings.isValueLimitWarning()+"");
+ options.appendChild(valueLimitWarning);
return options;
}
@@ -182,6 +187,12 @@ public class DOMSettingsBuilder {
axis.setAttribute("g", settings.getAxisColor().getGreen()+"");
axis.setAttribute("b", settings.getAxisColor().getBlue()+"");
colors.appendChild(axis);
+ // warning cells
+ IIOMetadataNode warning = new IIOMetadataNode("warning");
+ warning.setAttribute("r", settings.getWarningColor().getRed()+"");
+ warning.setAttribute("g", settings.getWarningColor().getGreen()+"");
+ warning.setAttribute("b", settings.getWarningColor().getBlue()+"");
+ colors.appendChild(warning);
tableDisplay.appendChild(colors);
diff --git a/src/enginuity/xml/DOMSettingsUnmarshaller.java b/src/enginuity/xml/DOMSettingsUnmarshaller.java
index 979fb364..f95cf3fc 100644
--- a/src/enginuity/xml/DOMSettingsUnmarshaller.java
+++ b/src/enginuity/xml/DOMSettingsUnmarshaller.java
@@ -112,6 +112,9 @@ public class DOMSettingsUnmarshaller {
} else if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equalsIgnoreCase("displayhightables")) {
settings.setDisplayHighTables(Boolean.parseBoolean(unmarshallAttribute(n, "value", "false")));
+ } else if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equalsIgnoreCase("valuelimitwarning")) {
+ settings.setValueLimitWarning(Boolean.parseBoolean(unmarshallAttribute(n, "value", "true")));
+
}
}
return settings;
@@ -134,7 +137,8 @@ public class DOMSettingsUnmarshaller {
unmarshallAttribute(n, "y", 18)));
} else if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equalsIgnoreCase("colors")) {
- settings = unmarshallColors(n, settings);
+ settings = unmarshallColors(n, settings);
+
}
}
return settings;
@@ -148,17 +152,26 @@ public class DOMSettingsUnmarshaller {
n = nodes.item(i);
if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equalsIgnoreCase("max")) {
- settings.setMaxColor(unmarshallColor(n));
+ settings.setMaxColor(unmarshallColor(n));
+
} else if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equalsIgnoreCase("min")) {
- settings.setMinColor(unmarshallColor(n));
+ settings.setMinColor(unmarshallColor(n));
+
} else if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equalsIgnoreCase("highlight")) {
- settings.setHighlightColor(unmarshallColor(n));
+ settings.setHighlightColor(unmarshallColor(n));
+
} else if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equalsIgnoreCase("increaseborder")) {
- settings.setIncreaseBorder(unmarshallColor(n));
+ settings.setIncreaseBorder(unmarshallColor(n));
+
} else if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equalsIgnoreCase("decreaseborder")) {
- settings.setDecreaseBorder(unmarshallColor(n));
+ settings.setDecreaseBorder(unmarshallColor(n));
+
} else if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equalsIgnoreCase("axis")) {
- settings.setAxisColor(unmarshallColor(n));
+ settings.setAxisColor(unmarshallColor(n));
+
+ } else if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equalsIgnoreCase("warning")) {
+ settings.setWarningColor(unmarshallColor(n));
+
}
}
return settings;