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.
Summary: | Java Search | ||
---|---|---|---|
Product: | java | Reporter: | qbeukes <qbeukes> |
Component: | Refactoring | Assignee: | Ralph Ruijs <ralphbenjamin> |
Status: | NEW --- | ||
Severity: | blocker | CC: | markiewb |
Priority: | P1 | ||
Version: | 6.x | ||
Hardware: | All | ||
OS: | All | ||
Issue Type: | ENHANCEMENT | Exception Reporter: |
Description
qbeukes
2008-07-26 16:31:55 UTC
What is not enough in "Find Usages" feature of NetBeans? (Alt+F7 on any element in editor or find it in context menu) I know of Usages, but it technically doesn't count, as it searches for... Usages. It's not a "Java Search". Let me list some of the features: 1. You can type your own values 2. Search For: - Type - Package - Field - Method - Constructor 3. Limit To - Declarations - Implementors - References - All occurrences - Read accesses - Write accesses You can also search in library sources, and even the JRE libraries. Example: I want a list of all "getters" in my project. -> I enter *.get* as the text, I select "Methods" as the type, and "Declarations" as my limit. Example 2: Or I have a class with a public variable which I access directory (instance.varName). I am doing something wicket and weird, and want to convert all write accesses to a setter. So I select it, press Ctrl-H, and search for all assignments/write accesses. Then I can just press the "next" button to highlight every change, and change appropriately. Optimized for maximum developer output/performance. Example 3: I want to find all declarations of any 2 argument setters that have a String as their first argument. Search for: *.set*(String, *) Select type: Methods Limit to: Declarations Limited to only the imagination.... The only things I've wanted to do with the Eclipse one so far that I couldn't is: 1. Search for - (i) variables or (ii) methods accessed or referenced - (x) outside or (y) inside their own - (a) class or (b) package. 2. Use regular expressions in the search criteria. The wildcards can get limited. I once wanted to do the example 3 search above, but I wanted to the 2nd argument to be either "int|Integer|long|Long". I couldn't so I ended up having to go through many many extra methods that have strings/doubles/etc as their second arguments. |