From 70fe4f8d77374571d23f7d48ab5e01d95e0d6408 Mon Sep 17 00:00:00 2001 From: hneemann Date: Sat, 25 Feb 2017 13:59:03 +0100 Subject: [PATCH] added a number column to the test result table --- .../components/testing/TestResultDialog.java | 18 ++++++++++++++++-- .../components/testing/TestResultModel.java | 17 +++++++++++++---- 2 files changed, 29 insertions(+), 6 deletions(-) diff --git a/src/main/java/de/neemann/digital/gui/components/testing/TestResultDialog.java b/src/main/java/de/neemann/digital/gui/components/testing/TestResultDialog.java index 555601144..24bff568b 100644 --- a/src/main/java/de/neemann/digital/gui/components/testing/TestResultDialog.java +++ b/src/main/java/de/neemann/digital/gui/components/testing/TestResultDialog.java @@ -55,7 +55,9 @@ public class TestResultDialog extends JDialog { TestResult tr = new TestResult(ts.data).create(model); JTable table = new JTable(new TestResultModel(tr)); - table.setDefaultRenderer(MatchedValue.class, new MyRenderer()); + table.setDefaultRenderer(MatchedValue.class, new MatchedValueRenderer()); + table.setDefaultRenderer(Integer.class, new NumberRenderer()); + table.getColumnModel().getColumn(0).setMaxWidth(40); String tabName; Icon tabIcon; @@ -120,7 +122,7 @@ public class TestResultDialog extends JDialog { } } - private static class MyRenderer extends DefaultTableCellRenderer { + private static class MatchedValueRenderer extends DefaultTableCellRenderer { @Override public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { @@ -141,4 +143,16 @@ public class TestResultDialog extends JDialog { return comp; } } + + private static class NumberRenderer extends DefaultTableCellRenderer { + private static final Color NUM_BACKGROUND_COLOR = new Color(238, 238, 238); + + @Override + public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { + JLabel comp = (JLabel) super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); + comp.setBackground(NUM_BACKGROUND_COLOR); + return comp; + } + } + } diff --git a/src/main/java/de/neemann/digital/gui/components/testing/TestResultModel.java b/src/main/java/de/neemann/digital/gui/components/testing/TestResultModel.java index 57b26bcb2..41a388b0a 100644 --- a/src/main/java/de/neemann/digital/gui/components/testing/TestResultModel.java +++ b/src/main/java/de/neemann/digital/gui/components/testing/TestResultModel.java @@ -31,17 +31,23 @@ public class TestResultModel implements TableModel { @Override public int getColumnCount() { - return testResult.getSignalCount(); + return testResult.getSignalCount() + 1; } @Override public String getColumnName(int columnIndex) { - return testResult.getSignalName(columnIndex); + if (columnIndex == 0) + return "No"; + else + return testResult.getSignalName(columnIndex - 1); } @Override public Class getColumnClass(int columnIndex) { - return MatchedValue.class; + if (columnIndex == 0) + return Integer.class; + else + return MatchedValue.class; } @Override @@ -51,7 +57,10 @@ public class TestResultModel implements TableModel { @Override public Object getValueAt(int rowIndex, int columnIndex) { - return testResult.getResultValue(rowIndex, columnIndex); + if (columnIndex == 0) + return rowIndex; + else + return testResult.getResultValue(rowIndex, columnIndex - 1); }