PanelRenderer.java 731 B

123456789101112131415161718192021222324
  1. package org.leumasjaffe.graphics;
  2. import java.awt.Component;
  3. import javax.swing.JList;
  4. import javax.swing.JPanel;
  5. import javax.swing.ListCellRenderer;
  6. /**
  7. * A simple helper object that allows formatting a JList (multi-selection list
  8. * UI element) with JPanel elements instead of a more conventional type such as
  9. * JLabels.
  10. *
  11. * @author Samuel Jaffe
  12. */
  13. public class PanelRenderer implements ListCellRenderer<JPanel> {
  14. @Override
  15. public Component getListCellRendererComponent(JList<? extends JPanel> list, JPanel renderer,
  16. int index, boolean isSelected, boolean cellHasFocus) {
  17. renderer.setBackground(isSelected ? list.getSelectionBackground() : list.getBackground());
  18. return renderer;
  19. }
  20. }