001 package org.springframework.richclient.form.binding.swing.date; 002 003 004 import java.util.Map; 005 006 import javax.swing.JComponent; 007 008 import org.springframework.binding.form.FormModel; 009 import org.springframework.richclient.form.binding.Binding; 010 import org.springframework.util.Assert; 011 012 import com.toedter.calendar.JDateChooser; 013 014 public class JCalendarDateFieldBinder extends AbstractDateFieldBinder { 015 016 public JCalendarDateFieldBinder() { 017 super(new String[] { DATE_FORMAT }); 018 } 019 020 protected JComponent createControl(Map context) { 021 return new JDateChooser(); 022 } 023 024 protected Binding doBind(JComponent control, FormModel formModel, String formPropertyPath, Map context) { 025 Assert.isTrue(control instanceof JDateChooser, "Control must be an instance of JDateChooser."); 026 JCalendarDateFieldBinding binding = new JCalendarDateFieldBinding((JDateChooser) control, formModel, 027 formPropertyPath); 028 applyContext(binding, context); 029 030 return binding; 031 } 032 033 }