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 046f52f18..d85fc6233 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/data/DefaultFundamentalProperties.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/data/DefaultFundamentalProperties.java @@ -284,4 +284,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 2952a9af3..0df1bf198 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/data/ITaskFundamentalProperties.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/data/ITaskFundamentalProperties.java @@ -118,4 +118,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 2600fcf15..ea2cdb1bd 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/data/Task.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/data/Task.java @@ -497,4 +497,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 81c57fca5..3677ab2c5 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 @@ -721,4 +721,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 3b424f173..8f8aa672e 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 @@ -1135,6 +1135,11 @@ public class TaskElementAdapter { return taskElement.belongsClosedProject(); } + @Override + public boolean isRoot() { + return taskElement.isRoot(); + } + } @Override