[ 2656716 ] Focus management enhancement
- Regression : button with pull down menu not working. - Grid sometime render twice. - javadoc - unuse import
This commit is contained in:
parent
66e7a7d0ff
commit
4b8d6dca2c
|
@ -16,20 +16,13 @@
|
||||||
*****************************************************************************/
|
*****************************************************************************/
|
||||||
package org.adempiere.webui;
|
package org.adempiere.webui;
|
||||||
|
|
||||||
import java.sql.PreparedStatement;
|
import java.sql.*;
|
||||||
import java.sql.ResultSet;
|
import java.util.*;
|
||||||
import java.sql.SQLException;
|
import java.util.logging.*;
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.logging.Level;
|
|
||||||
|
|
||||||
import org.adempiere.webui.apps.AEnv;
|
import org.adempiere.webui.apps.AEnv;
|
||||||
import org.compiere.model.MQuery;
|
import org.compiere.model.*;
|
||||||
import org.compiere.model.MRMA;
|
import org.compiere.util.*;
|
||||||
import org.compiere.util.CLogger;
|
|
||||||
import org.compiere.util.DB;
|
|
||||||
import org.compiere.util.Env;
|
|
||||||
import org.compiere.util.KeyNamePair;
|
|
||||||
import org.compiere.util.Msg;
|
|
||||||
import org.zkoss.zk.ui.Component;
|
import org.zkoss.zk.ui.Component;
|
||||||
import org.zkoss.zk.ui.event.Event;
|
import org.zkoss.zk.ui.event.Event;
|
||||||
import org.zkoss.zk.ui.event.EventListener;
|
import org.zkoss.zk.ui.event.EventListener;
|
||||||
|
|
|
@ -27,14 +27,12 @@ import java.util.logging.Level;
|
||||||
|
|
||||||
import org.adempiere.webui.LayoutUtils;
|
import org.adempiere.webui.LayoutUtils;
|
||||||
import org.adempiere.webui.event.ToolbarListener;
|
import org.adempiere.webui.event.ToolbarListener;
|
||||||
import org.adempiere.webui.panel.IADTabpanel;
|
|
||||||
import org.adempiere.webui.session.SessionManager;
|
import org.adempiere.webui.session.SessionManager;
|
||||||
import org.compiere.model.MRole;
|
import org.compiere.model.MRole;
|
||||||
import org.compiere.util.CLogger;
|
import org.compiere.util.CLogger;
|
||||||
import org.compiere.util.Env;
|
import org.compiere.util.Env;
|
||||||
import org.compiere.util.Msg;
|
import org.compiere.util.Msg;
|
||||||
import org.zkoss.zk.ui.Component;
|
import org.zkoss.zk.ui.Component;
|
||||||
import org.zkoss.zk.ui.HtmlBasedComponent;
|
|
||||||
import org.zkoss.zk.ui.event.Event;
|
import org.zkoss.zk.ui.event.Event;
|
||||||
import org.zkoss.zk.ui.event.EventListener;
|
import org.zkoss.zk.ui.event.EventListener;
|
||||||
import org.zkoss.zk.ui.event.Events;
|
import org.zkoss.zk.ui.event.Events;
|
||||||
|
@ -90,13 +88,11 @@ public class CWindowToolbar extends FToolbar implements EventListener
|
||||||
|
|
||||||
// Elaine 2008/12/04
|
// Elaine 2008/12/04
|
||||||
/** Show Personal Lock */
|
/** Show Personal Lock */
|
||||||
public boolean isPersonalLock = MRole.getDefault().isPersonalLock();
|
public boolean isPersonalLock = MRole.getDefault().isPersonalLock();
|
||||||
private boolean isAllowProductInfo = MRole.getDefault().isAllow_Info_Product();
|
private boolean isAllowProductInfo = MRole.getDefault().isAllow_Info_Product();
|
||||||
|
|
||||||
private int windowNo = 0;
|
private int windowNo = 0;
|
||||||
|
|
||||||
private IADTab adTab = null;
|
|
||||||
|
|
||||||
/** Last Modifier of Action Event */
|
/** Last Modifier of Action Event */
|
||||||
// public int lastModifiers;
|
// public int lastModifiers;
|
||||||
//
|
//
|
||||||
|
@ -145,7 +141,7 @@ public class CWindowToolbar extends FToolbar implements EventListener
|
||||||
addSeparator();
|
addSeparator();
|
||||||
btnLock = createButton("Lock", "Lock", "Lock"); // Elaine 2008/12/04
|
btnLock = createButton("Lock", "Lock", "Lock"); // Elaine 2008/12/04
|
||||||
btnLock.setVisible(isPersonalLock);
|
btnLock.setVisible(isPersonalLock);
|
||||||
btnZoomAcross = createButton("ZoomAcross", "ZoomAcross", "ZoomAcross");
|
btnZoomAcross = createButton("ZoomAcross", "ZoomAcross", "ZoomAcross");
|
||||||
btnActiveWorkflows = createButton("ActiveWorkflows", "WorkFlow", "WorkFlow");
|
btnActiveWorkflows = createButton("ActiveWorkflows", "WorkFlow", "WorkFlow");
|
||||||
btnRequests = createButton("Requests", "Request", "Request");
|
btnRequests = createButton("Requests", "Request", "Request");
|
||||||
btnProductInfo = createButton("ProductInfo", "Product", "InfoProduct");
|
btnProductInfo = createButton("ProductInfo", "Product", "InfoProduct");
|
||||||
|
@ -291,7 +287,6 @@ public class CWindowToolbar extends FToolbar implements EventListener
|
||||||
public void onEvent(Event event)
|
public void onEvent(Event event)
|
||||||
{
|
{
|
||||||
String eventName = event.getName();
|
String eventName = event.getName();
|
||||||
Component eventComp = event.getTarget();
|
|
||||||
|
|
||||||
if(eventName.equals(Events.ON_CLICK))
|
if(eventName.equals(Events.ON_CLICK))
|
||||||
{
|
{
|
||||||
|
@ -342,12 +337,6 @@ public class CWindowToolbar extends FToolbar implements EventListener
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.event = null;
|
this.event = null;
|
||||||
if (adTab != null) {
|
|
||||||
IADTabpanel adTabPanel = adTab.getSelectedTabpanel();
|
|
||||||
if (adTabPanel != null && adTabPanel instanceof HtmlBasedComponent) {
|
|
||||||
((HtmlBasedComponent)adTabPanel).focus();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void enableHistoryRecords(boolean enabled)
|
public void enableHistoryRecords(boolean enabled)
|
||||||
|
@ -558,13 +547,4 @@ public class CWindowToolbar extends FToolbar implements EventListener
|
||||||
public void setWindowNo(int windowNo) {
|
public void setWindowNo(int windowNo) {
|
||||||
this.windowNo = windowNo;
|
this.windowNo = windowNo;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @param adTab
|
|
||||||
*/
|
|
||||||
public void setADTab(IADTab adTab) {
|
|
||||||
this.adTab = adTab;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -75,6 +75,10 @@ public class GridPanel extends Borderlayout implements EventListener
|
||||||
|
|
||||||
public static final String PAGE_SIZE_KEY = "ZK_PAGING_SIZE";
|
public static final String PAGE_SIZE_KEY = "ZK_PAGING_SIZE";
|
||||||
|
|
||||||
|
//copy from org.zkoss.zul.Grid
|
||||||
|
private static final String ATTR_ON_INIT_RENDER_POSTED =
|
||||||
|
"org.zkoss.zul.Grid.onInitLaterPosted";
|
||||||
|
|
||||||
public GridPanel()
|
public GridPanel()
|
||||||
{
|
{
|
||||||
this(0);
|
this(0);
|
||||||
|
@ -175,18 +179,24 @@ public class GridPanel extends Borderlayout implements EventListener
|
||||||
renderer.stopEditing(false);
|
renderer.stopEditing(false);
|
||||||
if (rowIndex >= 0 && pgIndex >= 0) {
|
if (rowIndex >= 0 && pgIndex >= 0) {
|
||||||
listModel.updateComponent(pgIndex);
|
listModel.updateComponent(pgIndex);
|
||||||
//this is needed to make focus and auto scroll work
|
//don't have to call renderRow if render event have been posted
|
||||||
org.zkoss.zul.Row row = (org.zkoss.zul.Row)listbox.getRows().getChildren().get(pgIndex);
|
if (listbox.getAttribute(ATTR_ON_INIT_RENDER_POSTED) == null) {
|
||||||
listbox.renderRow(row);
|
//this is needed to make focus and auto scroll work
|
||||||
|
org.zkoss.zul.Row row = (org.zkoss.zul.Row)listbox.getRows().getChildren().get(pgIndex);
|
||||||
|
listbox.renderRow(row);
|
||||||
|
}
|
||||||
Events.echoEvent("onPostRenderSelectedRow", this, null);
|
Events.echoEvent("onPostRenderSelectedRow", this, null);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
renderer.stopEditing(false);
|
renderer.stopEditing(false);
|
||||||
if (rowIndex >= 0) {
|
if (rowIndex >= 0) {
|
||||||
listModel.updateComponent(rowIndex);
|
listModel.updateComponent(rowIndex);
|
||||||
//this is needed to make focus and auto scroll work
|
//don't have to call renderRow if render event have been posted
|
||||||
org.zkoss.zul.Row row = (org.zkoss.zul.Row)listbox.getRows().getChildren().get(rowIndex);
|
if (listbox.getAttribute(ATTR_ON_INIT_RENDER_POSTED) == null) {
|
||||||
listbox.renderRow(row);
|
//this is needed to make focus and auto scroll work
|
||||||
|
org.zkoss.zul.Row row = (org.zkoss.zul.Row)listbox.getRows().getChildren().get(rowIndex);
|
||||||
|
listbox.renderRow(row);
|
||||||
|
}
|
||||||
Events.echoEvent("onPostRenderSelectedRow", this, null);
|
Events.echoEvent("onPostRenderSelectedRow", this, null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -199,6 +209,8 @@ public class GridPanel extends Borderlayout implements EventListener
|
||||||
renderer.setFocusToField();
|
renderer.setFocusToField();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* set paging size
|
* set paging size
|
||||||
* @param pageSize
|
* @param pageSize
|
||||||
|
|
|
@ -177,6 +177,10 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
initComponents();
|
initComponents();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param parent
|
||||||
|
* @return Component
|
||||||
|
*/
|
||||||
public Component createPart(Object parent)
|
public Component createPart(Object parent)
|
||||||
{
|
{
|
||||||
if (parent instanceof Component)
|
if (parent instanceof Component)
|
||||||
|
@ -185,16 +189,20 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
adTab = createADTab();
|
adTab = createADTab();
|
||||||
adTab.addSelectionEventListener(this);
|
adTab.addSelectionEventListener(this);
|
||||||
|
|
||||||
toolbar.setADTab(adTab);
|
|
||||||
|
|
||||||
return super.createPart(parent);
|
return super.createPart(parent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return StatusBarPanel
|
||||||
|
*/
|
||||||
public StatusBarPanel getStatusBar()
|
public StatusBarPanel getStatusBar()
|
||||||
{
|
{
|
||||||
return statusBar;
|
return statusBar;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return boolean
|
||||||
|
*/
|
||||||
public boolean isEmbedded() {
|
public boolean isEmbedded() {
|
||||||
return embeddedTabindex >= 0;
|
return embeddedTabindex >= 0;
|
||||||
}
|
}
|
||||||
|
@ -208,8 +216,23 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
statusBar = new StatusBarPanel();
|
statusBar = new StatusBarPanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return IADTab
|
||||||
|
*/
|
||||||
protected abstract IADTab createADTab();
|
protected abstract IADTab createADTab();
|
||||||
|
|
||||||
|
private void focusToActivePanel() {
|
||||||
|
IADTabpanel adTabPanel = adTab.getSelectedTabpanel();
|
||||||
|
if (adTabPanel != null && adTabPanel instanceof HtmlBasedComponent) {
|
||||||
|
((HtmlBasedComponent)adTabPanel).focus();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param adWindowId
|
||||||
|
* @param query
|
||||||
|
* @return boolean
|
||||||
|
*/
|
||||||
public boolean initPanel(int adWindowId, MQuery query)
|
public boolean initPanel(int adWindowId, MQuery query)
|
||||||
{
|
{
|
||||||
// Set AutoCommit for this Window
|
// Set AutoCommit for this Window
|
||||||
|
@ -300,6 +323,10 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param query
|
||||||
|
* @param tabIndex
|
||||||
|
*/
|
||||||
protected void initTab(MQuery query, int tabIndex) {
|
protected void initTab(MQuery query, int tabIndex) {
|
||||||
gridWindow.initTab(tabIndex);
|
gridWindow.initTab(tabIndex);
|
||||||
|
|
||||||
|
@ -465,9 +492,11 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
{
|
{
|
||||||
setActiveTab(curInd + 1);
|
setActiveTab(curInd + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @see ToolbarListener#onParentRecord()
|
* @see ToolbarListener#onParentRecord()
|
||||||
*/
|
*/
|
||||||
public void onParentRecord()
|
public void onParentRecord()
|
||||||
|
@ -477,6 +506,8 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
{
|
{
|
||||||
setActiveTab(curInd - 1);
|
setActiveTab(curInd - 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -485,6 +516,7 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
public void onFirst()
|
public void onFirst()
|
||||||
{
|
{
|
||||||
curTab.navigate(0);
|
curTab.navigate(0);
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -493,6 +525,7 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
public void onLast()
|
public void onLast()
|
||||||
{
|
{
|
||||||
curTab.navigate(curTab.getRowCount() - 1);
|
curTab.navigate(curTab.getRowCount() - 1);
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -501,6 +534,7 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
public void onNext()
|
public void onNext()
|
||||||
{
|
{
|
||||||
curTab.navigateRelative(+1);
|
curTab.navigateRelative(+1);
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -509,6 +543,7 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
public void onPrevious()
|
public void onPrevious()
|
||||||
{
|
{
|
||||||
curTab.navigateRelative(-1);
|
curTab.navigateRelative(-1);
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Elaine 2008/12/04
|
// Elaine 2008/12/04
|
||||||
|
@ -579,6 +614,7 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
|
|
||||||
history(m_onlyCurrentDays);
|
history(m_onlyCurrentDays);
|
||||||
}
|
}
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void history(int onlyCurrentDays)
|
private void history(int onlyCurrentDays)
|
||||||
|
@ -623,7 +659,7 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
|
|
||||||
curTab.loadAttachments(); // reload
|
curTab.loadAttachments(); // reload
|
||||||
toolbar.getButton("Attachment").setPressed(curTab.hasAttachment());
|
toolbar.getButton("Attachment").setPressed(curTab.hasAttachment());
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -632,8 +668,12 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
public void onToggle()
|
public void onToggle()
|
||||||
{
|
{
|
||||||
curTabpanel.switchRowPresentation();
|
curTabpanel.switchRowPresentation();
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return boolean
|
||||||
|
*/
|
||||||
public boolean onExit()
|
public boolean onExit()
|
||||||
{
|
{
|
||||||
String message = "Please save changes before closing";
|
String message = "Please save changes before closing";
|
||||||
|
@ -648,6 +688,10 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param event
|
||||||
|
* @see EventListener#onEvent(Event)
|
||||||
|
*/
|
||||||
public void onEvent(Event event)
|
public void onEvent(Event event)
|
||||||
{
|
{
|
||||||
if (!Events.ON_SELECT.equals(event.getName()))
|
if (!Events.ON_SELECT.equals(event.getName()))
|
||||||
|
@ -801,6 +845,10 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param e
|
||||||
|
* @see DataStatusListener#dataStatusChanged(DataStatusEvent)
|
||||||
|
*/
|
||||||
public void dataStatusChanged(DataStatusEvent e)
|
public void dataStatusChanged(DataStatusEvent e)
|
||||||
{
|
{
|
||||||
//ignore non-ui thread event for now.
|
//ignore non-ui thread event for now.
|
||||||
|
@ -943,6 +991,9 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
toolbar.enableReport(true);
|
toolbar.enableReport(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return boolean
|
||||||
|
*/
|
||||||
public boolean isFirstTab()
|
public boolean isFirstTab()
|
||||||
{
|
{
|
||||||
int selTabIndex = adTab.getSelectedIndex();
|
int selTabIndex = adTab.getSelectedIndex();
|
||||||
|
@ -956,6 +1007,7 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
{
|
{
|
||||||
curTab.dataRefreshAll();
|
curTab.dataRefreshAll();
|
||||||
curTabpanel.dynamicDisplay(0);
|
curTabpanel.dynamicDisplay(0);
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -995,6 +1047,7 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
{
|
{
|
||||||
logger.severe("Could not create new record");
|
logger.severe("Could not create new record");
|
||||||
}
|
}
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Elaine 2008/11/19
|
// Elaine 2008/11/19
|
||||||
|
@ -1026,6 +1079,7 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
{
|
{
|
||||||
logger.severe("Could not create new record");
|
logger.severe("Could not create new record");
|
||||||
}
|
}
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
//
|
//
|
||||||
|
|
||||||
|
@ -1059,6 +1113,7 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
|
|
||||||
curTab.dataRefresh(); // Elaine 2008/07/25
|
curTab.dataRefresh(); // Elaine 2008/07/25
|
||||||
}
|
}
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1078,6 +1133,7 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
curTabpanel.dynamicDisplay(0);
|
curTabpanel.dynamicDisplay(0);
|
||||||
toolbar.enableIgnore(false);
|
toolbar.enableIgnore(false);
|
||||||
}
|
}
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1086,6 +1142,7 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
public void onSave()
|
public void onSave()
|
||||||
{
|
{
|
||||||
onSave(true);
|
onSave(true);
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1139,6 +1196,7 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
curTabpanel.dynamicDisplay(0);
|
curTabpanel.dynamicDisplay(0);
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Elaine 2008/12/01
|
// Elaine 2008/12/01
|
||||||
|
@ -1306,6 +1364,7 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
hbox.appendChild(btnCancel);
|
hbox.appendChild(btnCancel);
|
||||||
|
|
||||||
AEnv.showWindow(messagePanel);
|
AEnv.showWindow(messagePanel);
|
||||||
|
focusToActivePanel();
|
||||||
}
|
}
|
||||||
//
|
//
|
||||||
|
|
||||||
|
@ -1669,36 +1728,6 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
if (curTab.needSave(true, false))
|
if (curTab.needSave(true, false))
|
||||||
this.onSave();
|
this.onSave();
|
||||||
|
|
||||||
// hengsin - [ 1639242 ] Inconsistent appearance of Process/Report Dialog
|
|
||||||
// globalqss - Add support for Don't ShowHelp option in Process
|
|
||||||
// this code must be changed if integrated the parameters and help in only one window
|
|
||||||
/*
|
|
||||||
MProcess pr = new MProcess(m_ctx, vButton.getProcess_ID(), null);
|
|
||||||
if (pr.getShowHelp() != null && pr.getShowHelp().equals("N")) {
|
|
||||||
startWOasking = true;
|
|
||||||
}
|
|
||||||
// end globalqss
|
|
||||||
|
|
||||||
// Ask user to start process, if Description and Help is not empty
|
|
||||||
|
|
||||||
if (!startWOasking && !(vButton.getDescription().equals("") && vButton.getHelp().equals("")))
|
|
||||||
if (!ADialog.ask(m_curWindowNo, this, "StartProcess?",
|
|
||||||
// "<b><i>" + vButton.getText() + "</i></b><br>" +
|
|
||||||
vButton.getDescription() + "\n" + vButton.getHelp()))
|
|
||||||
return;
|
|
||||||
//
|
|
||||||
String title = vButton.getDescription();
|
|
||||||
if (title == null || title.length() == 0)
|
|
||||||
title = vButton.getName();
|
|
||||||
ProcessInfo pi = new ProcessInfo (title, vButton.getProcess_ID(), table_ID, record_ID);
|
|
||||||
pi.setAD_User_ID (Env.getAD_User_ID(m_ctx));
|
|
||||||
pi.setAD_Client_ID (Env.getAD_Client_ID(m_ctx));
|
|
||||||
pi.setIsBatch(batch);
|
|
||||||
|
|
||||||
// Trx trx = Trx.get(Trx.createTrxName("AppsPanel"), true);
|
|
||||||
ProcessCtl.process(this, m_curWindowNo, pi, null); // calls lockUI, unlockUI
|
|
||||||
*/
|
|
||||||
|
|
||||||
if (!getComponent().getDesktop().isServerPushEnabled())
|
if (!getComponent().getDesktop().isServerPushEnabled())
|
||||||
getComponent().getDesktop().enableServerPush(true);
|
getComponent().getDesktop().enableServerPush(true);
|
||||||
|
|
||||||
|
@ -1713,10 +1742,12 @@ public abstract class AbstractADWindowPanel extends AbstractUIPart implements To
|
||||||
dialog.setPosition("center");
|
dialog.setPosition("center");
|
||||||
AEnv.showWindow(dialog);
|
AEnv.showWindow(dialog);
|
||||||
}
|
}
|
||||||
// curTab.dataRefresh();
|
|
||||||
// curTabpanel.dynamicDisplay(0);
|
|
||||||
} // actionButton
|
} // actionButton
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param event
|
||||||
|
* @see ActionListener#actionPerformed(ActionEvent)
|
||||||
|
*/
|
||||||
public void actionPerformed(ActionEvent event)
|
public void actionPerformed(ActionEvent event)
|
||||||
{
|
{
|
||||||
if (event.getSource() instanceof WButtonEditor)
|
if (event.getSource() instanceof WButtonEditor)
|
||||||
|
|
|
@ -41,6 +41,12 @@ public class SessionContextListener implements ExecutionInit,
|
||||||
{
|
{
|
||||||
public static final String SESSION_CTX = "WebUISessionContext";
|
public static final String SESSION_CTX = "WebUISessionContext";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param exec
|
||||||
|
* @param parent
|
||||||
|
*
|
||||||
|
* @see ExecutionInit#init(Execution, Execution)
|
||||||
|
*/
|
||||||
public void init(Execution exec, Execution parent)
|
public void init(Execution exec, Execution parent)
|
||||||
{
|
{
|
||||||
if (parent == null)
|
if (parent == null)
|
||||||
|
@ -62,6 +68,12 @@ public class SessionContextListener implements ExecutionInit,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param exec
|
||||||
|
* @param parent
|
||||||
|
* @param errs
|
||||||
|
* @see ExecutionCleanup#cleanup(Execution, Execution, List)
|
||||||
|
*/
|
||||||
public void cleanup(Execution exec, Execution parent, List errs)
|
public void cleanup(Execution exec, Execution parent, List errs)
|
||||||
{
|
{
|
||||||
if (parent == null)
|
if (parent == null)
|
||||||
|
@ -71,10 +83,20 @@ public class SessionContextListener implements ExecutionInit,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param comp
|
||||||
|
* @param evt
|
||||||
|
* @see EventThreadInit#prepare(Component, Event)
|
||||||
|
*/
|
||||||
public void prepare(Component comp, Event evt)
|
public void prepare(Component comp, Event evt)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param comp
|
||||||
|
* @param evt
|
||||||
|
* @see EventThreadInit#init(Component, Event)
|
||||||
|
*/
|
||||||
public boolean init(Component comp, Event evt)
|
public boolean init(Component comp, Event evt)
|
||||||
{
|
{
|
||||||
ServerContext ctx = (ServerContext) Executions.getCurrent().getAttribute(
|
ServerContext ctx = (ServerContext) Executions.getCurrent().getAttribute(
|
||||||
|
@ -87,10 +109,20 @@ public class SessionContextListener implements ExecutionInit,
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param comp
|
||||||
|
* @param evt
|
||||||
|
* @see EventThreadResume#beforeResume(Component, Event)
|
||||||
|
*/
|
||||||
public void beforeResume(Component comp, Event evt)
|
public void beforeResume(Component comp, Event evt)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param comp
|
||||||
|
* @param evt
|
||||||
|
* @see EventThreadResume#afterResume(Component, Event)
|
||||||
|
*/
|
||||||
public void afterResume(Component comp, Event evt)
|
public void afterResume(Component comp, Event evt)
|
||||||
{
|
{
|
||||||
ServerContext ctx = (ServerContext) Executions.getCurrent().getAttribute(
|
ServerContext ctx = (ServerContext) Executions.getCurrent().getAttribute(
|
||||||
|
@ -98,6 +130,11 @@ public class SessionContextListener implements ExecutionInit,
|
||||||
ServerContext.setCurrentInstance(ctx);
|
ServerContext.setCurrentInstance(ctx);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param comp
|
||||||
|
* @param evt
|
||||||
|
* @see EventThreadResume#abortResume(Component, Event)
|
||||||
|
*/
|
||||||
public void abortResume(Component comp, Event evt)
|
public void abortResume(Component comp, Event evt)
|
||||||
{
|
{
|
||||||
// do nothing
|
// do nothing
|
||||||
|
|
Loading…
Reference in New Issue