34 lines
943 B
Java
34 lines
943 B
Java
|
package dev.kske.chess.ui;
|
||
|
|
||
|
import java.awt.Color;
|
||
|
import java.awt.Component;
|
||
|
|
||
|
import javax.swing.JLabel;
|
||
|
import javax.swing.JList;
|
||
|
import javax.swing.ListCellRenderer;
|
||
|
import javax.swing.border.EmptyBorder;
|
||
|
|
||
|
import dev.kske.chess.board.MoveNode;
|
||
|
|
||
|
/**
|
||
|
* Project: <strong>Chess</strong><br>
|
||
|
* File: <strong>MoveNodeRenderer.java</strong><br>
|
||
|
* Created: <strong>9 Oct 2019</strong><br>
|
||
|
*
|
||
|
* @author Kai S. K. Engelbart
|
||
|
*/
|
||
|
public class MoveNodeRenderer extends JLabel implements ListCellRenderer<MoveNode> {
|
||
|
|
||
|
private static final long serialVersionUID = 5242015788752442446L;
|
||
|
|
||
|
@Override
|
||
|
public Component getListCellRendererComponent(JList<? extends MoveNode> list, MoveNode node, int index,
|
||
|
boolean isSelected, boolean cellHasFocus) {
|
||
|
setBorder(new EmptyBorder(5, 5, 5, 5));
|
||
|
setText(node.move.toLAN());
|
||
|
setBackground(isSelected ? Color.red : Color.white);
|
||
|
setOpaque(true);
|
||
|
return this;
|
||
|
}
|
||
|
}
|