r997 - in lutinjaxx/trunk/jaxx-core/src/main/java/jaxx: runtime tags/validator
Author: tchemit Date: 2008-10-25 19:57:53 +0000 (Sat, 25 Oct 2008) New Revision: 997 Modified: lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/Util.java lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/tags/validator/BeanValidatorHandler.java Log: register only one ErrorListMouseListener Modified: lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/Util.java =================================================================== --- lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/Util.java 2008-10-25 19:47:06 UTC (rev 996) +++ lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/Util.java 2008-10-25 19:57:53 UTC (rev 997) @@ -1,13 +1,16 @@ package jaxx.runtime; +import jaxx.runtime.validator.ErrorListMouseListener; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.jdesktop.jxlayer.JXLayer; import javax.swing.JComponent; +import javax.swing.JList; import java.awt.Component; import java.awt.Container; import java.awt.Dimension; +import java.awt.event.MouseListener; import java.beans.BeanInfo; import java.beans.IntrospectionException; import java.beans.Introspector; @@ -343,4 +346,18 @@ layer.add(component); return layer; } + + public static void registerErrorListMouseListener(JList list) { + if (list == null) { + return; + } + for (MouseListener listener : list.getMouseListeners()) { + if (listener instanceof ErrorListMouseListener) { + // already have a such listener + log.info("already registered a such MouseListener : " + listener); + return; + } + } + list.addMouseListener(new ErrorListMouseListener()); + } } Modified: lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/tags/validator/BeanValidatorHandler.java =================================================================== --- lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/tags/validator/BeanValidatorHandler.java 2008-10-25 19:47:06 UTC (rev 996) +++ lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/tags/validator/BeanValidatorHandler.java 2008-10-25 19:57:53 UTC (rev 997) @@ -11,8 +11,8 @@ import jaxx.introspection.JAXXPropertyDescriptor; import jaxx.reflect.ClassDescriptor; import jaxx.reflect.ClassDescriptorLoader; +import jaxx.runtime.Util; import jaxx.runtime.validator.BeanValidator; -import jaxx.runtime.validator.ErrorListMouseListener; import jaxx.runtime.validator.ui.AbstractBeanValidatorUI; import jaxx.tags.DefaultObjectHandler; import jaxx.types.TypeManager; @@ -314,7 +314,7 @@ } } - String code = errorList + ".addMouseListener(new " + ErrorListMouseListener.class.getName() + "());"; + String code = Util.class.getName() + ".registerErrorListMouseListener(" + errorList + ");"; appendAdditionCode(code); return false;
participants (1)
-
tchemit@users.labs.libre-entreprise.org