fix #5305 Set max width of combo elements to 50px
authorPatrick Plitzner <p.plitzner@bgbm.org>
Wed, 10 Aug 2016 15:50:17 +0000 (17:50 +0200)
committerPatrick Plitzner <p.plitzner@bgbm.org>
Wed, 10 Aug 2016 15:50:17 +0000 (17:50 +0200)
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/combo/TermComboElement.java

index 33b37cb0bf65be9974bf1035eabef78dd49c82a4..e2da02ba34aa27074a8eec4011c0cf49dec0ef83 100644 (file)
@@ -10,6 +10,7 @@ import java.util.Comparator;
 import java.util.List;
 
 import org.eclipse.jface.util.PropertyChangeEvent;
+import org.eclipse.jface.viewers.ComboViewer;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.DisposeEvent;
 import org.eclipse.swt.events.DisposeListener;
@@ -19,6 +20,7 @@ import org.eclipse.swt.graphics.Color;
 import org.eclipse.swt.widgets.Combo;
 import org.eclipse.swt.widgets.Label;
 import org.eclipse.swt.widgets.Listener;
+import org.eclipse.ui.forms.widgets.TableWrapData;
 
 import eu.etaxonomy.cdm.model.common.DefinedTermBase;
 import eu.etaxonomy.cdm.model.common.TermType;
@@ -108,11 +110,15 @@ public class TermComboElement<T extends DefinedTermBase>
         }
 
         // create combo
-        combo = new Combo(getLayoutComposite(), SWT.BORDER | SWT.READ_ONLY );//FIXME: removed this parameter seems break windows version: | style
+        ComboViewer viewer = new ComboViewer(getLayoutComposite(), SWT.BORDER | SWT.READ_ONLY );
+        combo = viewer.getCombo();
         addControl(combo);
-        combo.setLayoutData(LayoutConstants.FILL_HORIZONTALLY());
+        TableWrapData fill_HORIZONTALLY = LayoutConstants.FILL_HORIZONTALLY();
+        combo.setLayoutData(fill_HORIZONTALLY);
+        fill_HORIZONTALLY.maxWidth = 50;
         combo.setVisibleItemCount(DEFAULT_VISIBLE_ITEMS);
 
+
         if(termType!=null){
             //TODO try to remove generic T and avoid classes to be used
             populateTerms((List<T>) getTermManager().getPreferredTerms(termType));