[Bug #701] Fixed bug, refreshing explictly the hours cell after creating a child element.

FEA: ItEr63S03BugFixing
This commit is contained in:
Jacobo Aragunde Pérez 2010-11-10 11:26:32 +01:00
parent bd3b257e26
commit 8e7e9efe40
3 changed files with 21 additions and 1 deletions

View file

@ -990,4 +990,16 @@ public class OrderElementTreeController extends TreeController<OrderElement> {
}
}
@Override
protected void refreshHoursBox(OrderElement node) {
List<OrderElement> parentNodes = getModel().getParents(node);
// Remove the last element because it's an
// Order node, not an OrderElement
parentNodes.remove(parentNodes.size() - 1);
for (OrderElement parent : parentNodes) {
getRenderer().hoursIntBoxByOrderElement.get(parent)
.setValue(parent.getWorkHours());
}
}
}

View file

@ -220,4 +220,9 @@ public class TemplatesTreeController extends
return tooltipText.toString();
}
@Override
protected void refreshHoursBox(OrderElementTemplate node) {
// we do nothing, since there isn't an hours box in this tree
}
}

View file

@ -189,8 +189,10 @@ public abstract class TreeController<T extends ITreeNode<T>> extends
// Parse hours
try {
if (tree.getSelectedCount() == 1) {
getModel().addElementAt(getSelectedNode(), name.getValue(),
T node = getSelectedNode();
getModel().addElementAt(node, name.getValue(),
hours.getValue());
refreshHoursBox(node);
} else {
getModel().addElement(name.getValue(), hours.getValue());
}
@ -204,6 +206,7 @@ public abstract class TreeController<T extends ITreeNode<T>> extends
name.focus();
}
protected abstract void refreshHoursBox(T node);
protected abstract void filterByPredicateIfAny();