// File:CheckListExample.java /* (swing1.1.1beta2) */ //package jp.gr.java_conf.tame.swing.examples; import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.border.*; import javax.swing.plaf.metal.*; import jp.gr.java_conf.tame.swing.tree.*; /** * @version 1.0 04/24/99 */ public class CheckListExample extends JFrame { public CheckListExample() { super("CheckList Example"); String[] strs = {"swing", "home", "basic", "metal", "JList"}; final JList list = new JList( createData(strs) ); // set "home" icon Icon icon = MetalIconFactory.getFileChooserHomeFolderIcon(); ((CheckableItem)list.getModel().getElementAt(1)).setIcon(icon); list.setCellRenderer(new CheckListRenderer()); list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); list.setBorder(new EmptyBorder(0,4,0,0)); list.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { int index = list.locationToIndex(e.getPoint()); CheckableItem item = (CheckableItem)list.getModel().getElementAt(index); item.setSelected(! item.isSelected()); Rectangle rect = list.getCellBounds(index, index); list.repaint(rect); } }); JScrollPane sp = new JScrollPane(list); final JTextArea textArea = new JTextArea(3,10); JScrollPane textPanel = new JScrollPane(textArea); JButton printButton = new JButton("print"); printButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { ListModel model = list.getModel(); int n = model.getSize(); for (int i=0;i