IDEMPIERE-488 Detailed Tab Page (Field Sequence) was not get updated when navigating record in master page (Window>Tab)

This commit is contained in:
Heng Sin Low 2012-11-07 10:49:05 +08:00
parent 27d790d1ae
commit 5caa671771
3 changed files with 20 additions and 7 deletions

View File

@ -375,6 +375,13 @@ public class ADSortTab extends Panel implements IADTabpanel
vbox.appendChild(bDown); vbox.appendChild(bDown);
vbox.setWidth("46px"); vbox.setWidth("46px");
hlayout.appendChild(vbox); hlayout.appendChild(vbox);
addEventListener(ON_ACTIVATE_EVENT, new EventListener<Event>() {
@Override
public void onEvent(Event event) throws Exception {
removeAttribute(ATTR_ON_ACTIVATE_POSTED);
}
});
} // Init } // Init
/* (non-Javadoc) /* (non-Javadoc)
@ -831,8 +838,16 @@ public class ADSortTab extends Panel implements IADTabpanel
} }
public void activate(boolean b) { public void activate(boolean b) {
active = b; if (b) {
if (b && !uiCreated) createUI(); if (getAttribute(ATTR_ON_ACTIVATE_POSTED) != null) {
return;
}
setAttribute(ATTR_ON_ACTIVATE_POSTED, Boolean.TRUE);
}
Event event = new Event(ON_ACTIVATE_EVENT, this, b);
Events.postEvent(event);
} }
public void createUI() { public void createUI() {

View File

@ -26,7 +26,6 @@ import java.util.Map.Entry;
import java.util.logging.Level; import java.util.logging.Level;
import org.adempiere.webui.LayoutUtils; import org.adempiere.webui.LayoutUtils;
import org.adempiere.webui.apps.AEnv;
import org.adempiere.webui.component.Borderlayout; import org.adempiere.webui.component.Borderlayout;
import org.adempiere.webui.component.Column; import org.adempiere.webui.component.Column;
import org.adempiere.webui.component.Columns; import org.adempiere.webui.component.Columns;
@ -104,12 +103,8 @@ DataStatusListener, IADTabpanel
{ {
public static final String ON_SWITCH_VIEW_EVENT = "onSwitchView"; public static final String ON_SWITCH_VIEW_EVENT = "onSwitchView";
public static final String ON_ACTIVATE_EVENT = "onActivate";
public static final String ON_DYNAMIC_DISPLAY_EVENT = "onDynamicDisplay"; public static final String ON_DYNAMIC_DISPLAY_EVENT = "onDynamicDisplay";
private static final String ATTR_ON_ACTIVATE_POSTED = "org.adempiere.webui.adwindow.ADTabpanel.onActivatePosted";
/** /**
* *
*/ */

View File

@ -23,6 +23,9 @@ import org.zkoss.zk.ui.Component;
*/ */
public interface IADTabpanel extends Component, Evaluatee { public interface IADTabpanel extends Component, Evaluatee {
public static final String ON_ACTIVATE_EVENT = "onActivate";
public static final String ATTR_ON_ACTIVATE_POSTED = "org.adempiere.webui.adwindow.IADTabpanel.onActivatePosted";
/** /**
* @return display logic * @return display logic
*/ */