diff --git a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/DependencyComponent.java b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/DependencyComponent.java index 94ceb4b93..02911484b 100644 --- a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/DependencyComponent.java +++ b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/DependencyComponent.java @@ -21,8 +21,11 @@ public class DependencyComponent extends XulElement implements AfterCompose { private TaskComponent destination; + private DependencyType type; + public DependencyComponent() { + this.type = DependencyType.END_START; } @@ -103,8 +106,12 @@ public class DependencyComponent extends XulElement implements AfterCompose { .getTask(), DependencyType.END_START); } - public String getDependencyType() { - return this.getDependency().getType().name().toString(); + public DependencyType getDependencyType() { + return this.type; + } + + public void setType(DependencyType type) { + this.type = type; } } diff --git a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/DependencyList.java b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/DependencyList.java index 6f74802fc..e52914960 100644 --- a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/DependencyList.java +++ b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/DependencyList.java @@ -1,8 +1,3 @@ -/* - * To change this template, choose Tools | Templates - * and open the template in the editor. - */ - package org.zkoss.ganttz; import java.beans.PropertyChangeEvent; @@ -12,6 +7,7 @@ import java.util.List; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.zkoss.ganttz.data.DependencyType; import org.zkoss.ganttz.data.Task; import org.zkoss.ganttz.util.MenuBuilder; import org.zkoss.ganttz.util.WeakReferencedListeners; @@ -25,7 +21,8 @@ import org.zkoss.zul.Menupopup; import org.zkoss.zul.impl.XulElement; /** - * @author Francisco Javier Moran Rúa + * @author Francisco Javier Moran Rúa + * @author Lorenzo Tilve Álvaro */ public class DependencyList extends XulElement implements AfterCompose { @@ -141,7 +138,7 @@ public class DependencyList extends XulElement implements AfterCompose { private Menupopup getContextMenu() { if (contextMenu == null) { - contextMenu = MenuBuilder.on(getPage(), getDependencyComponents()).item( + MenuBuilder contextMenuBuilder = MenuBuilder.on(getPage(), getDependencyComponents()).item( "Erase", new ItemAction() { @Override public void onEvent(final DependencyComponent choosen, @@ -158,7 +155,38 @@ public class DependencyList extends XulElement implements AfterCompose { } }); } - }).create(); + }); + contextMenuBuilder.item("Set End-Start", + new ItemAction() { + @Override + public void onEvent(final DependencyComponent choosen, + Event event) { + choosen.setType(DependencyType.END_START); + choosen.invalidate(); + } + }); + + contextMenuBuilder.item("Set Start-Start", new ItemAction () { + @Override + public void onEvent(final DependencyComponent choosen, + Event event) { + choosen.setType(DependencyType.START_START); + choosen.invalidate(); + } + }); + + contextMenuBuilder.item("Set End-End", + new ItemAction() { + @Override + public void onEvent(final DependencyComponent choosen, + Event event) { + choosen.setType(DependencyType.END_END); + choosen.invalidate(); + } + }); + + contextMenu = contextMenuBuilder.create(); + } return contextMenu; } diff --git a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/data/Dependency.java b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/data/Dependency.java index f62b4398c..406c2988d 100644 --- a/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/data/Dependency.java +++ b/navalplanner-gantt-zk/src/main/java/org/zkoss/ganttz/data/Dependency.java @@ -52,7 +52,7 @@ public class Dependency { private final Task destination; - private final DependencyType type; + private DependencyType type; private final boolean visible; @@ -111,4 +111,8 @@ public class Dependency { return visible; } -} + public void setType(DependencyType type) { + this.type = type; + } + +} \ No newline at end of file