ItEr57S08RFAspectosGraficosRecursoLimitantesItEr56S09: Merged dependencies patch with limiting resources allocation

This commit is contained in:
Lorenzo Tilve 2010-05-10 08:45:16 +02:00 committed by Javier Moran Rua
parent 91716a1db4
commit c1d69bc389
6 changed files with 51 additions and 88 deletions

View file

@ -21,7 +21,6 @@
package org.navalplanner.web.limitingresources;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import org.navalplanner.business.resources.entities.LimitingResourceQueue;
@ -32,7 +31,6 @@ import org.zkoss.zul.Div;
import org.zkoss.zul.Label;
import org.zkoss.zul.Popup;
import org.zkoss.zul.Treecell;
import org.zkoss.zul.Treechildren;
import org.zkoss.zul.Treeitem;
import org.zkoss.zul.TreeitemRenderer;
import org.zkoss.zul.Treerow;
@ -87,35 +85,26 @@ public class LimitingResourcesLeftPane extends HtmlMacroComponent {
};
}
private void collapse(LimitingResourceQueue line) {
// unnecesary
limitingResourcesList.collapse(line);
}
private void expand(LimitingResourceQueue line,
List<LimitingResourceQueue> closed) {
// unnecesary
// limitingResourcesList.expand(line, closed);
}
private List<LimitingResourceQueue> calculatedClosedItems(Treeitem item) {
List<LimitingResourceQueue> result = new ArrayList<LimitingResourceQueue>();
Treechildren treeChildren = item.getTreechildren();
if (treeChildren != null) {
List<Treeitem> myTreeItems = (List<Treeitem>) treeChildren
.getChildren();
Iterator<Treeitem> iterator = myTreeItems.iterator();
while (iterator.hasNext()) {
Treeitem child = (Treeitem) iterator.next();
if (!child.isOpen()) {
result.addAll(getLineChildrenBy(child));
} else {
result.addAll(calculatedClosedItems(child));
}
}
}
return result;
}
// private List<LimitingResourceQueue> calculatedClosedItems(Treeitem item)
// {
// List<LimitingResourceQueue> result = new
// ArrayList<LimitingResourceQueue>();
// Treechildren treeChildren = item.getTreechildren();
// if (treeChildren != null) {
// List<Treeitem> myTreeItems = (List<Treeitem>) treeChildren
// .getChildren();
// Iterator<Treeitem> iterator = myTreeItems.iterator();
// while (iterator.hasNext()) {
// Treeitem child = (Treeitem) iterator.next();
// if (!child.isOpen()) {
// result.addAll(getLineChildrenBy(child));
// } else {
// result.addAll(calculatedClosedItems(child));
// }
// }
// }
// return result;
// }
private List<LimitingResourceQueue> getLineChildrenBy(Treeitem item) {
List<LimitingResourceQueue> result = new ArrayList<LimitingResourceQueue>();

View file

@ -104,8 +104,8 @@ public class LimitingResourcesPanel extends HtmlMacroComponent {
}
public void reloadLimitingResourcesList() {
limitingResourcesList.setModel(createModelForTree());
limitingResourcesList.invalidate();
queueListComponent.setModel(createModelForTree());
queueListComponent.invalidate();
}
public ListModel getFilters() {
@ -223,10 +223,16 @@ public class LimitingResourcesPanel extends HtmlMacroComponent {
// FIXME: Insert calculated dependencies
dependencyList = new LimitingDependencyList(this);
if (queueListComponent.getQueueTasks().size() > 2) {
QueueTask source = queueListComponent.getQueueTasks().get(0);
QueueTask destination = queueListComponent.getQueueTasks().get(1);
QueueTask destination2 = queueListComponent.getQueueTasks().get(2);
System.out
.println("tasks!" + queueListComponent.getQueueTasks().size());
// for (LimitingResourceQueue each: limitingResourceQueues) {
// each.getLimitingResourceQueueElements();
// }
if (queueListComponent.getQueueTasks().size() > 3) {
QueueTask source = queueListComponent.getQueueTasks().get(1);
QueueTask destination = queueListComponent.getQueueTasks().get(2);
QueueTask destination2 = queueListComponent.getQueueTasks().get(3);
LimitingDependencyComponent limitingDependencyComponent = new LimitingDependencyComponent(
source, destination);
@ -250,7 +256,7 @@ public class LimitingResourcesPanel extends HtmlMacroComponent {
dependencyList.afterCompose();
queueListComponent.afterCompose();
limitingResourcesList.invalidate();
queueListComponent.invalidate();
// Insert timetracker headers
TimeTrackerComponent timeTrackerHeader = createTimeTrackerHeader();

View file

@ -120,8 +120,7 @@ public class QueueComponent extends XulElement implements
private void appendMenu(QueueTask divElement) {
if (divElement.getPage() != null) {
MenuBuilder<QueueTask> menuBuilder = MenuBuilder.on(divElement
.getPage(),
queueTasks);
.getPage(), queueTasks);
menuBuilder.item(_("Unassign"), "/common/img/ico_borrar.png",
new ItemAction<QueueTask>() {
@Override

View file

@ -53,8 +53,6 @@ public class QueueListComponent extends HtmlMacroComponent implements
private List<QueueComponent> limitingResourcesComponents = new ArrayList<QueueComponent>();
private MutableTreeModel<LimitingResourceQueue> timelinesTree;
private List<QueueTask> queueTasks = new ArrayList<QueueTask>();
public QueueListComponent(TimeTracker timeTracker,
@ -71,10 +69,15 @@ public class QueueListComponent extends HtmlMacroComponent implements
private void insertAsComponents(List<LimitingResourceQueue> children) {
for (LimitingResourceQueue each : children) {
LimitingResourcesComponent component = LimitingResourcesComponent
.create(timeTracker, each);
QueueComponent component = QueueComponent.create(timeTracker, each);
this.appendChild(component);
fromTimeLineToComponent.put(each, component);
fromQueueToElement.put(each, component);
// FIXME: Added for temporary dependencies
limitingResourcesComponents.add(component);
if (!component.getQueueTasks().isEmpty()) {
queueTasks.addAll(component.getQueueTasks());
}
}
}
@ -83,7 +86,7 @@ public class QueueListComponent extends HtmlMacroComponent implements
}
public void invalidate() {
fromTimeLineToComponent.clear();
fromQueueToElement.clear();
this.getChildren().clear();
insertAsComponents(model.asList());
super.invalidate();
@ -102,37 +105,11 @@ public class QueueListComponent extends HtmlMacroComponent implements
};
}
private void insertAsComponents(TimeTracker timetracker,
List<LimitingResourceQueue> children) {
for (LimitingResourceQueue LimitingResourceQueue : children) {
QueueComponent component = QueueComponent
.create(timetracker, LimitingResourceQueue);
limitingResourcesComponents.add(component);
appendChild(component);
queueTasks.addAll(component.getQueueTasks());
fromQueueToElement.put(LimitingResourceQueue, component);
}
}
public void collapse(LimitingResourceQueue line) {
}
private QueueComponent getComponentFor(LimitingResourceQueue l) {
QueueComponent resourceLoadComponent = fromQueueToElement
.get(l);
return resourceLoadComponent;
}
public void expand(LimitingResourceQueue line,
List<LimitingResourceQueue> closed) {
}
@Override
public void afterCompose() {
super.afterCompose();
for (QueueComponent each : limitingResourcesComponents) {
System.out.println("Composing!");
each.afterCompose();
}
}

View file

@ -186,16 +186,16 @@ zkLimitingDependency.draw = function(dependency) {
switch(dependency.getAttribute('type'))
{
case zkLimitingDependencies.constants.START_START:
parameter = 5;
verticalSeparation = 5;
break;
case zkLimitingDependencies.constants.END_END:
parameter = 10;
verticalSeparation = 10;
break;
case zkLimitingDependencies.constants.END_START:
default:
parameter = 15;
verticalSeparation = 15;
}
zkLimitingDependencies.newdraw(dependency, orig, dest, parameter);
zkLimitingDependencies.newdraw(dependency, orig, dest, verticalSeparation);
}

View file

@ -165,7 +165,7 @@
}
/* -------------- Dependencies -------------- */
#listdependencies, #listlimitingdependencies {
#listdependencies {
position: relative;
width: 400px;
float: left;
@ -183,21 +183,13 @@
z-index:0;
}
#listdependencies .end,
#listdependencies .start {
.end,.start {
height: 1px;
}
#listdependencies .mid {
width: 1px;
}
#listlimitingdependencies .end,
#listlimitingdependencies .start {
.mid {
width: 1px;
}
#listlimitingdependencies .mid {
height: 1px;
}
.completion {
width: 0%;