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