From 1e87ee10a2cac695eb82ab05dff200383b714825 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=93scar=20Gonz=C3=A1lez=20Fern=C3=A1ndez?= Date: Mon, 2 Nov 2009 20:29:35 +0100 Subject: [PATCH] ItEr33S08ValidacionEProbasFuncionaisItEr32S09: [Bug #79] TaskComponent now has access to disabilityConfiguration --- .../org/zkoss/ganttz/MilestoneComponent.java | 6 ++++-- .../java/org/zkoss/ganttz/TaskComponent.java | 21 ++++++++++++------- .../zkoss/ganttz/TaskContainerComponent.java | 2 +- .../main/java/org/zkoss/ganttz/TaskList.java | 11 ++++++---- 4 files changed, 25 insertions(+), 15 deletions(-) diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/MilestoneComponent.java b/ganttzk/src/main/java/org/zkoss/ganttz/MilestoneComponent.java index 47ded997d..9d55aff9a 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/MilestoneComponent.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/MilestoneComponent.java @@ -20,6 +20,7 @@ package org.zkoss.ganttz; +import org.zkoss.ganttz.adapters.IDisabilityConfiguration; import org.zkoss.ganttz.data.Task; /** @@ -27,8 +28,9 @@ import org.zkoss.ganttz.data.Task; */ public class MilestoneComponent extends TaskComponent { - public MilestoneComponent(Task task) { - super(task); + public MilestoneComponent(Task task, + IDisabilityConfiguration disabilityConfiguration) { + super(task, disabilityConfiguration); } } diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/TaskComponent.java b/ganttzk/src/main/java/org/zkoss/ganttz/TaskComponent.java index f965c21bd..474419886 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/TaskComponent.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/TaskComponent.java @@ -29,6 +29,7 @@ import java.util.regex.Pattern; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.zkoss.ganttz.adapters.IDisabilityConfiguration; import org.zkoss.ganttz.data.Milestone; import org.zkoss.ganttz.data.Task; import org.zkoss.ganttz.data.TaskContainer; @@ -143,18 +144,20 @@ public class TaskComponent extends Div implements AfterCompose { } }; + private final IDisabilityConfiguration disabilityConfiguration; + public static TaskComponent asTaskComponent(Task task, TaskList taskList, boolean isTopLevel) { final TaskComponent result; if (task.isContainer()) { - result = TaskContainerComponent - .asTask((TaskContainer) task, taskList); + result = TaskContainerComponent.asTask((TaskContainer) task, + taskList); + } else if (task instanceof Milestone) { + result = new MilestoneComponent(task, taskList + .getDisabilityConfiguration()); } else { - if (task instanceof Milestone) { - result = new MilestoneComponent(task); - } else { - result = new TaskComponent(task); - } + result = new TaskComponent(task, taskList + .getDisabilityConfiguration()); } result.isTopLevel = isTopLevel; return result; @@ -164,12 +167,14 @@ public class TaskComponent extends Div implements AfterCompose { return asTaskComponent(task, taskList, true); } - public TaskComponent(Task task) { + public TaskComponent(Task task, + IDisabilityConfiguration disabilityConfiguration) { setHeight(HEIGHT_PER_TASK + "px"); setContext("idContextMenuTaskAssignment"); this.task = task; setColor(STANDARD_TASK_COLOR); setId(UUID.randomUUID().toString()); + this.disabilityConfiguration = disabilityConfiguration; } protected String calculateClass() { diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/TaskContainerComponent.java b/ganttzk/src/main/java/org/zkoss/ganttz/TaskContainerComponent.java index 6701b740a..3dc0ebdc2 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/TaskContainerComponent.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/TaskContainerComponent.java @@ -54,7 +54,7 @@ public class TaskContainerComponent extends TaskComponent implements private IExpandListener expandListener; public TaskContainerComponent(TaskContainer taskContainer, TaskList taskList) { - super(taskContainer); + super(taskContainer, taskList.getDisabilityConfiguration()); if (!taskContainer.isContainer()) throw new IllegalArgumentException(); this.expandListener = new IExpandListener() { diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/TaskList.java b/ganttzk/src/main/java/org/zkoss/ganttz/TaskList.java index 759daf366..9488c324d 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/TaskList.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/TaskList.java @@ -67,7 +67,7 @@ public class TaskList extends XulElement implements AfterCompose { private final FunctionalityExposedForExtensions context; - private boolean addingDependenciesEnabled; + private final IDisabilityConfiguration disabilityConfiguration; public TaskList( FunctionalityExposedForExtensions context, @@ -79,8 +79,7 @@ public class TaskList extends XulElement implements AfterCompose { this.editTaskCommand = editTaskCommand; this.originalTasks = tasks; this.commandsOnTasksContextualized = commandsOnTasksContextualized; - this.addingDependenciesEnabled = disabilityConfiguration - .isAddingDependenciesEnabled(); + this.disabilityConfiguration = disabilityConfiguration; } public static TaskList createFor( @@ -284,7 +283,7 @@ public class TaskList extends XulElement implements AfterCompose { if (contextMenu == null) { MenuBuilder menuBuilder = MenuBuilder.on(getPage(), getTaskComponents()); - if (addingDependenciesEnabled) { + if (disabilityConfiguration.isAddingDependenciesEnabled()) { menuBuilder.item("Add Dependency", new ItemAction() { @@ -333,4 +332,8 @@ public class TaskList extends XulElement implements AfterCompose { context.addDependency(new Dependency(source.getTask(), destination .getTask(), DependencyType.END_START)); } + + public IDisabilityConfiguration getDisabilityConfiguration() { + return disabilityConfiguration; + } }