DefaultCellEditor backgroundEditor = new DefaultCellEditor(background);
DefaultCellEditor foregroundEditor = new DefaultCellEditor(foreground);
JTextField textField = new JTextField();
textField.addKeyListener(
new ExpressionRuleContext(filterModel, textField));
table.getColumnModel().getColumn(0).setCellEditor(
new DefaultCellEditor(textField));
table.getColumnModel().getColumn(1).setCellEditor(backgroundEditor);
table.getColumnModel().getColumn(2).setCellEditor(foregroundEditor);