001    package org.springframework.richclient.samples.dataeditor.ui;
002    
003    import org.springframework.binding.form.FormModel;
004    import org.springframework.richclient.form.binding.swing.editor.AbstractLookupBinder;
005    import org.springframework.richclient.form.binding.swing.editor.AbstractLookupBinding;
006    import org.springframework.richclient.samples.dataeditor.domain.Supplier;
007    import org.springframework.richclient.samples.dataeditor.domain.SupplierFilter;
008    
009    import java.util.Map;
010    import java.awt.*;
011    
012    public class SupplierBinder extends AbstractLookupBinder
013    {
014        public SupplierBinder()
015        {
016            super("supplierDataEditor");
017        }
018    
019        protected AbstractLookupBinding getLookupBinding(FormModel formModel, String formPropertyPath, Map context)
020        {
021            return new AbstractLookupBinding(getDataEditor(), formModel, formPropertyPath)
022            {
023                public String getObjectLabel(Object o)
024                {
025                    return ((Supplier) o).getName();
026                }
027    
028                protected Object createFilterFromString(String textFieldValue)
029                {
030                    SupplierFilter s = new SupplierFilter();
031                    s.setNameContains(textFieldValue);
032                    return s;
033                }
034    
035                @Override
036                public Dimension getDialogSize()
037                {
038                    return new Dimension(800,600);
039                }
040            };
041        }
042    }