import java.awt.*;
import java.awt.event.*;
import java.util.*;

import javax.swing.*;

/**
 * @author Remi Forax
 *
 */
public class ListExample2 {
 
  static int count=0;
 
  public static void main(String[] args) {
    ArrayList list=new ArrayList();
    list.addAll(Arrays.asList(args));
    
    final MyListModel model=new MyListModel(list);
    JList view=new JList(model);
    
    JPanel panel=new JPanel();
    JButton newButton=new JButton("new");
    newButton.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent e) {
        model.add("element "+count++);
      }
    });
    panel.add(newButton);
    
    JFrame frame=new JFrame();
    Container c=frame.getContentPane();
    c.add(panel,BorderLayout.NORTH);
    c.add(new JScrollPane(view));
    frame.pack();
    frame.show();
  }
}
