View Javadoc

1   /*
2    * EL4J, the Extension Library for the J2EE, adds incremental enhancements to
3    * the spring framework, http://el4j.sf.net
4    * Copyright (C) 2005 by ELCA Informatique SA, Av. de la Harpe 22-24,
5    * 1000 Lausanne, Switzerland, http://www.elca.ch
6    *
7    * EL4J is published under the GNU Lesser General Public License (LGPL)
8    * Version 2.1. See http://www.gnu.org/licenses/
9    *
10   * This program is distributed in the hope that it will be useful,
11   * but WITHOUT ANY WARRANTY; without even the implied warranty of
12   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13   * GNU Lesser General Public License for more details.
14   *
15   * For alternative licensing, please contact info@elca.ch
16   */
17  package com.silvermindsoftware.hitch.binding.components;
18  
19  import java.util.List;
20  
21  import javax.swing.JComboBox;
22  import javax.swing.ListCellRenderer;
23  
24  import org.jdesktop.beansbinding.AutoBinding;
25  import org.jdesktop.swingbinding.JComboBoxBinding;
26  import org.jdesktop.swingbinding.SwingBindings;
27  
28  import com.silvermindsoftware.hitch.binding.AbstractBindingCreator;
29  
30  import ch.elca.el4j.services.gui.swing.GUIApplication;
31  import ch.elca.el4j.util.config.GenericConfig;
32  
33  /**
34   * This class creates bindings for ComboBoxes.
35   *
36   * @svnLink $Revision: 3873 $;$Date: 2009-08-04 13:59:45 +0200 (Di, 04. Aug 2009) $;$Author: swismer $;$URL: https://el4j.svn.sourceforge.net/svnroot/el4j/branches/el4j_3_1/el4j/framework/modules/swing/src/main/java/com/silvermindsoftware/hitch/binding/components/ComboBoxBinding.java $
37   *
38   * @author Stefan Wismer (SWI)
39   */
40  public class ComboBoxBinding extends AbstractBindingCreator<JComboBox> {
41  	
42  	/** {@inheritDoc} */
43  	@SuppressWarnings("unchecked")
44  	public AutoBinding createBinding(Object object, JComboBox formComponent) {
45  		List list = (List) object;
46  		JComboBoxBinding cb = SwingBindings.createJComboBoxBinding(
47  			m_updateStrategy, list, formComponent);
48  		return cb;
49  	}
50  	
51  	/** {@inheritDoc} */
52  	public void addValidation(JComboBox formComponent) {
53  		GenericConfig config = GUIApplication.getInstance().getConfig();
54  		formComponent.setRenderer((ListCellRenderer) config.get("cellRenderer"));
55  	}
56  }