This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
I'm going to add module core/swing/dirchooser (formerly contrib/dirchooser) into standard Netbeans distribution soon. Although module has no public API, I'm opening fast-track review to ensure my steps are correct. Some interesting Q & A: 1) Which cluster dirchosser belongs to? I chose ide cluster, platform users will probably not want dirchooser. 2) dirchooser x quickfilechooser? I modified dirchooser to be aware of quickfilechooser (dynamically, without any module dependency), so quickfilechooser will always win if both modules are installed. 3) Maybe we should introduce boolean runtime option "standard-file-chooser" which will prevent dirchooser from installing, as kind of solution in case of yet unknown problems? 4) Currently dirchooser works only for JFileCHooser.DIRECTORIES_ONLY selection mode. Do we want dirchooser also for opening files? It would be doable, after some heavy fixing.
link to UI spec from Soot, so that we know how dirchooser looks like: http://core.netbeans.org/proposals/dirchooser_ui_spec.html
Created attachment 42744 [details] dirchooser look on GTK - ubuntu feisty (7.04)
list of problems solved during UI review: http://www.netbeans.org/issues/showdependencytree.cgi?id=88383
Dafe, here is my opinion: 1. If you ask me, IMO all swing users will want it :-), I would vote for platform if it worked for all files, but I am OK with IDE if you see any reasons for not putting it in platform. We can always move it down, more easily then up. 3. sounds reasonable 4. It seems to work only in Open project, even when adding folders to Favorites I do not see completion (using contrib\dirchooser). I very much agree this should be enabled for all files.
Thanks for opinions: ad 1) I forgot that dirchooser needs to depend on Project API, so i put it in ide cluster. ad 3) property added, generated and filled architecture description (sidenote: arch description is starting to be unpleasantly long) ad 4) Unfortunately I can't enable dirchooser for files and files/directories now, code is not written for this request and is too buggy now. I'll try to fix in and enable later if I have time.
integrated into main trunk: IDE: [5/30/07 1:36 PM] Committing started Directory /cvs/core/swing/dirchooser added to the repository Directory /cvs/core/swing/dirchooser/src added to the repository Directory /cvs/core/swing/dirchooser/src/org added to the repository Directory /cvs/core/swing/dirchooser/nbproject added to the repository Directory /cvs/core/swing/dirchooser/src/org/netbeans added to the repository Directory /cvs/core/swing/dirchooser/src/org/netbeans/swing added to the repository Directory /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser added to the repository cvs server: scheduling file `dirchooser/arch.xml' for addition cvs server: scheduling file `dirchooser/manifest.mf' for addition cvs server: scheduling file `dirchooser/src/org/netbeans/swing/dirchooser/Install.java' for addition cvs server: scheduling file `dirchooser/nbproject/project.properties' for addition cvs server: scheduling file `dirchooser/src/org/netbeans/swing/dirchooser/DelegatingChooserUI.java' for addition cvs server: scheduling file `dirchooser/src/org/netbeans/swing/dirchooser/InputBlocker.java' for addition cvs server: scheduling file `dirchooser/src/org/netbeans/swing/dirchooser/FileCompletionPopup.java' for addition cvs server: scheduling file `dirchooser/src/org/netbeans/swing/dirchooser/DirectoryNode.java' for addition cvs server: scheduling file `dirchooser/src/org/netbeans/swing/dirchooser/DirectoryCellEditor.java' for addition cvs server: scheduling file `dirchooser/build.xml' for addition cvs server: scheduling file `dirchooser/src/org/netbeans/swing/dirchooser/Module.java' for addition cvs server: scheduling file `dirchooser/src/org/netbeans/swing/dirchooser/DirectoryChooserUI.java' for addition cvs server: scheduling file `dirchooser/nbproject/project.xml' for addition cvs server: scheduling file `dirchooser/src/org/netbeans/swing/dirchooser/Bundle.properties' for addition cvs server: use 'cvs commit' to add these files permanently Directory /cvs/core/swing/dirchooser added to the repository Directory /cvs/core/swing/dirchooser/src added to the repository Directory /cvs/core/swing/dirchooser/src/org added to the repository Directory /cvs/core/swing/dirchooser/src/org/netbeans added to the repository Directory /cvs/core/swing/dirchooser/src/org/netbeans/swing added to the repository Directory /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser added to the repository Directory /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/resources added to the repository cvs server: scheduling file `dirchooser/src/org/netbeans/swing/dirchooser/resources/upFolderIcon.gif' for addition cvs server: scheduling file `dirchooser/src/org/netbeans/swing/dirchooser/resources/newFolderIcon.gif' for addition cvs server: use 'cvs commit' to add these files permanently Checking in ide/golden/deps.txt; /cvs/ide/golden/deps.txt,v <-- deps.txt new revision: 1.585; previous revision: 1.584 done Checking in ide/golden/moduleconfigs.txt; /cvs/ide/golden/moduleconfigs.txt,v <-- moduleconfigs.txt new revision: 1.57; previous revision: 1.56 done Checking in ide/golden/files-layout.txt; /cvs/ide/golden/files-layout.txt,v <-- files-layout.txt new revision: 1.253; previous revision: 1.252 done Checking in ide/golden/modules.txt; /cvs/ide/golden/modules.txt,v <-- modules.txt new revision: 1.153; previous revision: 1.152 done RCS file: /cvs/core/swing/dirchooser/nbproject/project.xml,v done Checking in core/swing/dirchooser/nbproject/project.xml; /cvs/core/swing/dirchooser/nbproject/project.xml,v <-- project.xml initial revision: 1.1 done RCS file: /cvs/core/swing/dirchooser/nbproject/project.properties,v done Checking in core/swing/dirchooser/nbproject/project.properties; /cvs/core/swing/dirchooser/nbproject/project.properties,v <-- project.properties initial revision: 1.1 done RCS file: /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/Module.java,v done Checking in core/swing/dirchooser/src/org/netbeans/swing/dirchooser/Module.java; /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/Module.java,v <-- Module.java initial revision: 1.1 done RCS file: /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/DirectoryChooserUI.java,v done Checking in core/swing/dirchooser/src/org/netbeans/swing/dirchooser/DirectoryChooserUI.java; /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/DirectoryChooserUI.java,v <-- DirectoryChooserUI.java initial revision: 1.1 done RCS file: /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/Bundle.properties,v done Checking in core/swing/dirchooser/src/org/netbeans/swing/dirchooser/Bundle.properties; /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/Bundle.properties,v <-- Bundle.properties initial revision: 1.1 done RCS file: /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/DirectoryCellEditor.java,v done Checking in core/swing/dirchooser/src/org/netbeans/swing/dirchooser/DirectoryCellEditor.java; /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/DirectoryCellEditor.java,v <-- DirectoryCellEditor.java initial revision: 1.1 done RCS file: /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/DirectoryNode.java,v done Checking in core/swing/dirchooser/src/org/netbeans/swing/dirchooser/DirectoryNode.java; /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/DirectoryNode.java,v <-- DirectoryNode.java initial revision: 1.1 done RCS file: /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/FileCompletionPopup.java,v done Checking in core/swing/dirchooser/src/org/netbeans/swing/dirchooser/FileCompletionPopup.java; /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/FileCompletionPopup.java,v <-- FileCompletionPopup.java initial revision: 1.1 done RCS file: /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/InputBlocker.java,v done Checking in core/swing/dirchooser/src/org/netbeans/swing/dirchooser/InputBlocker.java; /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/InputBlocker.java,v <-- InputBlocker.java initial revision: 1.1 done RCS file: /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/DelegatingChooserUI.java,v done Checking in core/swing/dirchooser/src/org/netbeans/swing/dirchooser/DelegatingChooserUI.java; /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/DelegatingChooserUI.java,v <-- DelegatingChooserUI.java initial revision: 1.1 done RCS file: /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/Install.java,v done Checking in core/swing/dirchooser/src/org/netbeans/swing/dirchooser/Install.java; /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/Install.java,v <-- Install.java initial revision: 1.1 done RCS file: /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/resources/newFolderIcon.gif,v done Checking in core/swing/dirchooser/src/org/netbeans/swing/dirchooser/resources/newFolderIcon.gif; /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/resources/newFolderIcon.gif,v <-- newFolderIcon.gif initial revision: 1.1 done RCS file: /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/resources/upFolderIcon.gif,v done Checking in core/swing/dirchooser/src/org/netbeans/swing/dirchooser/resources/upFolderIcon.gif; /cvs/core/swing/dirchooser/src/org/netbeans/swing/dirchooser/resources/upFolderIcon.gif,v <-- upFolderIcon.gif initial revision: 1.1 done RCS file: /cvs/core/swing/dirchooser/build.xml,v done Checking in core/swing/dirchooser/build.xml; /cvs/core/swing/dirchooser/build.xml,v <-- build.xml initial revision: 1.1 done RCS file: /cvs/core/swing/dirchooser/manifest.mf,v done Checking in core/swing/dirchooser/manifest.mf; /cvs/core/swing/dirchooser/manifest.mf,v <-- manifest.mf initial revision: 1.1 done RCS file: /cvs/core/swing/dirchooser/arch.xml,v done Checking in core/swing/dirchooser/arch.xml; /cvs/core/swing/dirchooser/arch.xml,v <-- arch.xml initial revision: 1.1 done Checking in nbbuild/nbproject/project.xml; /cvs/nbbuild/nbproject/project.xml,v <-- project.xml new revision: 1.79; previous revision: 1.78 done Checking in nbbuild/cluster.properties; /cvs/nbbuild/cluster.properties,v <-- cluster.properties new revision: 1.262; previous revision: 1.261 done IDE: [5/30/07 1:36 PM] Committing finished
You forgot to delete the old copy, which made builds fail for people with checkouts of contrib. Fixing: Removing .cvsignore; /shared/data/ccvs/repository/contrib/dirchooser/.cvsignore,v <-- .cvsignore new revision: delete; previous revision: 1.6 done Removing build.xml; /shared/data/ccvs/repository/contrib/dirchooser/build.xml,v <-- build.xml new revision: delete; previous revision: 1.5 done Removing manifest.mf; /shared/data/ccvs/repository/contrib/dirchooser/manifest.mf,v <-- manifest.mf new revision: delete; previous revision: 1.7 done Removing nbproject/.cvsignore; /shared/data/ccvs/repository/contrib/dirchooser/nbproject/.cvsignore,v <-- .cvsignore new revision: delete; previous revision: 1.4 done Removing nbproject/project.properties; /shared/data/ccvs/repository/contrib/dirchooser/nbproject/project.properties,v <-- project.properties new revision: delete; previous revision: 1.7 done Removing nbproject/project.xml; /shared/data/ccvs/repository/contrib/dirchooser/nbproject/project.xml,v <-- project.xml new revision: delete; previous revision: 1.7 done Removing src/org/netbeans/swing/dirchooser/Bundle.properties; /shared/data/ccvs/repository/contrib/dirchooser/src/org/netbeans/swing/dirchooser/Bundle.properties,v <-- Bundle.properties new revision: delete; previous revision: 1.8 done Removing src/org/netbeans/swing/dirchooser/DelegatingChooserUI.java; /shared/data/ccvs/repository/contrib/dirchooser/src/org/netbeans/swing/dirchooser/DelegatingChooserUI.java,v <-- DelegatingChooserUI.java new revision: delete; previous revision: 1.1 done Removing src/org/netbeans/swing/dirchooser/DirectoryCellEditor.java; /shared/data/ccvs/repository/contrib/dirchooser/src/org/netbeans/swing/dirchooser/DirectoryCellEditor.java,v <-- DirectoryCellEditor.java new revision: delete; previous revision: 1.7 done Removing src/org/netbeans/swing/dirchooser/DirectoryChooserUI.java; /shared/data/ccvs/repository/contrib/dirchooser/src/org/netbeans/swing/dirchooser/DirectoryChooserUI.java,v <-- DirectoryChooserUI.java new revision: delete; previous revision: 1.30 done Removing src/org/netbeans/swing/dirchooser/DirectoryNode.java; /shared/data/ccvs/repository/contrib/dirchooser/src/org/netbeans/swing/dirchooser/DirectoryNode.java,v <-- DirectoryNode.java new revision: delete; previous revision: 1.11 done Removing src/org/netbeans/swing/dirchooser/FileCompletionPopup.java; /shared/data/ccvs/repository/contrib/dirchooser/src/org/netbeans/swing/dirchooser/FileCompletionPopup.java,v <-- FileCompletionPopup.java new revision: delete; previous revision: 1.8 done Removing src/org/netbeans/swing/dirchooser/InputBlocker.java; /shared/data/ccvs/repository/contrib/dirchooser/src/org/netbeans/swing/dirchooser/InputBlocker.java,v <-- InputBlocker.java new revision: delete; previous revision: 1.6 done Removing src/org/netbeans/swing/dirchooser/Install.java; /shared/data/ccvs/repository/contrib/dirchooser/src/org/netbeans/swing/dirchooser/Install.java,v <-- Install.java new revision: delete; previous revision: 1.7 done Removing src/org/netbeans/swing/dirchooser/Module.java; /shared/data/ccvs/repository/contrib/dirchooser/src/org/netbeans/swing/dirchooser/Module.java,v <-- Module.java new revision: delete; previous revision: 1.6 done Removing src/org/netbeans/swing/dirchooser/resources/newFolderIcon.gif; /shared/data/ccvs/repository/contrib/dirchooser/src/org/netbeans/swing/dirchooser/resources/newFolderIcon.gif,v <-- newFolderIcon.gif new revision: delete; previous revision: 1.1 done Removing src/org/netbeans/swing/dirchooser/resources/upFolderIcon.gif; /shared/data/ccvs/repository/contrib/dirchooser/src/org/netbeans/swing/dirchooser/resources/upFolderIcon.gif,v <-- upFolderIcon.gif new revision: delete; previous revision: 1.1 done
Ouch, shame on me, thanks Jesse for fixing.
Re. "arch description is starting to be unpleasantly long" - true, it is not reasonable to go thru all the questions and type No. It is better to just select the questions that apply to your module and put there <api /> description that will then appear at the summary page.