1 19 20 package org.netbeans.bluej; 21 22 import java.beans.PropertyChangeListener ; 23 import java.util.ArrayList ; 24 import java.util.List ; 25 import javax.swing.Icon ; 26 import javax.swing.ImageIcon ; 27 import javax.swing.event.ChangeEvent ; 28 import javax.swing.event.ChangeListener ; 29 import org.openide.filesystems.FileObject; 30 import org.netbeans.api.project.Sources; 31 import org.netbeans.api.project.SourceGroup; 32 import org.netbeans.api.java.project.JavaProjectConstants; 33 import org.openide.util.NbBundle; 34 import org.openide.util.Utilities; 35 36 37 41 public class BluejSources implements Sources { 42 43 private SourceGroup[] javaSources; 44 45 private SourceGroup[] genericSources; 46 47 BluejSources(BluejProject project) { 48 javaSources = new SourceGroup[] {new TheOneSourceGroup(project.getProjectDirectory())}; 49 genericSources = new SourceGroup[] {new TheOneSourceGroup(project.getProjectDirectory())}; 50 } 51 52 54 public SourceGroup[] getSourceGroups(final String type) { 55 if (JavaProjectConstants.SOURCES_TYPE_JAVA.equals(type)) { 56 return javaSources; 57 } 58 if (Sources.TYPE_GENERIC.equals(type)) { 59 return genericSources; 60 } 61 return new SourceGroup[0]; 62 } 63 64 65 public void addChangeListener(ChangeListener changeListener) { 66 } 68 69 public void removeChangeListener(ChangeListener changeListener) { 70 } 72 73 74 private static class TheOneSourceGroup implements SourceGroup { 75 76 private FileObject root; 77 78 private TheOneSourceGroup(FileObject root) { 79 this.root = root; 80 } 81 82 public FileObject getRootFolder() { 83 return root; 84 } 85 86 public String getName() { 87 return "Sources"; } 89 90 public String getDisplayName() { 91 return NbBundle.getMessage(BluejSources.class, "Source_Group_Display_Name"); 92 } 93 94 public Icon getIcon(boolean b) { 95 return new ImageIcon (Utilities.loadImage("/org/netbeans/bluej/resources/bluejproject.png")); } 97 98 public boolean contains(FileObject fileObject) throws IllegalArgumentException { 99 if ("bluej.pkg".equals(fileObject.getNameExt())) { return false; 101 } 102 if ("build.xml".equals(fileObject.getNameExt())) { return false; 104 } 105 if (fileObject.isFolder() && fileObject.getFileObject("bluej.pkg") == null) { return false; 107 } 108 return true; 109 } 110 111 public void addPropertyChangeListener(PropertyChangeListener propertyChangeListener) { 112 } 114 115 public void removePropertyChangeListener(PropertyChangeListener propertyChangeListener) { 116 } 118 119 } 120 } 121 | Popular Tags |