package magic.ui.deck.games;
import java.awt.Component;
import javax.swing.JLabel;
import javax.swing.JTable;
import javax.swing.SwingConstants;
import javax.swing.table.DefaultTableCellRenderer;
import magic.translate.MText;
@SuppressWarnings("serial")
class PlayerCellRenderer extends DefaultTableCellRenderer {
// translatable UI text (prefix with _S).
private static final String _S1 = "level:%d +life:%d";
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
PlayerInfo playerInfo = (PlayerInfo) value;
String text = playerInfo.isHuman()
? String.format("<html><center>%s</center></html>",
playerInfo.getHumanPlayerName()
)
: String.format(
"<html><center>%s <small>%s</small><br><small>%s</small></center></html>",
playerInfo.getAiType().name(),
MText.get(_S1, playerInfo.getAiLevel(), playerInfo.getAiXtraLife()),
playerInfo.getAiType().toString()
);
JLabel lbl = new JLabel(text);
lbl.setHorizontalAlignment(SwingConstants.CENTER);
lbl.setOpaque(true);
return lbl;
}
}