package com.neucrack.GUI;
import java.awt.Color;
import java.awt.Component;
import java.awt.FlowLayout;
import java.awt.Font;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.ListCellRenderer;
public class ListRenderer extends JPanel implements ListCellRenderer<ListItemDanMu>{
private JLabel userName;
private JLabel symbolAfterUserName;
private JLabel message;
private JLabel giftNumber;
private JLabel giftUnit;
private JLabel giftName;
public ListRenderer() {
userName = new JLabel();
symbolAfterUserName = new JLabel();
message = new JLabel();
giftNumber = new JLabel();
giftUnit = new JLabel();
giftName = new JLabel();
FlowLayout layout=new FlowLayout();
setLayout(layout);
layout.setAlignment(FlowLayout.LEFT);
add(userName);
add(symbolAfterUserName);
add(message);
add(giftNumber);
add(giftUnit);
add(giftName);
userName.setForeground(new Color(0x6D40DB));
symbolAfterUserName.setForeground(Color.yellow);
message.setForeground(Color.white);
giftNumber.setForeground(new Color(0xFF3C61));
giftUnit.setForeground(Color.white);
giftName.setForeground(new Color(0x24B073));
userName.setFont(new Font("微软雅黑 ", Font.PLAIN, 12));
symbolAfterUserName.setFont(new Font("微软雅黑 ", Font.PLAIN, 12));
message.setFont(new Font("微软雅黑 ", Font.PLAIN, 12));
giftNumber.setFont(new Font("微软雅黑 ", Font.PLAIN, 12));
giftUnit.setFont(new Font("微软雅黑 ", Font.PLAIN, 12));
giftName.setFont(new Font("微软雅黑 ", Font.PLAIN, 12));
setOpaque(false);
}
public Component getListCellRendererComponent(
JList<? extends ListItemDanMu> list, ListItemDanMu value,
int index, boolean isSelected, boolean cellHasFocus) {
if(value.isPhone())
userName.setIcon(value.getPhoneIcon());
else
userName.setIcon(null);
userName.setText(value.getUserName());
symbolAfterUserName.setText(value.getSymbolAfterUserName());
message.setText(value.getMessage());
if(value.isGift()){
giftNumber.setText(value.getGiftNumber());
giftUnit.setText(value.getGiftUnit());
giftName.setText(value.getGiftName());
}
else{
giftNumber.setText("");
giftUnit.setText("");
giftName.setText("");
}
return this;
}
}