From a5a198f3586b2f91cc25a229bc130c29ecadc4d8 Mon Sep 17 00:00:00 2001 From: Juan David Arboleda Date: Wed, 5 Dec 2012 12:43:21 -0500 Subject: [PATCH] IDEMPIERE-457 Tab Editor (to ease positioning of fields) / implemente better grid behavior for droppable empty spaces --- .../adempiere/webui/apps/form/WTabEditor.java | 26 +++++++++++-------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/apps/form/WTabEditor.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/apps/form/WTabEditor.java index b78b997fe9..6e9ffd5dcf 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/apps/form/WTabEditor.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/apps/form/WTabEditor.java @@ -214,10 +214,11 @@ public class WTabEditor extends TabEditor implements IFormController, EventListe if (!Util.isEmpty(fieldGroup) && !fieldGroup.equals(currentFieldGroup)) // group changed { currentFieldGroup = fieldGroup; - - if (numCols - actualxpos + 1 > 0) { - row.appendCellChild(createSpacer(), numCols - actualxpos + 1); - setLastCellProps(row.getLastCell(), actualxpos, field.getSeqNo()); + + while(numCols - actualxpos + 1 > 0) { + row.appendCellChild(createSpacer(), 1); + setLastCellProps(row.getLastCell(), actualxpos, field.getSeqNo()); + actualxpos++; } row.setGroup(currentGroup); rows.appendChild(row); @@ -259,9 +260,10 @@ public class WTabEditor extends TabEditor implements IFormController, EventListe //normal field if (gridField.getXPosition() <= actualxpos) { // Fill right part of the row with spacers until number of columns - if (numCols - actualxpos + 1 > 0) { - row.appendCellChild(createSpacer(), numCols - actualxpos + 1); - setLastCellProps(row.getLastCell(), actualxpos, field.getSeqNo()); + while(numCols - actualxpos + 1 > 0) { + row.appendCellChild(createSpacer(), 1); + setLastCellProps(row.getLastCell(), actualxpos, field.getSeqNo()); + actualxpos++; } row.setGroup(currentGroup); rows.appendChild(row); @@ -329,10 +331,12 @@ public class WTabEditor extends TabEditor implements IFormController, EventListe lastseq = field.getSeqNo(); } - if (numCols - actualxpos + 1 > 0){ - row.appendCellChild(createSpacer(), numCols - actualxpos + 1); - // make last empty space droppable - setLastCellProps(row.getLastCell(), actualxpos, lastseq + 10); + while(numCols - actualxpos + 1 > 0) { + row.appendCellChild(createSpacer(), 1); + lastseq = lastseq + 10; + // make every empty space droppable at the end + setLastCellProps(row.getLastCell(), actualxpos, lastseq); + actualxpos++; } row.setGroup(currentGroup); rows.appendChild(row);