[#1177] Add SQL Console module to jOOQ - boolean editor did not consider null different from false.
This commit is contained in:
parent
6b5c14a2aa
commit
5387cc8a5a
@ -117,6 +117,7 @@ import javax.swing.table.AbstractTableModel;
|
||||
import javax.swing.table.DefaultTableCellRenderer;
|
||||
import javax.swing.table.JTableHeader;
|
||||
import javax.swing.table.TableCellEditor;
|
||||
import javax.swing.table.TableCellRenderer;
|
||||
import javax.swing.table.TableRowSorter;
|
||||
import javax.swing.text.BadLocationException;
|
||||
|
||||
@ -660,6 +661,22 @@ public class EditorPane extends JPanel {
|
||||
return super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
|
||||
}
|
||||
});
|
||||
final TableCellRenderer booleanRenderer = table.getDefaultRenderer(Boolean.class);
|
||||
table.setDefaultRenderer(Boolean.class, new DefaultTableCellRenderer() {
|
||||
@Override
|
||||
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
|
||||
Component c = null;
|
||||
if(value == null) {
|
||||
c = super.getTableCellRendererComponent(table, " ", isSelected, hasFocus, row, column);
|
||||
} else {
|
||||
c = booleanRenderer.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
|
||||
}
|
||||
if(!isSelected) {
|
||||
c.setBackground(row %2 == 0? UIManager.getColor("Table.background"): JTableX.getTableAlternateRowBackgroundColor());
|
||||
}
|
||||
return c;
|
||||
}
|
||||
});
|
||||
table.setDefaultRenderer(Timestamp.class, new DefaultTableCellRenderer() {
|
||||
@Override
|
||||
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
|
||||
|
||||
@ -64,7 +64,7 @@ public class JTableX extends JTable {
|
||||
private static final Color EVEN_ROW_COLOR = Color.WHITE;
|
||||
private static final Color ODD_ROW_COLOR = getTableAlternateRowBackgroundColor();
|
||||
|
||||
private static Color getTableAlternateRowBackgroundColor() {
|
||||
public static Color getTableAlternateRowBackgroundColor() {
|
||||
Color defaultBackground = UIManager.getDefaults().getColor("Panel.background");
|
||||
Color c = new Color((defaultBackground.getRed() + 0xFF) / 2, (defaultBackground.getGreen() + 0xFF) / 2, (defaultBackground.getBlue() + 0xFF) / 2);
|
||||
return c;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user