/**
 * 
 */
package view.tool.JScrollList;

import java.util.List;

import javax.swing.DefaultListModel;
import javax.swing.JList;
import javax.swing.JScrollPane;

/**
 * @author alexis
 *
 */
public class JScrollList<E> extends JScrollPane{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1724539395394817960L;
	private JList<E> list;
	
	public JScrollList() {
		initVariables();
		initComponents();
	}
	
	public JScrollList(DefaultListModel<E> model){
		initVariables();
		initComponents();
		setModel(model);
	}
	
	private void initVariables(){
		this.list = new JList<E>();
	}
	
	private void initComponents(){
		this.setViewportView(list);
	}
	
	public void setModel(DefaultListModel<E> model){
		this.list.setModel(model);
	}

	public void setVisibleRowCount(int count){
		list.setVisibleRowCount(count);
	}
	
	public List<E> getSelectedValuesList(){
		return list.getSelectedValuesList();
	}
	
	@Override
	public void setEnabled(boolean enabled){
		list.setEnabled(enabled);
		list.setOpaque(enabled);
	}
}