001package com.github.sarxos.webcam; 002 003import java.util.List; 004 005import javax.swing.DefaultComboBoxModel; 006 007 008public class WebcamPickerModel extends DefaultComboBoxModel { 009 010 private static final long serialVersionUID = 1L; 011 012 public WebcamPickerModel(List<Webcam> webcams) { 013 super(webcams.toArray(new Webcam[webcams.size()])); 014 } 015 016 @Override 017 public Webcam getSelectedItem() { 018 return (Webcam) super.getSelectedItem(); 019 } 020 021 @Override 022 public void setSelectedItem(Object webcam) { 023 if (!(webcam instanceof Webcam)) { 024 throw new IllegalArgumentException("Selected object has to be an Webcam instance"); 025 } 026 super.setSelectedItem(webcam); 027 } 028}