1 19 20 28 29 package org.netbeans.modules.xml.schema.abe.nodes; 30 31 import java.awt.Image ; 32 import org.netbeans.modules.xml.axi.AXIDocument; 33 import org.netbeans.modules.xml.axi.datatype.CustomDatatype; 34 import org.netbeans.modules.xml.axi.datatype.DatatypeFactory; 35 import org.openide.nodes.AbstractNode; 36 import org.openide.nodes.Children; 37 import org.openide.nodes.Node; 38 import org.openide.util.NbBundle; 39 import org.netbeans.modules.xml.schema.model.GlobalSimpleType; 40 41 45 public class SimpleTypesNode extends AbstractNode 46 { 47 48 public SimpleTypesNode(ABEUIContext context, AXIDocument document) 49 { 50 super(new TypesChildren(context, document)); 51 setName(NbBundle.getMessage(PrimitiveSimpleTypesNode.class, 52 "LBL_CategoryNode_SimpleTypesNode")); 53 } 54 55 public boolean canRename() 56 { 57 return false; 58 } 59 60 public boolean canDestroy() 61 { 62 return false; 63 } 64 65 public boolean canCut() 66 { 67 return false; 68 } 69 70 public boolean canCopy() 71 { 72 return false; 73 } 74 75 public Image getOpenedIcon(int i) { 76 return org.netbeans.modules.xml.schema.ui.nodes.categorized. 77 CategorizedChildren.getBadgedFolderIcon(i, GlobalSimpleType.class); 78 } 79 80 public Image getIcon(int i) { 81 return org.netbeans.modules.xml.schema.ui.nodes.categorized. 82 CategorizedChildren.getOpenedBadgedFolderIcon(i, GlobalSimpleType.class); 83 } 84 85 private static class TypesChildren extends Children.Keys 86 { 87 TypesChildren(ABEUIContext context, AXIDocument document) { 88 super(); 89 this.context = context; 90 this.document = document; 91 } 92 protected Node[] createNodes(Object key) 93 { 94 if(key instanceof GlobalSimpleType) 95 { 96 CustomDatatype type = 97 (CustomDatatype) DatatypeFactory.getDefault().getDatatype( 98 document.getModel(), (GlobalSimpleType)key); 99 Node node = context.getFactory().createNode(getNode(), type); 100 return new Node[] {node}; 101 } 102 assert false; 103 return new Node[]{}; 104 } 105 106 protected void addNotify() 107 { 108 setKeys(document.getModel().getSchemaModel().getSchema().getSimpleTypes()); 109 } 110 111 private AXIDocument document; 112 private ABEUIContext context; 113 } 114 115 } 116 | Popular Tags |