diff --git a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/DropdownListSearchPanel.form b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/DropdownListSearchPanel.form
index 1f61e9255c..bfb20406e3 100644
--- a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/DropdownListSearchPanel.form
+++ b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/DropdownListSearchPanel.form
@@ -137,8 +137,9 @@
-
-
+
+
+
diff --git a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/DropdownListSearchPanel.java b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/DropdownListSearchPanel.java
index d794acb1dc..a58328c113 100644
--- a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/DropdownListSearchPanel.java
+++ b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/DropdownListSearchPanel.java
@@ -39,6 +39,9 @@ import org.openide.util.NbBundle;
import org.openide.util.actions.SystemAction;
import org.sleuthkit.autopsy.coreutils.Logger;
import org.sleuthkit.autopsy.ingest.IngestManager;
+import javax.swing.ImageIcon;
+import static javax.swing.SwingConstants.CENTER;
+import javax.swing.table.DefaultTableCellRenderer;
/**
* Viewer panel widget for keyword lists that is used in the ingest config and
@@ -93,7 +96,7 @@ class DropdownListSearchPanel extends KeywordSearchPanel {
column.setPreferredWidth(((int) (rightWidth * 0.78)));
} else {
column.setPreferredWidth(((int) (rightWidth * 0.20)));
- column.setCellRenderer(new RightCheckBoxRenderer());
+ column.setCellRenderer(new CheckBoxRenderer());
}
}
@@ -220,8 +223,7 @@ class DropdownListSearchPanel extends KeywordSearchPanel {
keywordsTable.setBackground(new java.awt.Color(240, 240, 240));
keywordsTable.setFont(keywordsTable.getFont().deriveFont(keywordsTable.getFont().getStyle() & ~java.awt.Font.BOLD, 11));
keywordsTable.setModel(keywordsTableModel);
- keywordsTable.setShowHorizontalLines(false);
- keywordsTable.setShowVerticalLines(false);
+ keywordsTable.setGridColor(new java.awt.Color(153, 153, 153));
rightPane.setViewportView(keywordsTable);
jSplitPane1.setRightComponent(rightPane);
@@ -597,26 +599,31 @@ class DropdownListSearchPanel extends KeywordSearchPanel {
}
}
- private class RightCheckBoxRenderer extends JCheckBox implements TableCellRenderer {
+ /**
+ * A cell renderer for boolean cells that shows a center-aligned green check
+ * mark if true, nothing if false.
+ */
+ private class CheckBoxRenderer extends DefaultTableCellRenderer {
+
+ private static final long serialVersionUID = 1L;
+ final ImageIcon theCheck = new javax.swing.ImageIcon(getClass().getResource("/org/sleuthkit/autopsy/keywordsearch/checkmark.png")); // NON-NLS
+
+ CheckBoxRenderer() {
+ setHorizontalAlignment(CENTER);
+ }
@Override
- public Component getTableCellRendererComponent(
- JTable table, Object value,
- boolean isSelected, boolean hasFocus,
- int row, int column) {
+ public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
- this.setHorizontalAlignment(JCheckBox.CENTER);
- this.setVerticalAlignment(JCheckBox.CENTER);
-
- Boolean selected = (Boolean) table.getModel().getValueAt(row, 1);
- setSelected(selected);
- if (isSelected) {
- setBackground(keywordsTable.getSelectionBackground());
- } else {
- setBackground(keywordsTable.getBackground());
+ if ((value instanceof Boolean)) {
+ if ((Boolean) value) {
+ setIcon(theCheck);
+ setToolTipText(Bundle.IsRegularExpression());
+ } else {
+ setIcon(null);
+ setToolTipText(null);
+ }
}
- setEnabled(false);
-
return this;
}
}
diff --git a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/GlobalEditListPanel.java b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/GlobalEditListPanel.java
index ccafb5b2a5..8dfbd71662 100644
--- a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/GlobalEditListPanel.java
+++ b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/GlobalEditListPanel.java
@@ -92,7 +92,6 @@ class GlobalEditListPanel extends javax.swing.JPanel implements ListSelectionLis
} else {
column.setPreferredWidth(((int) (width * 0.10)));
column.setCellRenderer(new CheckBoxRenderer());
- column.setHeaderRenderer(new HeaderRenderer(keywordTable));
}
}
keywordTable.setCellSelectionEnabled(false);
@@ -722,25 +721,4 @@ class GlobalEditListPanel extends javax.swing.JPanel implements ListSelectionLis
return this;
}
}
-
- /**
- * A cell renderer for header cells that center-aligns the header text.
- */
- private static class HeaderRenderer implements TableCellRenderer {
-
- private DefaultTableCellRenderer renderer;
-
- public HeaderRenderer(JTable table) {
- renderer = (DefaultTableCellRenderer) table.getTableHeader().getDefaultRenderer();
- renderer.setHorizontalAlignment(JLabel.CENTER);
- }
-
- @Override
- public Component getTableCellRendererComponent(
- JTable table, Object value, boolean isSelected,
- boolean hasFocus, int row, int col) {
- return renderer.getTableCellRendererComponent(
- table, value, isSelected, hasFocus, row, col);
- }
- }
}