? 64491.patch ? 78174.diff Index: projectui/src/org/netbeans/modules/project/ui/OpenProjectsTrampolineImpl.java =================================================================== RCS file: /cvs/projects/projectui/src/org/netbeans/modules/project/ui/OpenProjectsTrampolineImpl.java,v retrieving revision 1.7 diff -c -r1.7 OpenProjectsTrampolineImpl.java *** projectui/src/org/netbeans/modules/project/ui/OpenProjectsTrampolineImpl.java 30 Jun 2006 21:27:19 -0000 1.7 --- projectui/src/org/netbeans/modules/project/ui/OpenProjectsTrampolineImpl.java 4 Oct 2006 13:57:11 -0000 *************** *** 80,85 **** --- 80,88 ---- if ( e.getPropertyName().equals( OpenProjectList.PROPERTY_OPEN_PROJECTS ) ) { pchSupport.firePropertyChange( OpenProjects.PROPERTY_OPEN_PROJECTS, e.getOldValue(), e.getNewValue() ); } + if ( e.getPropertyName().equals( OpenProjectList.PROPERTY_MAIN_PROJECT ) ) { + pchSupport.firePropertyChange( OpenProjects.PROPERTY_MAIN_PROJECT, e.getOldValue(), e.getNewValue() ); + } } public Project getMainProject() { Index: projectuiapi/apichanges.xml =================================================================== RCS file: /cvs/projects/projectuiapi/apichanges.xml,v retrieving revision 1.24 diff -c -r1.24 apichanges.xml *** projectuiapi/apichanges.xml 18 Sep 2006 11:25:53 -0000 1.24 --- projectuiapi/apichanges.xml 4 Oct 2006 13:57:11 -0000 *************** *** 81,86 **** --- 81,102 ---- + + + Added OpenProjects.PROPERTY_MAIN_PROJECT property + + + + + + + Added OpenProjects.PROPERTY_MAIN_PROJECT property and firing changes in main project property value + to listeners attached to OpenProjects. + + + + + Ability to construct project node's children from multiple sources. Index: projectuiapi/nbproject/project.properties =================================================================== RCS file: /cvs/projects/projectuiapi/nbproject/project.properties,v retrieving revision 1.26 diff -c -r1.26 project.properties *** projectuiapi/nbproject/project.properties 18 Sep 2006 11:25:54 -0000 1.26 --- projectuiapi/nbproject/project.properties 4 Oct 2006 13:57:11 -0000 *************** *** 17,23 **** javac.compilerargs=-Xlint -Xlint:-serial javac.source=1.5 ! spec.version.base=1.18.0 is.autoload=true javadoc.arch=${basedir}/arch.xml javadoc.apichanges=${basedir}/apichanges.xml --- 17,23 ---- javac.compilerargs=-Xlint -Xlint:-serial javac.source=1.5 ! spec.version.base=1.19.0 is.autoload=true javadoc.arch=${basedir}/arch.xml javadoc.apichanges=${basedir}/apichanges.xml Index: projectuiapi/src/org/netbeans/api/project/ui/OpenProjects.java =================================================================== RCS file: /cvs/projects/projectuiapi/src/org/netbeans/api/project/ui/OpenProjects.java,v retrieving revision 1.8 diff -c -r1.8 OpenProjects.java *** projectuiapi/src/org/netbeans/api/project/ui/OpenProjects.java 30 Jun 2006 21:27:27 -0000 1.8 --- projectuiapi/src/org/netbeans/api/project/ui/OpenProjects.java 4 Oct 2006 13:57:11 -0000 *************** *** 50,55 **** --- 50,61 ---- */ public static final String PROPERTY_OPEN_PROJECTS = "openProjects"; // NOI18N + /** + * Property representing main project. + * @see #getMainProject + */ + public static final String PROPERTY_MAIN_PROJECT = "MainProject"; // NOI18N + private static OpenProjects INSTANCE = new OpenProjects(); private OpenProjectsTrampoline trampoline; Index: projectuiapi/test/unit/src/org/netbeans/api/project/ui/OpenProjectsTest.java =================================================================== RCS file: /cvs/projects/projectuiapi/test/unit/src/org/netbeans/api/project/ui/OpenProjectsTest.java,v retrieving revision 1.3 diff -c -r1.3 OpenProjectsTest.java *** projectuiapi/test/unit/src/org/netbeans/api/project/ui/OpenProjectsTest.java 15 Sep 2006 18:30:42 -0000 1.3 --- projectuiapi/test/unit/src/org/netbeans/api/project/ui/OpenProjectsTest.java 4 Oct 2006 13:57:11 -0000 *************** *** 72,77 **** --- 72,93 ---- assertEquals(OpenProjects.PROPERTY_OPEN_PROJECTS, e.getPropertyName()); + OpenProjects.getDefault().setMainProject(testProject); + + assertEquals(1, l.events.size()); + + e = l.events.remove(0); + + assertEquals(OpenProjects.PROPERTY_MAIN_PROJECT, e.getPropertyName()); + + OpenProjects.getDefault().setMainProject(null); + + assertEquals(1, l.events.size()); + + e = l.events.remove(0); + + assertEquals(OpenProjects.PROPERTY_MAIN_PROJECT, e.getPropertyName()); + OpenProjects.getDefault().close(new Project[] {testProject}); assertEquals(1, l.events.size()); *************** *** 80,85 **** --- 96,102 ---- assertEquals(OpenProjects.PROPERTY_OPEN_PROJECTS, e.getPropertyName()); } + private static final class PropertyChangeListenerImpl implements PropertyChangeListener {