RFE 125060 introduced the ability for a user to exclude classes/packages/methods from appearing in the completer. Users on the mailing list have expressed
a desire to see this functionality added to the "Go To Type" function. The support would be greatly enhanced by a preference to exclude library classes and
system classes, which I believe also falls under this RFE.
I am volunteering to work on this feature, but can't guarantee it'll make 6.7.
Adding 'twolf2919' as he was the original requester of this RFE on the mailing list.
Is this really a java.editor issue? I couldn't find any Go To Type support in that module.
This functionality is implemented in the 'Jump To' (<NB_SRC_HOME>/jumpto) module. Java supplies its TypeProvider implementation in 'Java Source UI'
(java.sourceui) module, org.netbeans.modules.java.source.ui.JavaTypeProvider class. There is no special catergory in IZ, maybe java/source would be more
This could be well aligned with CC excluder, not sure if for 6.7.
Uh....dumb question: how does this feature manifest itself? I downloaded the 05/11 daily and don't see anything extra
in the ctrl-o "go to type" nor can I find any settings under Options. I looked at the old bug (for the java completion
excluder) and didn't see anything there either that would give it away.
thnx in advance for pointing to the feature.
@twolf2919 this feature hasn't been implemented yet. msauer was discussing where the Go To Type was implemented in the codebase. Don't expect this for
6.7, but get your friends to vote. If you get 5 votes, I'll implement it myself for 7.0 ;-)
@fommil: this morning I got a status update on this bug that indicated that the status had changed from "reopened" to
"resolved" and the resolution went from nothing to "fixed". That is why I asked the question. But now I look at the
status on this form and it is "New"?? Weird.
Anyway, I'll try to drum up some votes as this feature is desperately needed.
By the way, it would be nice if the feature not only allowed exclusion of libraries and system classes, but also the
classes of selected projects. I often have multiple projects open - the "main" is usually the trunk release of our
software and a couple other projects representing older versions (for support). When I do "Go-to-type", I typically see
multiple versions of all the classes. It would be nice if I could uncheck the projects whose classes I'm not interested
in at the moment.
@twolf2919 aah, that's Issuezilla being unclear (as always). This RFE depends on issue 125060, which was recently completed... therefore this issue is clear
for work to begin.
I think a useful button to have in Go To Type would be to say "exclude all system libraries" and another for "exclude all middleware" and yet another for
"exclude all other projects".
@fommil: what would "Exclude all other projects" mean in a "Go-to-Type" context? You're not in a particular project, so
"other" is misleading. "Exclude non-main projects" would be clearer. An even more streamlined GUI would show,
initially checked, checkboxes for:
"Open Project 1"
"Open Project 2"
When the user unchecks any of them, the associated classes drop from the list of types shown in the list. Maybe there
can also be an "Advanced" button that brings up a dialog where the user can choose all the libraries/projects to
exclude...but that might be overkill - better to start with something simpler.
OK, that sounds good. I consider it part of the RFE.
However, non-Java Completer Excluder aspects of this RFE could be difficult to implement... the Go To Type is not specific to Java projects, so it will be
difficult to bring change to such a generic feature.
The way that IntelliJ IDEA does this is to only consider classes/files in the open project (analogous to all open
projects in NetBeans) when using Go To Class/File functionality. A checkbox is included in the resulting dialog (where
you type in the class/file name pattern) to allow the search to include non-project classes/files, which obviously slows
things down depending on the number and size of thirdparty libraries used by the open project. In my opinion, it's a
good solution, not at all Java-specific, and quite simple to understand.
@twolf2919 from the sounds of things, we're not actually talking about using the new Java Completion Excluder... it's more about checkboxes for unopen
projects, middleware and system libs. Does that sound about right?
@fommil: I don't know if it should use the Java completion excluder as I've never used that feature. I just want to be
able exclude certain classes or categories of classes from the list of types that show up when I bring up and type into
the Go-To-Type dialog (ctrl-o). Checkboxes on he Go-To-Type dialog and/or an "Advanced" tab with additional choices
would be a fine solution, I think.
See also path exclusions per project - http://netbeans.org/bugzilla/show_bug.cgi?id=156741