ItEr22S12CUVistaRecursosTempoPorProxectoItEr21S07: Inserting resourceLoadList

This commit is contained in:
Óscar González Fernández 2009-08-21 17:14:18 +02:00
parent 30e05e4124
commit ab3cccd822
4 changed files with 45 additions and 33 deletions

View file

@ -2,38 +2,41 @@ package org.zkoss.ganttz.resourceload;
import java.util.List;
import org.zkoss.ganttz.GanttPanel;
import org.zkoss.ganttz.Planner;
import org.zkoss.ganttz.data.ResourceLoad;
import org.zkoss.zk.ui.ext.AfterCompose;
import org.zkoss.zul.impl.XulElement;
/**
* Component to include a list of ResourceLoads inside the ResourcesLoadPanel.
* @author Lorenzo Tilve Álvaro <ltilve@igalia.com>
*/
public class ResourceLoadList extends XulElement implements AfterCompose {
public class ResourceLoadList extends XulElement {
private List<ResourceLoad> resourceLoads;
public ResourceLoadList(List<ResourceLoad> resourceLoads) {
this.resourceLoads = resourceLoads;
insertFakeData();
}
@Override
public void afterCompose() {
}
private void insertFakeData() {
ResourceLoadComponent rlc1 = new ResourceLoadComponent(
new ResourceLoad("ResourceLoad 1"));
ResourceLoadComponent rlc2 = new ResourceLoadComponent(
new ResourceLoad("ResourceLoad 1"));
public Planner getPlanner() {
return getGanttPanel().getPlanner();
}
rlc1.addInterval(40, 100);
rlc1.addInterval(20, 80);
rlc1.addInterval(30, 150);
rlc1.addInterval(10, 0);
private GanttPanel getGanttPanel() {
return (GanttPanel) getParent();
}
public synchronized void addResourceLoadComponent(ResourceLoad r) {
resourceLoads.add(r);
rlc2.addInterval(10, 100);
rlc2.addInterval(20, 60);
rlc2.addInterval(30, 100);
rlc2.addInterval(20, 0);
rlc2.addInterval(20, 60);
appendChild(rlc1);
appendChild(rlc2);
}
}

View file

@ -1,5 +1,7 @@
package org.zkoss.ganttz.resourceload;
import java.util.Collections;
import org.zkoss.ganttz.Planner;
import org.zkoss.ganttz.TimeTracker;
import org.zkoss.ganttz.TimeTrackerComponent;
@ -11,26 +13,14 @@ public class ResourcesLoadPanel extends XulElement implements AfterCompose {
private TimeTrackerComponent timeTrackerComponent;
private ResourceLoadList resourceLoadList;
public ResourcesLoadPanel(TimeTracker timeTracker) {
ResourceLoadComponent rlc1 = new ResourceLoadComponent(
new ResourceLoad("ResourceLoad 1"));
ResourceLoadComponent rlc2 = new ResourceLoadComponent(
new ResourceLoad("ResourceLoad 1"));
rlc1.addInterval(40, 100);
rlc1.addInterval(20, 80);
rlc1.addInterval(30, 150);
rlc1.addInterval(10, 0);
rlc2.addInterval(10, 100);
rlc2.addInterval(20, 60);
rlc2.addInterval(30, 100);
rlc2.addInterval(20, 0);
rlc2.addInterval(20, 60);
timeTrackerComponent = timeTrackerForResourcesLoadPanel(timeTracker);
resourceLoadList = new ResourceLoadList(Collections
.<ResourceLoad> emptyList());
appendChild(timeTrackerComponent);
appendChild(rlc1);
appendChild(rlc2);
appendChild(resourceLoadList);
}
private TimeTrackerComponent timeTrackerForResourcesLoadPanel(

View file

@ -29,6 +29,15 @@
</mold>
</component>
<component>
<component-name>resourcesLoadList</component-name>
<component-class>org.zkoss.ganttz.resourceload.ResourceLoadList</component-class>
<mold>
<mold-name>default</mold-name>
<mold-uri>~./ganttz/resourceload/resourceloadlist.dsp</mold-uri>
</mold>
</component>
<component>
<component-name>leftPane</component-name>
<component-class>org.zkoss.ganttz.LeftPane</component-class>

View file

@ -0,0 +1,10 @@
<%@ taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c" %>
<%@ taglib uri="http://www.zkoss.org/dsp/zk/core" prefix="z" %>
<c:set var="self" value="${requestScope.arg.self}"/>
<div id="${self.uuid}" ${self.outerAttrs} class="resourceloadlist">
<c:forEach var="child" items="${self.children}">
${z:redraw(child, null)}
</c:forEach>
</div>