From 591c89812187cdbe6ca6f39f2caa26cc9e21f29a Mon Sep 17 00:00:00 2001 From: Manuel Rego Casasnovas Date: Thu, 1 Oct 2009 13:09:06 +0200 Subject: [PATCH] ItEr28S14RFVistaGraficaInformacionAvance: Showing basic advance info at planner. --- .../navalplanner/web/planner/DataForPlanner.java | 3 ++- .../org/zkoss/ganttz/DatesMapperOnInterval.java | 1 + .../main/java/org/zkoss/ganttz/TaskComponent.java | 14 ++++++++++++-- .../ganttz/data/DefaultFundamentalProperties.java | 12 +++++++++++- .../ganttz/data/ITaskFundamentalProperties.java | 3 +++ .../src/main/java/org/zkoss/ganttz/data/Task.java | 6 ++++++ ganttzk/src/main/resources/web/ganttz/task.dsp | 4 ++-- .../main/resources/web/ganttz/taskcontainer.dsp | 4 ++-- .../src/main/resources/web/js/ganttz/tasklist.js | 7 +++++++ .../navalplanner/web/planner/DataForPlanner.java | 3 ++- .../web/planner/TaskElementAdapter.java | 10 ++++++++-- .../src/main/webapp/planner/css/ganttzk.css | 1 - 12 files changed, 56 insertions(+), 12 deletions(-) diff --git a/ganttzk-demo-webapp/src/main/java/org/navalplanner/web/planner/DataForPlanner.java b/ganttzk-demo-webapp/src/main/java/org/navalplanner/web/planner/DataForPlanner.java index 642b269ca..fe2a4d9bd 100644 --- a/ganttzk-demo-webapp/src/main/java/org/navalplanner/web/planner/DataForPlanner.java +++ b/ganttzk-demo-webapp/src/main/java/org/navalplanner/web/planner/DataForPlanner.java @@ -1,5 +1,6 @@ package org.navalplanner.web.planner; +import java.math.BigDecimal; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; @@ -182,7 +183,7 @@ public class DataForPlanner { private DefaultFundamentalProperties createTask(String name, Date now, Date end) { return new DefaultFundamentalProperties(name, end, end.getTime() - - now.getTime(), "bla"); + - now.getTime(), "bla", new BigDecimal(0.5)); } private void addNewTask(IContext context) { diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/DatesMapperOnInterval.java b/ganttzk/src/main/java/org/zkoss/ganttz/DatesMapperOnInterval.java index c58420803..ccfc6d6d2 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/DatesMapperOnInterval.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/DatesMapperOnInterval.java @@ -41,4 +41,5 @@ public class DatesMapperOnInterval implements IDatesMapper { public long toMilliseconds(int pixels) { return millisecondsPerPixel * pixels; } + } \ No newline at end of file diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/TaskComponent.java b/ganttzk/src/main/java/org/zkoss/ganttz/TaskComponent.java index 87e4aebee..40456a7ad 100755 --- a/ganttzk/src/main/java/org/zkoss/ganttz/TaskComponent.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/TaskComponent.java @@ -2,6 +2,7 @@ package org.zkoss.ganttz; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; +import java.math.BigDecimal; import java.util.Map; import java.util.UUID; import java.util.regex.Matcher; @@ -152,7 +153,7 @@ public class TaskComponent extends Div implements AfterCompose { new Object[] { calculateClass() })); } - public void afterCompose() { + public final void afterCompose() { updateProperties(); if (propertiesListener == null) { propertiesListener = new PropertyChangeListener() { @@ -274,7 +275,7 @@ public class TaskComponent extends Div implements AfterCompose { super.setParent(parent); } - public void zoomChanged() { + public final void zoomChanged() { updateProperties(); } @@ -291,6 +292,15 @@ public class TaskComponent extends Div implements AfterCompose { if (dependencyList != null) { dependencyList.redrawDependenciesConnectedTo(this); } + updateCompletion(); + } + + private void updateCompletion() { + BigDecimal advancePercentage = task.getAdvancePercentage().multiply( + new BigDecimal(100)); + + response(null, new AuInvoke(this, "resizeCompletionAdvance", + advancePercentage.intValue() + "%")); } private DependencyList getDependencyList() { diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/data/DefaultFundamentalProperties.java b/ganttzk/src/main/java/org/zkoss/ganttz/data/DefaultFundamentalProperties.java index fcbf79c07..714183654 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/data/DefaultFundamentalProperties.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/data/DefaultFundamentalProperties.java @@ -1,5 +1,6 @@ package org.zkoss.ganttz.data; +import java.math.BigDecimal; import java.util.Date; /** @@ -15,15 +16,18 @@ public class DefaultFundamentalProperties implements ITaskFundamentalProperties private String notes; + private BigDecimal advancePercentage; + public DefaultFundamentalProperties() { } public DefaultFundamentalProperties(String name, Date beginDate, - long lengthMilliseconds, String notes) { + long lengthMilliseconds, String notes, BigDecimal advancePercentage) { this.name = name; this.beginDate = beginDate; this.lengthMilliseconds = lengthMilliseconds; this.notes = notes; + this.advancePercentage = advancePercentage; } public String getName() { @@ -61,4 +65,10 @@ public class DefaultFundamentalProperties implements ITaskFundamentalProperties public void setNotes(String notes) { this.notes = notes; } + + @Override + public BigDecimal getAdvancePercentage() { + return advancePercentage; + } + } diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/data/ITaskFundamentalProperties.java b/ganttzk/src/main/java/org/zkoss/ganttz/data/ITaskFundamentalProperties.java index 31690f48d..10bcc1c48 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/data/ITaskFundamentalProperties.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/data/ITaskFundamentalProperties.java @@ -1,5 +1,6 @@ package org.zkoss.ganttz.data; +import java.math.BigDecimal; import java.util.Date; /** @@ -23,4 +24,6 @@ public interface ITaskFundamentalProperties { public void setNotes(String notes); + public BigDecimal getAdvancePercentage(); + } \ No newline at end of file diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/data/Task.java b/ganttzk/src/main/java/org/zkoss/ganttz/data/Task.java index 86af09032..05250c88b 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/data/Task.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/data/Task.java @@ -2,6 +2,7 @@ package org.zkoss.ganttz.data; import java.beans.PropertyChangeListener; import java.beans.PropertyChangeSupport; +import java.math.BigDecimal; import java.util.Date; import java.util.List; @@ -138,4 +139,9 @@ public abstract class Task implements ITaskFundamentalProperties { setVisible(false); } + @Override + public BigDecimal getAdvancePercentage() { + return fundamentalProperties.getAdvancePercentage(); + } + } \ No newline at end of file diff --git a/ganttzk/src/main/resources/web/ganttz/task.dsp b/ganttzk/src/main/resources/web/ganttz/task.dsp index 263dcfab6..888e32bc6 100755 --- a/ganttzk/src/main/resources/web/ganttz/task.dsp +++ b/ganttzk/src/main/resources/web/ganttz/task.dsp @@ -8,7 +8,7 @@
-
-
+
+
diff --git a/ganttzk/src/main/resources/web/ganttz/taskcontainer.dsp b/ganttzk/src/main/resources/web/ganttz/taskcontainer.dsp index 1c6490703..bbd356fb0 100644 --- a/ganttzk/src/main/resources/web/ganttz/taskcontainer.dsp +++ b/ganttzk/src/main/resources/web/ganttz/taskcontainer.dsp @@ -9,8 +9,8 @@
-
-
+
+
diff --git a/ganttzk/src/main/resources/web/js/ganttz/tasklist.js b/ganttzk/src/main/resources/web/js/ganttz/tasklist.js index 450146f2b..7c240147b 100644 --- a/ganttzk/src/main/resources/web/js/ganttz/tasklist.js +++ b/ganttzk/src/main/resources/web/js/ganttz/tasklist.js @@ -405,6 +405,11 @@ zkTask.getElementsByAttribute = function(oElm, strTagName, strAttributeName, return arrReturnElements; } +zkTask.resizeCompletionAdvance = function(cmp, width) { + var completionDiv = YAHOO.util.Selector.query('.completion2', cmp, true); + completionDiv["style"].width = width; +} + YAHOO.example.DDRegion = function(id, sGroup, config) { this.cont = config.cont; YAHOO.example.DDRegion.superclass.constructor.apply(this, arguments); @@ -532,6 +537,8 @@ zkTaskContainer.setClass = function(cmp, newclass) { cmp.className = newclass; }; +zkTaskContainer.resizeCompletionAdvance = zkTask.resizeCompletionAdvance; + /* We will not allow taskcontainer move or resize untill its behaviour its * clearly specified diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/DataForPlanner.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/DataForPlanner.java index 231161bc2..5e239c44d 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/DataForPlanner.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/DataForPlanner.java @@ -2,6 +2,7 @@ package org.navalplanner.web.planner; import static org.navalplanner.web.I18nHelper._; +import java.math.BigDecimal; import java.util.ArrayList; import java.util.Arrays; import java.util.Calendar; @@ -350,7 +351,7 @@ public class DataForPlanner { private DefaultFundamentalProperties createTask(String name, Date now, Date end) { return new DefaultFundamentalProperties(name, end, end.getTime() - - now.getTime(), _("bla")); + - now.getTime(), _("bla"), new BigDecimal(0.5)); } private void addNewTask(IContext context) { diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/TaskElementAdapter.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/TaskElementAdapter.java index 8aa7aef00..6adb000e0 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/TaskElementAdapter.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/TaskElementAdapter.java @@ -1,5 +1,8 @@ package org.navalplanner.web.planner; +import static org.navalplanner.web.I18nHelper._; + +import java.math.BigDecimal; import java.util.ArrayList; import java.util.Collection; import java.util.Date; @@ -16,8 +19,6 @@ import org.zkoss.ganttz.adapters.DomainDependency; import org.zkoss.ganttz.data.DependencyType; import org.zkoss.ganttz.data.ITaskFundamentalProperties; -import static org.navalplanner.web.I18nHelper._; - /** * Responsible of adaptating a {@link TaskElement} into a * {@link ITaskFundamentalProperties}
@@ -97,6 +98,11 @@ public class TaskElementAdapter implements ITaskElementAdapter { + this.lengthMilliseconds)); } + @Override + public BigDecimal getAdvancePercentage() { + return taskElement.getOrderElement().getAdvancePercentage(); + } + } @Override diff --git a/navalplanner-webapp/src/main/webapp/planner/css/ganttzk.css b/navalplanner-webapp/src/main/webapp/planner/css/ganttzk.css index fa95cf0c7..680f8e74e 100644 --- a/navalplanner-webapp/src/main/webapp/planner/css/ganttzk.css +++ b/navalplanner-webapp/src/main/webapp/planner/css/ganttzk.css @@ -152,7 +152,6 @@ zkTasklist.GANTT_PANEL_LEFT = 300 } .completion2 { - width: 50%; height: 5px; /* zkTasklist.HEIGHT_PER_TASK / 2 */ background-color: #75d9b0; z-index: 5;