IColumnCallout extension point - experimentally ready

This commit is contained in:
joergviola 2010-03-11 20:37:31 +00:00
parent 5cee378e9a
commit 87447f5c6c
4 changed files with 15 additions and 11 deletions

View File

@ -2,6 +2,6 @@
<?eclipse version="3.4"?>
<plugin>
<extension-point id="org.adempiere.base.IResourceFinder" name="ResourceFinder" schema="schema/ResourceFinder.exsd"/>
<extension-point id="org.adempiere.base.Callout" name="Callout" schema="schema/org.adempiere.base.Callout.exsd"/>
<extension-point id="org.adempiere.base.IColumnCallout" name="Callout" schema="schema/org.adempiere.base.Callout.exsd"/>
</plugin>

View File

@ -3,9 +3,6 @@ package org.adempiere.base;
import java.net.URL;
import java.util.List;
import org.adempiere.base.equinox.ExtensionList;
import org.compiere.model.Callout;
/**
* This is a facade class for the Service Locator.
* It provides simple access to all core services.

View File

@ -33,6 +33,7 @@ import java.beans.PropertyVetoException;
import java.beans.VetoableChangeListener;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Properties;
import java.util.Set;
import java.util.logging.Level;
@ -48,6 +49,8 @@ import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumn;
import javax.swing.table.TableColumnModel;
import org.adempiere.base.Core;
import org.adempiere.base.IColumnCallout;
import org.adempiere.plaf.AdempiereLookAndFeel;
import org.adempiere.plaf.AdempierePLAF;
import org.compiere.apps.ADialog;
@ -786,12 +789,14 @@ public class GridController extends CPanel
// Process Callout
GridField mField = m_mTab.getField(col);
if (mField != null
&& (mField.getCallout().length() > 0 || m_mTab.hasDependants(mField.getColumnName())))
{
String msg = m_mTab.processFieldChange(mField); // Dependencies & Callout
if (msg.length() > 0)
ADialog.error(m_WindowNo, this, msg);
if (mField!=null) {
List<IColumnCallout> callouts = Core.findCallout(m_mTab.getTableName(), mField.getColumnName());
if (mField.getCallout().length() > 0 || callouts.size()>0 || m_mTab.hasDependants(mField.getColumnName()))
{
String msg = m_mTab.processFieldChange(mField); // Dependencies & Callout
if (msg.length() > 0)
ADialog.error(m_WindowNo, this, msg);
}
}
//if (col >= 0)
dynamicDisplay(col);

View File

@ -40,9 +40,11 @@ the following responsibilities:
<target name="run-standalone">
<move failonerror="false" file="${dist-standalone}/plugins/${adempiere-client}" todir="${dist-standalone}" />
<java dir="${dist-standalone}" fork="true" jvmversion="1.6" jar="${dist-standalone}/${osgi-runtime}">
<java dir="${dist-standalone}" fork="true" jvmversion="1.6" jar="${dist-standalone}/${osgi-runtime}">
<arg value="-console"/>
<arg value="-clean"/>
<jvmarg value="-Xdebug"/>
<jvmarg value="-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"/>
</java>
</target>