From bc94cb2c3d55bd02c568421233dd6e5bdabb04da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jacobo=20Aragunde=20P=C3=A9rez?= Date: Fri, 2 Mar 2012 13:37:16 +0100 Subject: [PATCH] Bug #1344: Fix bug moving the addition of ConstraintViolationListeners to doAfterCompose instead of constructor. When doAfterCompose is run, we are sure we are ready to send messages to the client side. FEA: ItEr76S04BugFixing --- .../org/zkoss/ganttz/DependencyComponent.java | 36 ++++++++++--------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/DependencyComponent.java b/ganttzk/src/main/java/org/zkoss/ganttz/DependencyComponent.java index 16afd3359..45d6315db 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/DependencyComponent.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/DependencyComponent.java @@ -73,23 +73,6 @@ public class DependencyComponent extends XulElement implements AfterCompose { this.source = source; this.destination = destination; this.dependency = dependency; - violationListener = Constraint - .onlyOnZKExecution(new IConstraintViolationListener() { - - @Override - public void constraintViolated(Constraint constraint, GanttDate value) { - violated = true; - sendCSSUpdate(); - } - - @Override - public void constraintSatisfied(Constraint constraint, GanttDate value) { - violated = false; - sendCSSUpdate(); - } - }); - this.dependency.addConstraintViolationListener(violationListener, - Mode.RECEIVE_PENDING); } private void sendCSSUpdate() { @@ -117,6 +100,25 @@ public class DependencyComponent extends XulElement implements AfterCompose { }; this.source.getTask().addFundamentalPropertiesChangeListener(listener); this.destination.getTask().addFundamentalPropertiesChangeListener(listener); + + violationListener = Constraint + .onlyOnZKExecution(new IConstraintViolationListener() { + + @Override + public void constraintViolated(Constraint constraint, GanttDate value) { + violated = true; + sendCSSUpdate(); + } + + @Override + public void constraintSatisfied(Constraint constraint, GanttDate value) { + violated = false; + sendCSSUpdate(); + } + }); + this.dependency.addConstraintViolationListener(violationListener, + Mode.RECEIVE_PENDING); + listenerAdded = true; }