1 19 20 26 package org.netbeans.modules.xml.wsdl.ui.view.treeeditor; 27 28 import java.awt.datatransfer.Transferable ; 29 import java.io.IOException ; 30 import java.util.Collection ; 31 import java.util.List ; 32 33 import org.netbeans.modules.xml.wsdl.model.Binding; 34 import org.netbeans.modules.xml.wsdl.model.Definitions; 35 import org.netbeans.modules.xml.wsdl.ui.cookies.AddChildWSDLElementCookie; 36 import org.netbeans.modules.xml.wsdl.ui.view.treeeditor.newtype.BindingNewType; 37 import org.openide.util.NbBundle; 38 import org.openide.util.Utilities; 39 import org.openide.util.datatransfer.NewType; 40 41 46 public class BindingFolderNode extends FolderNode { 47 48 private Definitions mDef = null; 49 50 public BindingFolderNode(Definitions element) { 51 super(new BindingFolderChildren(element), element, Binding.class); 52 mDef = element; 53 this.setDisplayName(NbBundle. 54 getMessage(BindingFolderNode.class, 55 "BINDING_FOLDER_NODE_NAME")); 56 getLookupContents().add(new AddChildWSDLElementCookie(element)); 57 this.addNodeListener(new WSDLNodeListener(this)); 58 BADGE_ICON = Utilities.loadImage 59 ("org/netbeans/modules/xml/wsdl/ui/view/resources/binding_badge.png"); 60 } 61 62 @Override 63 public final NewType[] getNewTypes() 64 { 65 if (isEditable()) { 66 return new NewType[] {new BindingNewType(mDef)}; 67 } 68 return new NewType[] {}; 69 } 70 public Object getWSDLConstruct() { 71 return mDef; 72 } 73 public static final class BindingFolderChildren extends GenericWSDLComponentChildren { 74 public BindingFolderChildren(Definitions definitions) { 75 super(definitions); 76 } 77 78 @Override 79 protected Collection getKeys() { 80 Definitions def = (Definitions) getWSDLComponent(); 81 return def.getBindings(); 82 } 83 } 84 @Override 85 protected void createPasteTypes(Transferable t, List s) { 86 super.createPasteTypes(t, s); 87 } 88 89 @Override 90 public Transferable drag() throws IOException { 91 return super.drag(); 92 } 93 94 @Override 95 public Class getType() { 96 return Binding.class; 97 } 98 99 100 } 101 102 103 | Popular Tags |