diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/common/Util.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/common/Util.java index 0bde568e8..76a5cffa2 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/common/Util.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/common/Util.java @@ -21,13 +21,16 @@ package org.navalplanner.web.common; import java.math.BigDecimal; +import java.util.ArrayList; import java.util.Date; +import java.util.List; import org.zkoss.zk.ui.Component; 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.event.InputEvent; +import org.zkoss.zkplus.databind.AnnotateDataBinder; import org.zkoss.zkplus.databind.DataBinder; import org.zkoss.zul.Checkbox; import org.zkoss.zul.Combobox; @@ -71,6 +74,22 @@ public class Util { return (DataBinder) component.getVariable("binder", false); } + @SuppressWarnings("unchecked") + public static void createBindingsFor(org.zkoss.zk.ui.Component result) { + List children = new ArrayList( + result.getChildren()); + for (org.zkoss.zk.ui.Component child : children) { + createBindingsFor(child); + } + setBinderFor(result); + } + + private static void setBinderFor(org.zkoss.zk.ui.Component result) { + AnnotateDataBinder binder = new AnnotateDataBinder(result, true); + result.setVariable("binder", binder, true); + binder.loadAll(); + } + /** * Generic interface to represent a class with a typical get method. * @author Manuel Rego Casasnovas diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/tabs/MultipleTabsPlannerController.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/tabs/MultipleTabsPlannerController.java index 57149bf03..613a3b56b 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/tabs/MultipleTabsPlannerController.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/tabs/MultipleTabsPlannerController.java @@ -22,9 +22,6 @@ package org.navalplanner.web.planner.tabs; import static org.navalplanner.web.I18nHelper._; import static org.zkoss.ganttz.adapters.TabsConfiguration.configure; -import java.util.ArrayList; -import java.util.List; - import org.navalplanner.business.common.IAdHocTransactionService; import org.navalplanner.business.orders.daos.IOrderDAO; import org.navalplanner.business.orders.entities.Order; @@ -52,7 +49,6 @@ 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.zkplus.databind.AnnotateDataBinder; /** * Creates and handles several tabs @@ -66,22 +62,6 @@ public class MultipleTabsPlannerController implements Composer { public static final String BREADCRUMBS_SEPARATOR = "/common/img/migas_separacion.gif"; - @SuppressWarnings("unchecked") - static void createBindingsFor(org.zkoss.zk.ui.Component result) { - List children = new ArrayList( - result.getChildren()); - for (org.zkoss.zk.ui.Component child : children) { - createBindingsFor(child); - } - setBinderFor(result); - } - - private static void setBinderFor(org.zkoss.zk.ui.Component result) { - AnnotateDataBinder binder = new AnnotateDataBinder(result, true); - result.setVariable("binder", binder, true); - binder.loadAll(); - } - private TabsConfiguration tabsConfiguration; private Mode mode = Mode.initial(); diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/tabs/OrdersTabCreator.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/tabs/OrdersTabCreator.java index f44f73d6c..2783902ef 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/tabs/OrdersTabCreator.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/tabs/OrdersTabCreator.java @@ -21,7 +21,6 @@ package org.navalplanner.web.planner.tabs; import static org.navalplanner.web.I18nHelper._; import static org.navalplanner.web.planner.tabs.MultipleTabsPlannerController.BREADCRUMBS_SEPARATOR; -import static org.navalplanner.web.planner.tabs.MultipleTabsPlannerController.createBindingsFor; import java.util.HashMap; import java.util.Map; @@ -67,7 +66,7 @@ public class OrdersTabCreator { args.put("orderController", setupOrderCrudController()); result = Executions.createComponents("/orders/_ordersTab.zul", parent, args); - createBindingsFor(result); + Util.createBindingsFor(result); Util.reloadBindings(result); return result; } diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/tabs/PlanningTabCreator.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/tabs/PlanningTabCreator.java index b2d7e5cfa..2efd2c649 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/tabs/PlanningTabCreator.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/tabs/PlanningTabCreator.java @@ -22,7 +22,6 @@ package org.navalplanner.web.planner.tabs; import static org.navalplanner.web.I18nHelper._; import static org.navalplanner.web.planner.tabs.MultipleTabsPlannerController.BREADCRUMBS_SEPARATOR; import static org.navalplanner.web.planner.tabs.MultipleTabsPlannerController.PLANNIFICATION; -import static org.navalplanner.web.planner.tabs.MultipleTabsPlannerController.createBindingsFor; import java.util.ArrayList; import java.util.HashMap; @@ -34,6 +33,7 @@ import org.navalplanner.business.orders.daos.IOrderDAO; import org.navalplanner.business.orders.entities.Order; import org.navalplanner.business.orders.entities.OrderElement; import org.navalplanner.business.planner.entities.TaskElement; +import org.navalplanner.web.common.Util; import org.navalplanner.web.planner.company.CompanyPlanningController; import org.navalplanner.web.planner.order.OrderPlanningController; import org.navalplanner.web.planner.tabs.CreatedOnDemandTab.IComponentCreator; @@ -150,7 +150,7 @@ public class PlanningTabCreator { orderPlanningController); org.zkoss.zk.ui.Component result = Executions.createComponents( "/planner/order.zul", parent, arguments); - createBindingsFor(result); + Util.createBindingsFor(result); return result; }