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 b04f93b9d..0c72dd8c2 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/data/DefaultFundamentalProperties.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/data/DefaultFundamentalProperties.java @@ -272,4 +272,9 @@ public class DefaultFundamentalProperties implements ITaskFundamentalProperties return false; } + @Override + public boolean isRoot() { + return false; + } + } 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 b814e6fdc..99e0b9b0b 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/data/ITaskFundamentalProperties.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/data/ITaskFundamentalProperties.java @@ -109,4 +109,6 @@ public interface ITaskFundamentalProperties { public boolean belongsClosedProject(); + public boolean isRoot(); + } 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 09197a64b..17bbba98d 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/data/Task.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/data/Task.java @@ -460,4 +460,8 @@ public abstract class Task implements ITaskFundamentalProperties { return fundamentalProperties.belongsClosedProject(); } + public boolean isRoot() { + return fundamentalProperties.isRoot(); + } + } diff --git a/libreplan-business/src/main/java/org/libreplan/business/planner/entities/TaskElement.java b/libreplan-business/src/main/java/org/libreplan/business/planner/entities/TaskElement.java index ade32b1c6..aa86d4430 100644 --- a/libreplan-business/src/main/java/org/libreplan/business/planner/entities/TaskElement.java +++ b/libreplan-business/src/main/java/org/libreplan/business/planner/entities/TaskElement.java @@ -739,4 +739,8 @@ public abstract class TaskElement extends BaseEntity { setAdvancePercentage(getOrderElement().getAdvancePercentage()); } + public Boolean isRoot() { + return (this.getParent() == null); + } + } diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/planner/TaskElementAdapter.java b/libreplan-webapp/src/main/java/org/libreplan/web/planner/TaskElementAdapter.java index 8865e957d..d61f80339 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/planner/TaskElementAdapter.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/planner/TaskElementAdapter.java @@ -1112,6 +1112,11 @@ public class TaskElementAdapter { return taskElement.belongsClosedProject(); } + @Override + public boolean isRoot() { + return taskElement.isRoot(); + } + } @Override