1 19 20 package org.netbeans.modules.mdrxml.util; 21 22 import org.openide.util.actions.*; 23 import org.openide.nodes.*; 24 import org.openide.filesystems.*; 25 import org.openide.loaders.*; 26 27 33 public abstract class XMLToolsAction extends NodeAction { 34 35 36 public XMLToolsAction() { 37 } 38 39 42 protected boolean enable(Node nodes[]) { 43 if (nodes != null && nodes.length == 1) { 44 DataObject dobj = (DataObject) nodes[0].getCookie(DataObject.class); 45 if (dobj != null) { 46 if (dobj instanceof XMLDataObject) return true; 47 48 FileObject fo = dobj.getPrimaryFile(); 49 if (fo.getMIMEType().endsWith("+xml")) return true; 50 } 51 } 52 return false; 53 } 54 55 protected abstract void performXMLAction(FileObject fo); 56 57 protected void performAction(Node[] nodes) { 58 if (nodes != null && nodes.length == 1) { 59 DataObject dobj = (DataObject) nodes[0].getCookie(DataObject.class); 60 if (dobj != null) { 61 performXMLAction(dobj.getPrimaryFile()); 62 } 63 } 64 } 65 66 } 67 | Popular Tags |