1 package org.columba.mail.gui.config.accountlist; 15 16 import java.awt.Component ; 17 18 import javax.swing.BorderFactory ; 19 import javax.swing.JLabel ; 20 import javax.swing.JTable ; 21 import javax.swing.border.Border ; 22 import javax.swing.table.TableCellRenderer ; 23 24 import org.columba.mail.config.AccountItem; 25 import org.columba.mail.config.MailConfig; 26 import org.columba.mail.util.MailResourceLoader; 27 28 29 37 public class NameRenderer extends JLabel implements TableCellRenderer { 38 Border unselectedBorder = null; 39 Border selectedBorder = null; 40 boolean isBordered = true; 41 42 public NameRenderer() { 43 super(); 44 this.isBordered = true; 45 setOpaque(true); 47 } 49 50 public Component getTableCellRendererComponent(JTable table, Object value, 51 boolean isSelected, boolean hasFocus, int row, int column) { 52 if (isBordered) { 53 if (isSelected) { 54 if (selectedBorder == null) { 55 selectedBorder = BorderFactory.createMatteBorder(2, 5, 2, 56 5, table.getSelectionBackground()); 57 } 58 59 setBorder(selectedBorder); 60 setBackground(table.getSelectionBackground()); 61 setForeground(table.getSelectionForeground()); 62 } else { 63 if (unselectedBorder == null) { 64 unselectedBorder = BorderFactory.createMatteBorder(2, 5, 2, 65 5, table.getBackground()); 66 } 67 68 setBackground(table.getBackground()); 69 setBorder(unselectedBorder); 70 setForeground(table.getForeground()); 71 } 72 } 73 74 StringBuffer buf = new StringBuffer (); 75 76 AccountItem item = (AccountItem) value; 77 78 buf.append(item.getName()); 79 80 if (MailConfig.getInstance().getAccountList().getDefaultAccountUid() == item.getUid()) { 81 buf.append(" (" + 82 MailResourceLoader.getString("dialog", "account", "standard") + 83 ")"); 84 } 85 86 setText(buf.toString()); 87 88 return this; 89 } 90 } 91 | Popular Tags |