From ddec3a2a70dae860be1c9ddcd91e30d79e24d95f Mon Sep 17 00:00:00 2001 From: Carlos Ruiz Date: Fri, 21 Jun 2013 20:28:31 -0500 Subject: [PATCH] IDEMPIERE-1076 LocationDialog opened from QuickEntry : Select city from the list close the panel / based on patch from Carlos Sanchez --- .../adempiere/webui/editor/WSearchEditor.java | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WSearchEditor.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WSearchEditor.java index 12301d0c3c..0a628599b7 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WSearchEditor.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WSearchEditor.java @@ -27,9 +27,11 @@ import java.sql.SQLException; import java.util.logging.Level; import org.adempiere.util.Callback; +import org.adempiere.webui.LayoutUtils; import org.adempiere.webui.ValuePreference; import org.adempiere.webui.adwindow.ADTabpanel; import org.adempiere.webui.adwindow.ADWindow; +import org.adempiere.webui.adwindow.ADWindowContent; import org.adempiere.webui.adwindow.IFieldEditorContainer; import org.adempiere.webui.apps.AEnv; import org.adempiere.webui.component.Searchbox; @@ -90,6 +92,8 @@ public class WSearchEditor extends WEditor implements ContextMenuListener, Value private static final String IN_PROGRESS_IMAGE = "~./zk/img/progress3.gif"; + private ADWindow adwindow; + public WSearchEditor (GridField gridField) { super(new CustomSearchBox(), gridField); @@ -504,6 +508,11 @@ public class WSearchEditor extends WEditor implements ContextMenuListener, Value vqe.addEventListener(DialogEvents.ON_WINDOW_CLOSE, new EventListener() { @Override public void onEvent(Event event) throws Exception { + if (adwindow != null) + { + adwindow.getADWindowContent().hideBusyMask(); + adwindow = null; + } // get result int result = vqe.getRecord_ID(); @@ -520,8 +529,16 @@ public class WSearchEditor extends WEditor implements ContextMenuListener, Value } }); - vqe.setVisible(true); - AEnv.showWindow(vqe); + vqe.setSizable(true); + adwindow = ADWindow.findADWindow(getComponent()); + if (adwindow != null) { + ADWindowContent content = adwindow.getADWindowContent(); + content.getComponent().getParent().appendChild(vqe); + content.showBusyMask(vqe); + LayoutUtils.openOverlappedWindow(content.getComponent().getParent(), vqe, "middle_center"); + } else { + AEnv.showWindow(vqe); + } } // actionQuickEntry private void actionButton(String queryValue)