From 309d895e969f331f1143ece494097e9b7da0c11b Mon Sep 17 00:00:00 2001 From: Lorenzo Tilve Date: Wed, 1 Jul 2009 17:42:47 +0200 Subject: [PATCH] ItEr15S12RFComportamentoGraficoPlanificadorItEr14S13: TaskContainer component support added to plannificator view * The structure for this entity has been created * Basic implementation relays on Task and an empty TascContainerBean * For visual presentation the same task div is used with background images for the corners and restyled classes. --- .../java/org/zkoss/ganttz/ListDetails.java | 13 +- .../main/java/org/zkoss/ganttz/Planner.java | 6 + .../java/org/zkoss/ganttz/TaskContainer.java | 23 ++++ .../main/java/org/zkoss/ganttz/TaskList.java | 5 + .../zkoss/ganttz/util/TaskContainerBean.java | 13 ++ .../main/resources/metainfo/zk/lang-addon.xml | 9 ++ .../resources/web/ganttz/img/group_left.png | Bin 0 -> 223 bytes .../resources/web/ganttz/img/group_right.png | Bin 0 -> 227 bytes .../resources/web/ganttz/taskcontainer.dsp | 14 +++ .../resources/web/ganttz/zul/listdetails.zul | 6 +- .../src/main/resources/web/js/ganttz/task.js | 16 ++- .../resources/web/js/ganttz/taskcontainer.js | 116 ++++++++++++++++++ .../web/planner/DataForPlanner.java | 2 +- .../planner/css/productionmanagement.css | 22 ++++ 14 files changed, 236 insertions(+), 9 deletions(-) create mode 100644 navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/TaskContainer.java create mode 100644 navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/util/TaskContainerBean.java create mode 100644 navalplanner-gantt-zk/src/main/resources/web/ganttz/img/group_left.png create mode 100644 navalplanner-gantt-zk/src/main/resources/web/ganttz/img/group_right.png create mode 100644 navalplanner-gantt-zk/src/main/resources/web/ganttz/taskcontainer.dsp create mode 100644 navalplanner-gantt-zk/src/main/resources/web/js/ganttz/taskcontainer.js diff --git a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/ListDetails.java b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/ListDetails.java index d711121f3..d6f9b6208 100644 --- a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/ListDetails.java +++ b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/ListDetails.java @@ -7,6 +7,7 @@ import java.util.List; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.zkoss.ganttz.util.TaskBean; +import org.zkoss.ganttz.util.TaskContainerBean; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.HtmlMacroComponent; @@ -56,6 +57,16 @@ public class ListDetails extends HtmlMacroComponent { getPlanner().addTask(newTask); } + public void addTaskContainer() { + TaskContainerBean newTask = new TaskContainerBean(); + newTask.setName("Novo Contedor de Tarefas"); + newTask.setBeginDate(new Date()); + newTask.setEndDate(threeMonthsLater(newTask.getBeginDate())); + TaskDetail newDetail = addTask(newTask); + newDetail.receiveFocus(); + getPlanner().addTaskContainer(newTask); + } + private static Date threeMonthsLater(Date now) { Calendar calendar = Calendar.getInstance(); calendar.setTime(now); @@ -83,4 +94,4 @@ public class ListDetails extends HtmlMacroComponent { return getFellow("insertionPoint"); } -} \ No newline at end of file +} diff --git a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/Planner.java b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/Planner.java index d474ca90f..08d1e9927 100644 --- a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/Planner.java +++ b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/Planner.java @@ -5,6 +5,7 @@ import java.util.List; import org.zkoss.ganttz.util.DependencyRegistry; import org.zkoss.ganttz.util.TaskBean; +import org.zkoss.ganttz.util.TaskContainerBean; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.Executions; import org.zkoss.zk.ui.ext.AfterCompose; @@ -127,6 +128,11 @@ public class Planner extends XulElement implements AfterCompose { dependencyRegistry.add(newTask); } + public void addTaskContainer(TaskContainerBean newTaskContainer) { + getTaskList().addTaskContainer(newTaskContainer); + dependencyRegistry.add(newTaskContainer); + } + private void publishDependency(Dependency dependency) { dependencyRegistry.add(dependency.getDependencyBean()); } diff --git a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/TaskContainer.java b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/TaskContainer.java new file mode 100644 index 000000000..15789c5af --- /dev/null +++ b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/TaskContainer.java @@ -0,0 +1,23 @@ +package org.zkoss.ganttz; + +import org.zkoss.ganttz.util.TaskContainerBean; +import org.zkoss.zk.ui.ext.AfterCompose; + +/** + * This class contains the information of a task container. It can be modified and + * notifies of the changes to the interested parties.
+ * Created at Jul 1, 2009 + * + * @author Lorenzo Tilve Álvaro + * + */ +public class TaskContainer extends Task implements AfterCompose { + + public static TaskContainer asTask(TaskContainerBean taskContainerBean) { + return new TaskContainer(taskContainerBean); + } + + public TaskContainer(TaskContainerBean taskContainerBean) { + super(taskContainerBean); + } +} \ No newline at end of file diff --git a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/TaskList.java b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/TaskList.java index 6ba6d8b9f..198a9cfe7 100644 --- a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/TaskList.java +++ b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/TaskList.java @@ -18,6 +18,7 @@ import org.zkoss.ganttz.util.MenuBuilder; import org.zkoss.ganttz.util.TaskBean; import org.zkoss.ganttz.util.WeakReferencedListeners; import org.zkoss.ganttz.util.MenuBuilder.ItemAction; +import org.zkoss.ganttz.util.TaskContainerBean; import org.zkoss.ganttz.util.WeakReferencedListeners.ListenerNotification; import org.zkoss.ganttz.util.zoom.ZoomLevel; import org.zkoss.ganttz.util.zoom.ZoomLevelChangedListener; @@ -79,6 +80,10 @@ public class TaskList extends XulElement implements AfterCompose { addTask(Task.asTask(newTask), true); } + public void addTaskContainer(TaskContainerBean newTaskContainer) { + addTask(TaskContainer.asTask(newTaskContainer), true); + } + public synchronized void addTask(final Task task, boolean relocate) { task.setParent(this); addContextMenu(task); diff --git a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/util/TaskContainerBean.java b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/util/TaskContainerBean.java new file mode 100644 index 000000000..f3dea9a73 --- /dev/null +++ b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/util/TaskContainerBean.java @@ -0,0 +1,13 @@ +package org.zkoss.ganttz.util; + +/** + * This class contains the information of a task container. It can be modified and + * notifies of the changes to the interested parties.
+ * Created at Jul 1, 2009 + * + * @author Lorenzo Tilve Álvaro + * + */ +public class TaskContainerBean extends TaskBean { + +} \ No newline at end of file diff --git a/navalplanner-gantt-zk/src/main/resources/metainfo/zk/lang-addon.xml b/navalplanner-gantt-zk/src/main/resources/metainfo/zk/lang-addon.xml index 221fc24a9..988bd96d8 100755 --- a/navalplanner-gantt-zk/src/main/resources/metainfo/zk/lang-addon.xml +++ b/navalplanner-gantt-zk/src/main/resources/metainfo/zk/lang-addon.xml @@ -50,6 +50,15 @@ + + taskcontainer + org.zkoss.ganttz.TaskContainer + + default + ~./ganttz/taskcontainer.dsp + + + tasklist org.zkoss.ganttz.TaskList diff --git a/navalplanner-gantt-zk/src/main/resources/web/ganttz/img/group_left.png b/navalplanner-gantt-zk/src/main/resources/web/ganttz/img/group_left.png new file mode 100644 index 0000000000000000000000000000000000000000..6a8297cc0017a2a69483b140af645f4d29976f47 GIT binary patch literal 223 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4F%}28J29*~C-V}>VN3FMcVYMs zf(!O8p9~b?EbxddW?hT|;+&tG zo0?a`;9QiNSdyBeP@Y+mq2TW68xY>eCk|9(<>}%WB5}EQf*}`!g23TPhfn_hA1+=f zw7xN~@e-E~Qx}hLV8X4C>P@RA>M2iPsR^CE#%$;EI;EEnrTgqzRk-&VHUmvz@O1Ta JS?83{1OPDf4F%}28J29*~C-V}>VN3FMcVYMs zf(!O8p9~b?EbxddW?ah%orpJs^=JqAUerUQ{QSwpnwr@U%ShK(5dZ0-R Mp00i_>zopr0JOD3`v3p{ literal 0 HcmV?d00001 diff --git a/navalplanner-gantt-zk/src/main/resources/web/ganttz/taskcontainer.dsp b/navalplanner-gantt-zk/src/main/resources/web/ganttz/taskcontainer.dsp new file mode 100644 index 000000000..0fa7063a7 --- /dev/null +++ b/navalplanner-gantt-zk/src/main/resources/web/ganttz/taskcontainer.dsp @@ -0,0 +1,14 @@ + +<%@ taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c" %> +<%@ taglib uri="http://www.zkoss.org/dsp/zk/core" prefix="z" %> + + + + +
+
+
+
+
+
\ No newline at end of file diff --git a/navalplanner-gantt-zk/src/main/resources/web/ganttz/zul/listdetails.zul b/navalplanner-gantt-zk/src/main/resources/web/ganttz/zul/listdetails.zul index ce43eaf23..628480816 100644 --- a/navalplanner-gantt-zk/src/main/resources/web/ganttz/zul/listdetails.zul +++ b/navalplanner-gantt-zk/src/main/resources/web/ganttz/zul/listdetails.zul @@ -2,8 +2,12 @@