Fix method name.
[gpl/argeo-suite.git] / core / org.argeo.entity.ui / src / org / argeo / entity / ui / forms / MultiTermsPart.java
index 436cc17b89457e9e99c62ccfd65fca6249873953..8d407638626ecc8885b08b2b78d53b47f86bc591 100644 (file)
@@ -41,19 +41,24 @@ public class MultiTermsPart extends AbstractTermsPart {
        @Override
        protected Control createControl(Composite box, String style) {
                Composite placeholder = new Composite(box, SWT.NONE);
-               RowLayout rl = new RowLayout(SWT.HORIZONTAL);
-               rl.wrap = true;
+
+               boolean vertical = SWT.VERTICAL == (getStyle() & SWT.VERTICAL);
+               RowLayout rl = new RowLayout(vertical ? SWT.VERTICAL : SWT.HORIZONTAL);
+               rl = CmsUiUtils.noMarginsRowLayout(rl);
+//             rl.wrap = true;
+//             rl.justify = true;
                placeholder.setLayout(rl);
                List<Term> currentValue = getValue();
-               if (currentValue != null && !currentValue.isEmpty())
+               if (currentValue != null && !currentValue.isEmpty()) {
                        for (Term value : currentValue) {
                                Composite block = new Composite(placeholder, SWT.NONE);
                                block.setLayout(CmsUiUtils.noSpaceGridLayout(3));
-                               Label lbl = new Label(block, SWT.SINGLE);
+                               Label lbl = new Label(block, SWT.NONE);
                                String display = getTermLabel(value);
                                lbl.setText(display);
                                CmsUiUtils.style(lbl, style == null ? FormStyle.propertyText.style() : style);
-                               if (editable)
+                               processTermListLabel(value, lbl);
+                               if (isEditable())
                                        lbl.addMouseListener((MouseDoubleClick) (e) -> {
                                                startEditing();
                                        });
@@ -76,8 +81,8 @@ public class MultiTermsPart extends AbstractTermsPart {
 
                                }
                        }
-               else {// empty
-                       if (editable && !isEditing()) {
+               else {// empty
+                       if (isEditable() && !isEditing()) {
                                ToolBar toolBar = new ToolBar(placeholder, SWT.HORIZONTAL);
                                ToolItem addItem = new ToolItem(toolBar, SWT.FLAT);
                                styleAdd(addItem);
@@ -181,7 +186,7 @@ public class MultiTermsPart extends AbstractTermsPart {
                        terms: for (String str : curr) {
                                Term term = termsManager.getTerm(str);
                                if (term == null) {
-                                       log.warn("Ignoring term " + str + " as it was not found.");
+                                       log.warn("Ignoring term " + str + " for " + getNode() + ", as it was not found.");
                                        continue terms;
                                }
                                res.add(term);