00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 package com.realtime.crossfire.jxclient.gui.list;
00022
00023 import com.realtime.crossfire.jxclient.gui.misc.GUICharacter;
00024 import java.awt.BorderLayout;
00025 import java.awt.Component;
00026 import javax.swing.JList;
00027 import javax.swing.JPanel;
00028 import org.jetbrains.annotations.NotNull;
00029
00034 public class CharacterCellRenderer extends JPanel implements GUIListCellRenderer {
00035
00039 private static final long serialVersionUID = 1;
00040
00044 private final GUICharacter template;
00045
00051 public CharacterCellRenderer(@NotNull final GUICharacter template) {
00052 super(new BorderLayout());
00053 setOpaque(false);
00054 this.template = template;
00055 add(template, BorderLayout.CENTER);
00056 }
00057
00061 @Override
00062 public Component getListCellRendererComponent(@NotNull final JList list, @NotNull final Object value, final int index, final boolean isSelected, final boolean cellHasFocus) {
00063 template.setIndex(((GUICharacter)value).getIndex());
00064 template.setSelected(isSelected);
00065 return this;
00066 }
00067
00068 }