From a22ba2e85bd6cdd39cce80a64a817039fa3976e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lorenzo=20Tilve=20=C3=81lvaro?= Date: Mon, 3 Oct 2011 21:15:23 +0200 Subject: [PATCH] [Bug #953] Simulated click on progress button when changing type FEA: ItEr75S04BugFixing --- .../main/java/org/zkoss/ganttz/Planner.java | 6 ++++++ .../business/planner/entities/TaskGroup.java | 2 +- .../company/CompanyPlanningController.java | 21 ++++++++++++------- 3 files changed, 20 insertions(+), 9 deletions(-) diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/Planner.java b/ganttzk/src/main/java/org/zkoss/ganttz/Planner.java index 8253560c3..f86c1526e 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/Planner.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/Planner.java @@ -595,6 +595,12 @@ public class Planner extends HtmlMacroComponent { } } + public void forcedShowAdvances() { + if (!isShowingAdvances) { + showAdvances(); + } + } + public void showAdvances() { Button showAdvancesButton = (Button) getFellow("showAdvances"); if (disabilityConfiguration.isAdvancesEnabled()) { diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/planner/entities/TaskGroup.java b/navalplanner-business/src/main/java/org/navalplanner/business/planner/entities/TaskGroup.java index 58b1f07a9..a39dd8f55 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/planner/entities/TaskGroup.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/planner/entities/TaskGroup.java @@ -282,7 +282,7 @@ public class TaskGroup extends TaskElement { * */ public BigDecimal getAdvancePercentage(ProgressType progressType) { - if (isTaskRoot(this)) { + if (isTaskRoot(this) && (progressType != null)) { switch (progressType) { case ALL_NUMHOURS: return getProgressAllByNumHours(); diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/company/CompanyPlanningController.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/company/CompanyPlanningController.java index b7c72ddd5..a78a132f9 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/company/CompanyPlanningController.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/company/CompanyPlanningController.java @@ -50,6 +50,7 @@ import org.zkoss.zk.ui.event.Event; import org.zkoss.zk.ui.event.EventListener; import org.zkoss.zk.ui.event.Events; import org.zkoss.zk.ui.util.Composer; +import org.zkoss.zul.Button; import org.zkoss.zul.Checkbox; import org.zkoss.zul.Combobox; import org.zkoss.zul.Comboitem; @@ -93,6 +94,7 @@ public class CompanyPlanningController implements Composer { } private Combobox cbProgressTypes; + private Button btnShowAdvances; @Override public void doAfterCompose(org.zkoss.zk.ui.Component comp) { @@ -138,19 +140,14 @@ public class CompanyPlanningController implements Composer { if (cbProgressTypes == null) { cbProgressTypes = (Combobox) planner.getFellow("cbProgressTypes"); } + if (btnShowAdvances == null) { + btnShowAdvances = (Button) planner.getFellow("showAdvances"); + } cbProgressTypes.setModel(new ListModelList(ProgressType.getAll())); cbProgressTypes.setItemRenderer(new ProgressTypeRenderer()); // FIXME: Select default configuration option - cbProgressTypes.invalidate(); - - Comboitem item = findListitemValue(cbProgressTypes, - getProgressTypeFromConfiguration()); - - if (item != null) { - cbProgressTypes.setSelectedItem(item); - } // Update completion of tasks on selecting new progress type cbProgressTypes.addEventListener(Events.ON_SELECT, new EventListener() { @@ -158,6 +155,7 @@ public class CompanyPlanningController implements Composer { @Override public void onEvent(Event event) { planner.updateCompletion(getSelectedProgressType().toString()); + planner.forcedShowAdvances(); } private ProgressType getSelectedProgressType() { @@ -168,6 +166,13 @@ public class CompanyPlanningController implements Composer { cbProgressTypes.setVisible(true); + Comboitem item = findListitemValue(cbProgressTypes, + getProgressTypeFromConfiguration()); + + if (item != null) { + cbProgressTypes.setSelectedItem(item); + } + } private static class ProgressTypeRenderer implements ComboitemRenderer {