Reorder Partners columns (not working)
authorVásáry Dániel <vasary@elgekko.net>
Mon, 26 Feb 2024 20:44:21 +0000 (21:44 +0100)
committerVásáry Dániel <vasary@elgekko.net>
Mon, 26 Feb 2024 20:44:21 +0000 (21:44 +0100)
lis-ui/src/main/java/hu/user/lis/ui/data/common/CachedSpringDataModel.java
lis-ui/src/main/java/hu/user/lis/ui/view/renderer/ReorderedItemsRenderer.java

index d9f9aed2de0e90d223b28da7d3f3118407c901f2..dff62ba5db86d060cd618eb6d78e2c78610d002e 100644 (file)
@@ -14,6 +14,7 @@ import org.springframework.stereotype.Component;
 import org.zkoss.bind.BindUtils;
 import org.zkoss.zul.FieldComparator;
 import org.zkoss.zul.Listheader;
+import org.zkoss.zul.event.ListDataEvent;
 
 import java.util.*;
 import java.util.stream.Collectors;
@@ -138,9 +139,7 @@ public abstract class CachedSpringDataModel<T> extends CachedDataModel<T> {
         renderer.getColumnSettings()[dragColIndex] = dropNode;
         saveProfileSetting();
         BindUtils.postNotifyChange(this, "columnSettings");
-
-
-        //fireEvent(ListDataEvent.STRUCTURE_CHANGED, -1, -1);
+        fireEvent(ListDataEvent.STRUCTURE_CHANGED, -1, -1);
     }
 
 }
index d396035380480b7856bdcc13587f2be9401c8b0b..bf0e3016aa0d9f510e44d7f998c94c5e48f794a5 100644 (file)
@@ -7,7 +7,7 @@ import lombok.extern.log4j.Log4j2;
 import org.springframework.stereotype.Component;
 import org.zkoss.bind.Binder;
 import org.zkoss.bind.impl.AbstractForEachStatus;
-import org.zkoss.bind.impl.AbstractRenderer;
+import org.zkoss.bind.impl.BindListitemRenderer;
 import org.zkoss.bind.impl.BinderUtil;
 import org.zkoss.bind.impl.IndirectBinding;
 import org.zkoss.lang.Objects;
@@ -16,11 +16,9 @@ import org.zkoss.zk.ui.util.ForEachStatus;
 import org.zkoss.zk.ui.util.Template;
 import org.zkoss.zul.*;
 
-import java.io.Serializable;
-
 @Log4j2
 @Component
-public class ReorderedItemsRenderer extends AbstractRenderer implements ListitemRenderer<Object>, Serializable {
+public class ReorderedItemsRenderer extends BindListitemRenderer {
     //kell egy index map, es a
 
     @Getter
@@ -29,12 +27,13 @@ public class ReorderedItemsRenderer extends AbstractRenderer implements Listitem
 
     @Override
     public void render(Listitem item, final Object data, final int index) throws Exception {
-        int mappedIndex = columnSettings[index].getIndex();
-        log.info("Rendering {} {} {}", item.getIndex(), item.getLabel(), data);
+        log.info("Rendering item index {}, index {}", item.getIndex(), index);
+//    int mappedIndex = columnSettings[index].getIndex();
         final Listbox listbox = (Listbox) item.getParent();
         final int size = listbox.getModel().getSize();
         String subtype = item instanceof Listgroup ? "group" : (item instanceof Listgroupfoot ? "groupfoot" : null);
-        Template tm = this.resolveTemplate(listbox, item, data, mappedIndex, size, "model", subtype);
+        Template tm = this.resolveTemplate(listbox, item, data, index, size, "model", subtype);
+        //((ComponentInfo) (tm)._tempInfo._children.get(0))._children
         if (tm == null) {
             item.setLabel(Objects.toString(data));
             item.setValue(data);
@@ -95,7 +94,7 @@ public class ReorderedItemsRenderer extends AbstractRenderer implements Listitem
                     return nli;
                 }
             });
-            this.addItemReference(listbox, nli, mappedIndex, varnm);
+            this.addItemReference(listbox, nli, index, varnm);
             nli.setAttribute(itervarnm, iterStatus);
             if (nli instanceof Listgroup && item instanceof Listgroup) {
                 ((Listgroup) nli).setOpen(((Listgroup) item).isOpen());
@@ -108,7 +107,7 @@ public class ReorderedItemsRenderer extends AbstractRenderer implements Listitem
                 nli.removeAttribute("$TemplateVar$");
             }
 
-            this.addTemplateTracking(listbox, nli, data, mappedIndex, size);
+            this.addTemplateTracking(listbox, nli, data, index, size);
             if (nli.getValue() == null) {
                 nli.setValue(data);
             }