ItEr43S09ImplantacionAplicacionItEr42S13: Instead of invalidating all task, only the resources text is updated.

The method to trigger this update is renamed to reflect the new meaning.
This commit is contained in:
Óscar González Fernández 2010-01-12 12:06:23 +01:00
parent 2010df1cf6
commit 1d51b8a0a4
4 changed files with 30 additions and 43 deletions

View file

@ -34,7 +34,7 @@ import org.zkoss.ganttz.adapters.IDisabilityConfiguration;
import org.zkoss.ganttz.data.Milestone;
import org.zkoss.ganttz.data.Task;
import org.zkoss.ganttz.data.TaskContainer;
import org.zkoss.ganttz.data.Task.IReloadComponentRequested;
import org.zkoss.ganttz.data.Task.IReloadResourcesTextRequested;
import org.zkoss.ganttz.data.constraint.Constraint;
import org.zkoss.ganttz.data.constraint.Constraint.IConstraintViolationListener;
import org.zkoss.lang.Objects;
@ -176,7 +176,7 @@ public class TaskComponent extends Div implements AfterCompose {
return asTaskComponent(task, taskList, true);
}
private IReloadComponentRequested reloadComponentRequested;
private IReloadResourcesTextRequested reloadResourcesTextRequested;
public TaskComponent(Task task,
IDisabilityConfiguration disabilityConfiguration) {
@ -195,16 +195,14 @@ public class TaskComponent extends Div implements AfterCompose {
}
};
this.task.addConstraintViolationListener(taskViolationListener);
reloadComponentRequested = new IReloadComponentRequested() {
reloadResourcesTextRequested = new IReloadResourcesTextRequested() {
@Override
public void reloadComponentRequested() {
// TODO can't call to invalidate because the task was
// disappearing. Fix the problem and just invalidate this task
getParent().invalidate();
public void reloadResourcesTextRequested() {
smartUpdate("resourcesText", getResourcesText());
}
};
this.task.addReloadListener(reloadComponentRequested);
this.task.addReloadListener(reloadResourcesTextRequested);
}
protected String calculateClass() {
@ -454,7 +452,7 @@ public class TaskComponent extends Div implements AfterCompose {
protected void remove() {
this.detach();
task.removeReloadListener(reloadComponentRequested);
task.removeReloadListener(reloadResourcesTextRequested);
}
public boolean isTopLevel() {

View file

@ -40,11 +40,11 @@ import org.zkoss.ganttz.util.ConstraintViolationNotificator;
*/
public abstract class Task implements ITaskFundamentalProperties {
public interface IReloadComponentRequested {
public void reloadComponentRequested();
public interface IReloadResourcesTextRequested {
public void reloadResourcesTextRequested();
}
private List<IReloadComponentRequested> reloadRequestedListeners = new ArrayList<IReloadComponentRequested>();
private List<IReloadResourcesTextRequested> reloadRequestedListeners = new ArrayList<IReloadResourcesTextRequested>();
private PropertyChangeSupport fundamentalPropertiesListeners = new PropertyChangeSupport(
this);
@ -280,19 +280,19 @@ public abstract class Task implements ITaskFundamentalProperties {
}
public void addReloadListener(
IReloadComponentRequested reloadComponentRequested) {
Validate.notNull(reloadComponentRequested);
this.reloadRequestedListeners.add(reloadComponentRequested);
IReloadResourcesTextRequested reloadResourcesTextRequested) {
Validate.notNull(reloadResourcesTextRequested);
this.reloadRequestedListeners.add(reloadResourcesTextRequested);
}
public void removeReloadListener(
IReloadComponentRequested reloadComponentRequested) {
this.reloadRequestedListeners.remove(reloadComponentRequested);
IReloadResourcesTextRequested reloadResourcesTextRequested) {
this.reloadRequestedListeners.remove(reloadResourcesTextRequested);
}
public void reloadComponent() {
for (IReloadComponentRequested each : reloadRequestedListeners) {
each.reloadComponentRequested();
public void reloadResourcesText() {
for (IReloadResourcesTextRequested each : reloadRequestedListeners) {
each.reloadResourcesTextRequested();
}
}

View file

@ -423,17 +423,17 @@ zkTask.setClass = function(cmp, newclass) {
cmp.className = newclass;
};
zkTask.setAttr = function(cmp, nm, val) {
switch (nm) {
case "style.top":
case "style.width":
case "style.left": {
zkau.setAttr(cmp, nm, val);
return true;
}
zkTask.setAttr = function(cmp, name, val) {
switch (name) {
case "resourcesText":{
var resourcesTextElement = YAHOO.util.Selector.query(
'.task-resources .task-resources-inner', cmp, true);
resourcesTextElement.innerHTML = val;
return true;
}
default: {
return false;
}
}
};
@ -448,17 +448,6 @@ zkTask.next = function(elem) {
return elem;
}
zkTask.setAttr = function(cmp, name, value) {
// Obsolete as far as tasks will not show name inside
// if ("name" == name) {
// var span = YAHOO.util.Selector.query("span", cmp, true);
// span.innerHTML = value;
// return true;
// }
return false;
}
zkTask.addRelatedDependency = function(cmp, dependency) {
if (!cmp['relatedDependencies']) {
cmp.relatedDependencies = [];

View file

@ -206,7 +206,7 @@ public class ResourceAllocationModel implements IResourceAllocationModel {
allocationResult.applyTo(task);
ganttTask.fireChangesForPreviousValues(previousStartDate,
previousLength);
ganttTask.reloadComponent();
ganttTask.reloadResourcesText();
context.reloadCharts();
}