package com.github.ss111; import java.awt.Color; import java.awt.Component; import java.util.ArrayList; import javax.swing.JTable; import javax.swing.table.DefaultTableCellRenderer; import javax.swing.table.DefaultTableModel; public class TableRenderer { private static ArrayList<String> fileExtensions = new ArrayList<String>(); private static DefaultTableCellRenderer cellRenderer = new DefaultTableCellRenderer() { private static final long serialVersionUID = 635122024602747098L; @Override public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { Component c = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); if (row == 0 || row == 1 || row == 2) { c.setBackground(Color.GRAY); return c; } else { c.setBackground(Color.WHITE); if (value != null && !value.toString().startsWith(".")) { if (!value.equals("")) { c.setBackground(Color.RED); } } return c; } } }; private static DefaultTableModel dtm = new DefaultTableModel() { private static final long serialVersionUID = -5522373491102361200L; @Override public boolean isCellEditable(int row, int col) { if (row == 0 || row == 1 || row == 2) { return false; } else { return true; } } }; public static DefaultTableCellRenderer getCellRenderer() { return cellRenderer; } public static DefaultTableModel getTableModel() { dtm.setRowCount(8); dtm.setColumnCount(1); dtm.setValueAt(".cfg", 0, 0); dtm.setValueAt(".txt", 1, 0); dtm.setValueAt(".conf", 2, 0); return dtm; } public static JTable getExtensionsTable() { return WindowMain.extensionsTable; } public static ArrayList<String> getExtraFileExtensions() { if (ConfigHelper.isCommandLine == false) { for (int i = 3; i <= 7; i++) { Object value = getExtensionsTable().getModel().getValueAt(i, 0); if (value != null && value.toString().startsWith(".")) { fileExtensions.add(value.toString().replace(".", "")); } } } else { return fileExtensions; } return fileExtensions; } public static void setExtraFileExtensions(String[] extraExtensions) { for (String s : extraExtensions) { if (s != "" && s.startsWith(".")) { fileExtensions.add(s.replace(".", "")); } } ConfigHelper.isCommandLine = true; } }