From a32bdcbf51557d6f81c4e8c6d81bad28a65185a6 Mon Sep 17 00:00:00 2001 From: Heng Sin Low Date: Sun, 14 Oct 2012 16:23:42 +0800 Subject: [PATCH] IDEMPIERE-369 Master Detail layout improvements. 1) Added top border for form slip bar. 2) Fixed "When you open a document window and there are no 'day' records - it's opened in insert record mode, but the toolbar is all disabled, no undo or save buttons. After you change any field the toolbar is updated correctly." --- .../adwindow/AbstractADWindowContent.java | 19 +++++++++++++++---- .../theme/default/css/theme.css.dsp | 4 ++++ 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/AbstractADWindowContent.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/AbstractADWindowContent.java index 89f0c1579b..9f303e43eb 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/AbstractADWindowContent.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/AbstractADWindowContent.java @@ -451,12 +451,21 @@ public abstract class AbstractADWindowContent extends AbstractUIPart implements private void initQueryOnNew(MQuery result) { GridTab curTab = adTabbox.getSelectedGridTab(); + boolean onNew = false; if (curTab.isHighVolume() && m_findCreateNew) - onNew(); + onNew = true; else if (result == null && curTab.getRowCount() == 0 && Env.isAutoNew(ctx, curWindowNo)) - onNew(); + onNew = true; else if (!curTab.isReadOnly() && curTab.isQueryNewRecord()) - onNew(); + onNew = true; + if (onNew) { + Executions.schedule(AEnv.getDesktop(), new EventListener() { + @Override + public void onEvent(Event event) throws Exception { + onNew(); + } + }, new Event("onInsert")); + } } /** @@ -1211,7 +1220,9 @@ public abstract class AbstractADWindowContent extends AbstractUIPart implements { adTabbox.updateDetailPaneToolbar(changed, readOnly); } - toolbar.enableIgnore(adTabbox.needSave(true, false)); + toolbar.enableIgnore(adTabbox.needSave(true, false) || + adTabbox.getSelectedGridTab().isNew() || + (adTabbox.getSelectedDetailADTabpanel() != null && adTabbox.getSelectedDetailADTabpanel().getGridTab().isNew())); if (changed && !readOnly && !toolbar.isSaveEnable() ) { if (tabPanel.getGridTab().getRecord_ID() > 0) { diff --git a/org.adempiere.ui.zk/theme/default/css/theme.css.dsp b/org.adempiere.ui.zk/theme/default/css/theme.css.dsp index c77723c8a1..897bbce85f 100644 --- a/org.adempiere.ui.zk/theme/default/css/theme.css.dsp +++ b/org.adempiere.ui.zk/theme/default/css/theme.css.dsp @@ -427,6 +427,10 @@ div.wc-modal, div.wc-modal-none, div.wc-highlighted, div.wc-highlighted-none { height: 250px; } +.adwindow-gridview-detail + .z-south-splt { + border-top: 1px solid #C5C5C5; +} + .adwindow-gridview-detail .z-south-body { padding-top: 1px; }