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