1 19 20 package org.netbeans.modules.xml.schema.ui.basic.search; 21 22 import java.awt.Component ; 23 import javax.swing.SwingUtilities ; 24 import org.netbeans.modules.xml.schema.model.SchemaComponent; 25 import org.netbeans.modules.xml.schema.ui.nodes.SchemaComponentNode; 26 import org.netbeans.modules.xml.schema.ui.nodes.categorized.CategoryNode; 27 import org.netbeans.modules.xml.xam.ui.category.Category; 28 import org.openide.nodes.Node; 29 import org.openide.windows.TopComponent; 30 31 36 public class Providers { 37 38 41 private Providers() { 42 } 43 44 50 public static Class <? extends SchemaComponent> getSelectedChildType( 51 Category category) { 52 Component parent = category.getComponent().getParent(); 53 TopComponent tc = (TopComponent) SwingUtilities.getAncestorOfClass( 54 TopComponent.class, parent); 55 if (tc != null) { 56 Node[] nodes = tc.getActivatedNodes(); 57 if (nodes != null && nodes.length > 0) { 58 for (Node node : nodes) { 59 CategoryNode cn = (CategoryNode) node.getCookie( 60 CategoryNode.class); 61 if (cn != null) { 62 return cn.getChildType(); 63 } 64 } 65 } 66 } 67 return null; 68 } 69 70 76 public static SchemaComponent getSelectedComponent(Category category) { 77 Component parent = category.getComponent().getParent(); 78 TopComponent tc = (TopComponent) SwingUtilities.getAncestorOfClass( 79 TopComponent.class, parent); 80 if (tc != null) { 81 Node[] nodes = tc.getActivatedNodes(); 82 if (nodes != null && nodes.length > 0) { 83 for (Node node : nodes) { 84 SchemaComponentNode scn = (SchemaComponentNode) node. 85 getCookie(SchemaComponentNode.class); 86 if (scn != null) { 87 return scn.getReference().get(); 88 } 89 } 90 } 91 } 92 return null; 93 } 94 } 95 | Popular Tags |