mirror of https://github.com/rusefi/RomRaider.git
overlay of live log data added to tables
git-svn-id: http://svn.3splooges.com/romraider-arch/trunk@301 d2e2e1cd-ba16-0410-be16-b7c4453c7c2d
This commit is contained in:
parent
6bae0f6c77
commit
25d0d315c9
File diff suppressed because it is too large
Load Diff
35368
ecu_defs/ecu_defs.xml
35368
ecu_defs/ecu_defs.xml
File diff suppressed because it is too large
Load Diff
15
logger.xml
15
logger.xml
|
@ -21,6 +21,7 @@
|
|||
</address>
|
||||
<conversions>
|
||||
<conversion units="C" expr="x-40" format="0"/>
|
||||
<conversion units="F" expr="32+9*(x-40)/5" format="0"/>
|
||||
</conversions>
|
||||
</parameter>
|
||||
|
||||
|
@ -163,7 +164,7 @@
|
|||
<byte>0x00001C</byte>
|
||||
</address>
|
||||
<conversions>
|
||||
<conversion units="V" expr="x*8/100" format="0.0"/>
|
||||
<conversion units="V" expr="x*8/100" format="0.00"/>
|
||||
</conversions>
|
||||
</parameter>
|
||||
|
||||
|
@ -172,7 +173,7 @@
|
|||
<byte>0x00001D</byte>
|
||||
</address>
|
||||
<conversions>
|
||||
<conversion units="V" expr="x/50" format="0.0"/>
|
||||
<conversion units="V" expr="x/50" format="0.00"/>
|
||||
</conversions>
|
||||
</parameter>
|
||||
|
||||
|
@ -181,7 +182,7 @@
|
|||
<byte>0x00001E</byte>
|
||||
</address>
|
||||
<conversions>
|
||||
<conversion units="V" expr="x/50" format="0.0"/>
|
||||
<conversion units="V" expr="x/50" format="0.00"/>
|
||||
</conversions>
|
||||
</parameter>
|
||||
|
||||
|
@ -190,7 +191,7 @@
|
|||
<byte>0x00001F</byte>
|
||||
</address>
|
||||
<conversions>
|
||||
<conversion units="V" expr="x/50" format="0.0"/>
|
||||
<conversion units="V" expr="x/50" format="0.00"/>
|
||||
</conversions>
|
||||
</parameter>
|
||||
|
||||
|
@ -620,7 +621,7 @@
|
|||
<byte>0x0000D2</byte>
|
||||
</address>
|
||||
<conversions>
|
||||
<conversion units="V" expr="x/50" format="0.0"/>
|
||||
<conversion units="V" expr="x/50" format="0.00"/>
|
||||
</conversions>
|
||||
</parameter>
|
||||
|
||||
|
@ -629,7 +630,7 @@
|
|||
<byte>0x0000D3</byte>
|
||||
</address>
|
||||
<conversions>
|
||||
<conversion units="V" expr="x/50" format="0.0"/>
|
||||
<conversion units="V" expr="x/50" format="0.00"/>
|
||||
</conversions>
|
||||
</parameter>
|
||||
|
||||
|
@ -665,7 +666,7 @@
|
|||
<byte>0x0000FB</byte>
|
||||
</address>
|
||||
<conversions>
|
||||
<conversion units="V" expr="x*8/100" format="0.0"/>
|
||||
<conversion units="V" expr="x*8/100" format="0.00"/>
|
||||
</conversions>
|
||||
</parameter>
|
||||
|
||||
|
|
|
@ -20,6 +20,7 @@ import enginuity.logger.ui.handler.DataUpdateHandlerManagerImpl;
|
|||
import enginuity.logger.ui.handler.FileUpdateHandler;
|
||||
import enginuity.logger.ui.handler.GraphUpdateHandler;
|
||||
import enginuity.logger.ui.handler.LiveDataUpdateHandler;
|
||||
import enginuity.logger.ui.handler.TableUpdateHandler;
|
||||
import static enginuity.util.ParamChecker.checkNotNull;
|
||||
|
||||
import javax.swing.*;
|
||||
|
@ -175,6 +176,7 @@ public final class EcuLogger extends JFrame implements WindowListener, PropertyC
|
|||
private void initParameterUpdateHandlers() {
|
||||
dataHandlerManager.addHandler(liveDataUpdateHandler);
|
||||
dataHandlerManager.addHandler(fileUpdateHandler);
|
||||
dataHandlerManager.addHandler(TableUpdateHandler.getInstance());
|
||||
graphHandlerManager.addHandler(graphUpdateHandler);
|
||||
graphHandlerManager.addHandler(fileUpdateHandler);
|
||||
dashboardHandlerManager.addHandler(dashboardUpdateHandler);
|
||||
|
|
|
@ -0,0 +1,94 @@
|
|||
package enginuity.logger.ui.handler;
|
||||
|
||||
import enginuity.logger.definition.EcuData;
|
||||
import enginuity.logger.definition.EcuDataConvertor;
|
||||
import enginuity.maps.Table;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.StringTokenizer;
|
||||
|
||||
public final class TableUpdateHandler implements DataUpdateHandler {
|
||||
private static final TableUpdateHandler INSTANCE = new TableUpdateHandler();
|
||||
private final Map<String, List<TableWrapper>> tables = Collections.synchronizedMap(new HashMap<String, List<TableWrapper>>());
|
||||
|
||||
private TableUpdateHandler() {
|
||||
}
|
||||
|
||||
public void registerData(EcuData ecuData) {
|
||||
}
|
||||
|
||||
public void handleDataUpdate(EcuData ecuData, byte[] value, long timestamp) {
|
||||
List<TableWrapper> wrappers = tables.get(ecuData.getId());
|
||||
if (wrappers != null && !wrappers.isEmpty()) {
|
||||
EcuDataConvertor[] convertors = ecuData.getConvertors();
|
||||
for (TableWrapper wrapper : wrappers) {
|
||||
try {
|
||||
EcuDataConvertor convertor = convertors[wrapper.getLogParamConvertorIndex()];
|
||||
wrapper.getTable().setLiveValue(convertor.convert(value));
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void deregisterData(EcuData ecuData) {
|
||||
}
|
||||
|
||||
public void cleanUp() {
|
||||
}
|
||||
|
||||
public void registerTable(Table table) {
|
||||
TableWrapper wrapper = new TableWrapper(table);
|
||||
String logParamId = wrapper.getLogParamId();
|
||||
if (!tables.containsKey(logParamId)) {
|
||||
tables.put(logParamId, new ArrayList<TableWrapper>());
|
||||
}
|
||||
tables.get(logParamId).add(wrapper);
|
||||
}
|
||||
|
||||
public static TableUpdateHandler getInstance() {
|
||||
return INSTANCE;
|
||||
}
|
||||
|
||||
private static final class TableWrapper {
|
||||
private final Table table;
|
||||
private String logParamId;
|
||||
private int logParamConvertorIndex;
|
||||
|
||||
public TableWrapper(Table table) {
|
||||
this.table = table;
|
||||
if (table.getLogParam() != null) {
|
||||
StringTokenizer st = new StringTokenizer(table.getLogParam(), ":");
|
||||
if (st.hasMoreTokens()) {
|
||||
logParamId = st.nextToken();
|
||||
if (st.hasMoreTokens()) {
|
||||
try {
|
||||
logParamConvertorIndex = Integer.parseInt(st.nextToken());
|
||||
} catch (NumberFormatException e) {
|
||||
logParamConvertorIndex = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public Table getTable() {
|
||||
return table;
|
||||
}
|
||||
|
||||
public String getLogParamId() {
|
||||
return logParamId;
|
||||
}
|
||||
|
||||
public int getLogParamConvertorIndex() {
|
||||
return logParamConvertorIndex;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -1,6 +1,7 @@
|
|||
package enginuity.maps;
|
||||
|
||||
import enginuity.Settings;
|
||||
import enginuity.logger.ui.handler.TableUpdateHandler;
|
||||
import enginuity.swing.TableFrame;
|
||||
import static enginuity.util.ColorScaler.getScaledColor;
|
||||
import enginuity.util.JEPUtil;
|
||||
|
@ -82,6 +83,10 @@ public abstract class Table extends JPanel implements Serializable {
|
|||
protected Settings settings;
|
||||
protected boolean locked = false;
|
||||
|
||||
protected String logParam;
|
||||
protected double liveValue = 0.0;
|
||||
protected boolean overlayLog = false;
|
||||
|
||||
public Table(Settings settings) {
|
||||
this.setSettings(settings);
|
||||
this.setLayout(borderLayout);
|
||||
|
@ -456,6 +461,15 @@ public abstract class Table extends JPanel implements Serializable {
|
|||
this.flip = flipY;
|
||||
}
|
||||
|
||||
public void setLogParam(String logParam) {
|
||||
this.logParam = logParam;
|
||||
TableUpdateHandler.getInstance().registerTable(this);
|
||||
}
|
||||
|
||||
public String getLogParam() {
|
||||
return logParam;
|
||||
}
|
||||
|
||||
public String toString() {
|
||||
/*String output = "\n ---- Table " + name + " ----" +
|
||||
scale +
|
||||
|
@ -1107,4 +1121,20 @@ public abstract class Table extends JPanel implements Serializable {
|
|||
public void setLocked(boolean locked) {
|
||||
this.locked = locked;
|
||||
}
|
||||
|
||||
public void setOverlayLog(boolean overlayLog) {
|
||||
this.overlayLog = overlayLog;
|
||||
}
|
||||
|
||||
public void setLiveValue(double liveValue) {
|
||||
this.liveValue = liveValue;
|
||||
}
|
||||
|
||||
public double getLiveValue() {
|
||||
return liveValue;
|
||||
}
|
||||
|
||||
protected void highlightLiveData() {
|
||||
}
|
||||
|
||||
}
|
|
@ -6,7 +6,6 @@ import javax.swing.*;
|
|||
import java.awt.*;
|
||||
|
||||
public class Table1D extends Table {
|
||||
|
||||
private Color axisColor = new Color(255, 255, 255);
|
||||
|
||||
public Table1D(Settings settings) {
|
||||
|
@ -150,4 +149,12 @@ public class Table1D extends Table {
|
|||
public void setAxisColor(Color axisColor) {
|
||||
this.axisColor = axisColor;
|
||||
}
|
||||
|
||||
public void setLiveValue(double value) {
|
||||
liveValue = value;
|
||||
Table parent = getAxisParent();
|
||||
if (parent != null) {
|
||||
parent.highlightLiveData();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -2,6 +2,8 @@ package enginuity.maps;
|
|||
|
||||
import enginuity.Settings;
|
||||
import enginuity.swing.TableFrame;
|
||||
import enginuity.util.AxisRange;
|
||||
import static enginuity.util.TableAxisUtil.getLiveDataRangeForAxis;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
|
@ -13,7 +15,7 @@ import java.io.IOException;
|
|||
import java.util.StringTokenizer;
|
||||
|
||||
public class Table2D extends Table {
|
||||
|
||||
private static final String NEW_LINE = System.getProperty("line.separator");
|
||||
private Table1D axis = new Table1D(new Settings());
|
||||
|
||||
public Table2D(Settings settings) {
|
||||
|
@ -106,8 +108,8 @@ public class Table2D extends Table {
|
|||
|
||||
public void clearSelection() {
|
||||
axis.clearSelection(true);
|
||||
for (int i = 0; i < data.length; i++) {
|
||||
data[i].setSelected(false);
|
||||
for (DataCell aData : data) {
|
||||
aData.setSelected(false);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -184,12 +186,11 @@ public class Table2D extends Table {
|
|||
|
||||
public void copyTable() {
|
||||
// create string
|
||||
String newline = System.getProperty("line.separator");
|
||||
StringBuffer output = new StringBuffer("[Table2D]" + newline);
|
||||
output.append(axis.getTableAsString() + newline);
|
||||
StringBuffer output = new StringBuffer("[Table2D]" + NEW_LINE);
|
||||
output.append(axis.getTableAsString()).append(NEW_LINE);
|
||||
output.append(super.getTableAsString());
|
||||
//copy to clipboard
|
||||
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new StringSelection(output + ""), null);
|
||||
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new StringSelection(output.toString()), null);
|
||||
}
|
||||
|
||||
public void paste() {
|
||||
|
@ -205,18 +206,17 @@ public class Table2D extends Table {
|
|||
String pasteType = st.nextToken();
|
||||
|
||||
if (pasteType.equalsIgnoreCase("[Table2D]")) { // Paste table
|
||||
String newline = System.getProperty("line.separator");
|
||||
String axisValues = "[Table1D]" + newline + st.nextToken(newline);
|
||||
String dataValues = "[Table1D]" + newline + st.nextToken(newline);
|
||||
String axisValues = "[Table1D]" + NEW_LINE + st.nextToken(NEW_LINE);
|
||||
String dataValues = "[Table1D]" + NEW_LINE + st.nextToken(NEW_LINE);
|
||||
|
||||
// put axis in clipboard and paste
|
||||
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new StringSelection(axisValues + ""), null);
|
||||
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new StringSelection(axisValues), null);
|
||||
axis.paste();
|
||||
// put datavalues in clipboard and paste
|
||||
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new StringSelection(dataValues + ""), null);
|
||||
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new StringSelection(dataValues), null);
|
||||
super.paste();
|
||||
// reset clipboard
|
||||
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new StringSelection(input + ""), null);
|
||||
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new StringSelection(input), null);
|
||||
|
||||
} else if (pasteType.equalsIgnoreCase("[Selection1D]")) { // paste selection
|
||||
if (data[highlightY].isSelected()) {
|
||||
|
@ -240,18 +240,17 @@ public class Table2D extends Table {
|
|||
String pasteType = st.nextToken();
|
||||
|
||||
if (pasteType.equalsIgnoreCase("[Table2D]")) { // Paste table
|
||||
String newline = System.getProperty("line.separator");
|
||||
String axisValues = "[Table1D]" + newline + st.nextToken(newline);
|
||||
String dataValues = "[Table1D]" + newline + st.nextToken(newline);
|
||||
String axisValues = "[Table1D]" + NEW_LINE + st.nextToken(NEW_LINE);
|
||||
String dataValues = "[Table1D]" + NEW_LINE + st.nextToken(NEW_LINE);
|
||||
|
||||
// put axis in clipboard and paste
|
||||
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new StringSelection(axisValues + ""), null);
|
||||
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new StringSelection(axisValues), null);
|
||||
axis.pasteCompare();
|
||||
// put datavalues in clipboard and paste
|
||||
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new StringSelection(dataValues + ""), null);
|
||||
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new StringSelection(dataValues), null);
|
||||
super.pasteCompare();
|
||||
// reset clipboard
|
||||
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new StringSelection(input + ""), null);
|
||||
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new StringSelection(input), null);
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -269,4 +268,27 @@ public class Table2D extends Table {
|
|||
super.setScaleIndex(scaleIndex);
|
||||
axis.setScaleByName(getScale().getName());
|
||||
}
|
||||
|
||||
public void highlightLiveData() {
|
||||
if (overlayLog) {
|
||||
AxisRange range = getLiveDataRangeForAxis(axis);
|
||||
clearSelection();
|
||||
boolean first = true;
|
||||
for (int i = range.getStartIndex(); i <= range.getEndIndex(); i++) {
|
||||
int x = 0;
|
||||
int y = i;
|
||||
if (axis.getType() == TABLE_X_AXIS) {
|
||||
x = i;
|
||||
y = 0;
|
||||
}
|
||||
if (first) {
|
||||
startHighlight(x, y);
|
||||
first = false;
|
||||
} else {
|
||||
highlight(x, y);
|
||||
}
|
||||
}
|
||||
stopHighlight();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -3,7 +3,9 @@ package enginuity.maps;
|
|||
import enginuity.Settings;
|
||||
import enginuity.swing.TableFrame;
|
||||
import enginuity.swing.VTextIcon;
|
||||
import enginuity.util.AxisRange;
|
||||
import static enginuity.util.ColorScaler.getScaledColor;
|
||||
import static enginuity.util.TableAxisUtil.getLiveDataRangeForAxis;
|
||||
import enginuity.xml.RomAttributeParser;
|
||||
|
||||
import javax.swing.*;
|
||||
|
@ -209,8 +211,7 @@ public class Table3D extends Table {
|
|||
|
||||
} else {
|
||||
// limits not set, scale based on table values
|
||||
double scale = 0;
|
||||
|
||||
double scale;
|
||||
if (high - low == 0) {
|
||||
// if all values are the same, color will be middle value
|
||||
scale = .5;
|
||||
|
@ -854,6 +855,26 @@ public class Table3D extends Table {
|
|||
}
|
||||
}
|
||||
|
||||
public void highlightLiveData() {
|
||||
if (overlayLog) {
|
||||
AxisRange rangeX = getLiveDataRangeForAxis(xAxis);
|
||||
AxisRange rangeY = getLiveDataRangeForAxis(yAxis);
|
||||
clearSelection();
|
||||
boolean first = true;
|
||||
for (int x = rangeX.getStartIndex(); x <= rangeX.getEndIndex(); x++) {
|
||||
for (int y = rangeY.getStartIndex(); y <= rangeY.getEndIndex(); y++) {
|
||||
if (first) {
|
||||
startHighlight(x, y);
|
||||
first = false;
|
||||
} else {
|
||||
highlight(x, y);
|
||||
}
|
||||
}
|
||||
}
|
||||
stopHighlight();
|
||||
}
|
||||
}
|
||||
|
||||
public void setScaleIndex(int scaleIndex) {
|
||||
super.setScaleIndex(scaleIndex);
|
||||
xAxis.setScaleByName(getScale().getName());
|
||||
|
|
|
@ -11,7 +11,7 @@ public class TableMenuBar extends JMenuBar implements ActionListener {
|
|||
private Table table;
|
||||
private JMenu fileMenu = new JMenu("Table");
|
||||
private JMenuItem graph = new JMenuItem("View Graph");
|
||||
private JMenuItem overlay = new JMenuItem("Overlay Log");
|
||||
private JRadioButtonMenuItem overlay = new JRadioButtonMenuItem("Overlay Log");
|
||||
|
||||
private JMenu compareMenu = new JMenu("Compare");
|
||||
private JRadioButtonMenuItem compareOriginal = new JRadioButtonMenuItem("Show Changes");
|
||||
|
@ -116,7 +116,6 @@ public class TableMenuBar extends JMenuBar implements ActionListener {
|
|||
close.setMnemonic('X');
|
||||
|
||||
graph.setEnabled(false);
|
||||
overlay.setEnabled(false);
|
||||
}
|
||||
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
|
@ -133,7 +132,7 @@ public class TableMenuBar extends JMenuBar implements ActionListener {
|
|||
table.getFrame().dispose();
|
||||
|
||||
} else if (e.getSource() == tableProperties) {
|
||||
JOptionPane.showMessageDialog(table, (Object) (new TablePropertyPanel(table)),
|
||||
JOptionPane.showMessageDialog(table, new TablePropertyPanel(table),
|
||||
table.getName() + " Table Properties", JOptionPane.INFORMATION_MESSAGE);
|
||||
|
||||
} else if (e.getSource() == copySel) {
|
||||
|
@ -164,6 +163,9 @@ public class TableMenuBar extends JMenuBar implements ActionListener {
|
|||
} else if (e.getSource() == comparePercent) {
|
||||
table.setCompareDisplay(Table.COMPARE_PERCENT);
|
||||
|
||||
} else if (e.getSource() == overlay) {
|
||||
table.setOverlayLog(overlay.isSelected());
|
||||
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
package enginuity.util;
|
||||
|
||||
public final class AxisRange {
|
||||
private final int startIndex;
|
||||
private final int endIndex;
|
||||
|
||||
public AxisRange(int startIndex, int endIndex) {
|
||||
this.startIndex = startIndex;
|
||||
this.endIndex = endIndex;
|
||||
}
|
||||
|
||||
public int getStartIndex() {
|
||||
return startIndex;
|
||||
}
|
||||
|
||||
public int getEndIndex() {
|
||||
return endIndex;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,47 @@
|
|||
package enginuity.util;
|
||||
|
||||
import enginuity.maps.DataCell;
|
||||
import enginuity.maps.Table1D;
|
||||
|
||||
public final class TableAxisUtil {
|
||||
|
||||
private TableAxisUtil() {
|
||||
}
|
||||
|
||||
public static AxisRange getLiveDataRangeForAxis(Table1D axis) {
|
||||
int startIdx = 0;
|
||||
int endIdx = 0;
|
||||
double liveAxisValue = axis.getLiveValue();
|
||||
DataCell[] data = axis.getData();
|
||||
for (int i = 0; i < data.length; i++) {
|
||||
DataCell cell = data[i];
|
||||
double axisValue = cell.getValue();
|
||||
if (liveAxisValue == axisValue) {
|
||||
startIdx = i;
|
||||
endIdx = i;
|
||||
break;
|
||||
} else if (liveAxisValue < axisValue) {
|
||||
startIdx = i - 1;
|
||||
endIdx = i;
|
||||
break;
|
||||
} else {
|
||||
startIdx = i;
|
||||
endIdx = i + 1;
|
||||
}
|
||||
}
|
||||
if (startIdx < 0) {
|
||||
startIdx = 0;
|
||||
}
|
||||
if (startIdx >= data.length) {
|
||||
startIdx = data.length - 1;
|
||||
}
|
||||
if (endIdx < 0) {
|
||||
endIdx = 0;
|
||||
}
|
||||
if (endIdx >= data.length) {
|
||||
endIdx = data.length - 1;
|
||||
}
|
||||
return new AxisRange(startIdx, endIdx);
|
||||
}
|
||||
|
||||
}
|
|
@ -359,13 +359,14 @@ public class DOMRomUnmarshaller {
|
|||
table.setStorageAddress(RomAttributeParser.parseHexString(unmarshallAttribute(tableNode, "storageaddress", table.getStorageAddress())));
|
||||
table.setDescription(unmarshallAttribute(tableNode, "description", table.getDescription()));
|
||||
table.setDataSize(Integer.parseInt(unmarshallAttribute(tableNode, "sizey", unmarshallAttribute(tableNode, "sizex", table.getDataSize()))));
|
||||
table.setFlip(Boolean.parseBoolean(unmarshallAttribute(tableNode, "flipy", unmarshallAttribute(tableNode, "flipx", table.getFlip() + ""))));
|
||||
table.setFlip(Boolean.parseBoolean(unmarshallAttribute(tableNode, "flipy", unmarshallAttribute(tableNode, "flipx", String.valueOf(table.getFlip())))));
|
||||
table.setUserLevel(Integer.parseInt(unmarshallAttribute(tableNode, "userlevel", table.getUserLevel())));
|
||||
table.setLocked(Boolean.parseBoolean(unmarshallAttribute(tableNode, "locked", table.isLocked() + "")));
|
||||
table.setLocked(Boolean.parseBoolean(unmarshallAttribute(tableNode, "locked", String.valueOf(table.isLocked()))));
|
||||
table.setLogParam(unmarshallAttribute(tableNode, "logparam", table.getLogParam()));
|
||||
|
||||
if (table.getType() == Table.TABLE_3D) {
|
||||
((Table3D) table).setFlipX(Boolean.parseBoolean(unmarshallAttribute(tableNode, "flipx", ((Table3D) table).getFlipX() + "")));
|
||||
((Table3D) table).setFlipY(Boolean.parseBoolean(unmarshallAttribute(tableNode, "flipy", ((Table3D) table).getFlipY() + "")));
|
||||
((Table3D) table).setFlipX(Boolean.parseBoolean(unmarshallAttribute(tableNode, "flipx", String.valueOf(((Table3D) table).getFlipX()))));
|
||||
((Table3D) table).setFlipY(Boolean.parseBoolean(unmarshallAttribute(tableNode, "flipy", String.valueOf(((Table3D) table).getFlipY()))));
|
||||
((Table3D) table).setSizeX(Integer.parseInt(unmarshallAttribute(tableNode, "sizex", ((Table3D) table).getSizeX())));
|
||||
((Table3D) table).setSizeY(Integer.parseInt(unmarshallAttribute(tableNode, "sizey", ((Table3D) table).getSizeY())));
|
||||
}
|
||||
|
@ -432,7 +433,7 @@ public class DOMRomUnmarshaller {
|
|||
DataCell dataCell = new DataCell();
|
||||
dataCell.setDisplayValue(unmarshallText(n));
|
||||
dataCell.setTable(table);
|
||||
((Table1D) table).addStaticDataCell(dataCell);
|
||||
table.addStaticDataCell(dataCell);
|
||||
|
||||
} else if (n.getNodeName().equalsIgnoreCase("description")) {
|
||||
table.setDescription(unmarshallText(n));
|
||||
|
@ -464,7 +465,7 @@ public class DOMRomUnmarshaller {
|
|||
// check whether name matches base and set scale if so
|
||||
if (scales.get(i).getName().equalsIgnoreCase(base)) {
|
||||
try {
|
||||
scale = (Scale) ObjectCloner.deepCopy((Object) scales.get(i));
|
||||
scale = (Scale) ObjectCloner.deepCopy(scales.get(i));
|
||||
|
||||
} catch (Exception ex) {
|
||||
JOptionPane.showMessageDialog(parent, new DebugPanel(ex,
|
||||
|
@ -485,10 +486,10 @@ public class DOMRomUnmarshaller {
|
|||
|
||||
// get coarse increment with new attribute name (coarseincrement), else look for old (increment)
|
||||
scale.setCoarseIncrement(Double.parseDouble(unmarshallAttribute(scaleNode, "coarseincrement",
|
||||
unmarshallAttribute(scaleNode, "increment", scale.getCoarseIncrement() + "") + "")));
|
||||
unmarshallAttribute(scaleNode, "increment", String.valueOf(scale.getCoarseIncrement())))));
|
||||
|
||||
scale.setFineIncrement(Double.parseDouble(unmarshallAttribute(scaleNode,
|
||||
"fineincrement", scale.getFineIncrement() + "")));
|
||||
"fineincrement", String.valueOf(scale.getFineIncrement()))));
|
||||
|
||||
return scale;
|
||||
}
|
||||
|
@ -517,6 +518,6 @@ public class DOMRomUnmarshaller {
|
|||
}
|
||||
|
||||
private String unmarshallAttribute(Node node, String name, int defaultValue) {
|
||||
return unmarshallAttribute(node, name, defaultValue + "");
|
||||
return unmarshallAttribute(node, name, String.valueOf(defaultValue));
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue