01: package org.osbl.inventory.gui;
02:
03: import org.osbl.client.wings.form.GenericObjectTreeNode;
04: import org.osbl.client.wings.shell.Client;
05: import org.osbl.inventory.logic.InventoryLogic;
06: import org.osbl.inventory.model.CostTypeHierarchy;
07:
08: import java.util.*;
09:
10: /**
11: * @author hengels
12: * @version $Revision$
13: */
14: public class CostTypeHierarchiesTreeNode extends GenericObjectTreeNode {
15: public CostTypeHierarchiesTreeNode(String object) {
16: setObject(object);
17: }
18:
19: protected void loadChildren() {
20: CostTypeTreeModel model = (CostTypeTreeModel) getModel();
21: InventoryLogic logic = model.getTreeLogic();
22: List<CostTypeHierarchy> costTypes = logic.trees();
23: children = new ArrayList<GenericObjectTreeNode>();
24: for (Iterator<CostTypeHierarchy> iterator = costTypes
25: .iterator(); iterator.hasNext();) {
26: CostTypeHierarchy costTypeHierarchy = iterator.next();
27: CostTypeHierarchyTreeNode child = new CostTypeHierarchyTreeNode(
28: costTypeHierarchy);
29: children.add(child);
30: child.setParent(this );
31: }
32: sortChildren();
33: }
34:
35: public boolean getAllowsChildren() {
36: return true;
37: }
38:
39: public boolean isLeaf() {
40: return false;
41: }
42:
43: public String toString() {
44: return Client.getInstance().getResourceProvider().getMessage(
45: "org.osbl.inventory.model.CostType.editor.title");
46: }
47:
48: public Class getObjectType() {
49: return String.class;
50: }
51:
52: public Class[] getChildTypes() {
53: return new Class[] { CostTypeHierarchy.class };
54: }
55:
56: public String loadObject() {
57: return (String) object;
58: }
59: }
|