Override.Insight allows quick finding of methods and constructors to override with names matching a word at the cursor position or a typed word and overriding them in the class at the cursor position.

Override.Insight popup window
Override.Insight popup window

When editing a file, place the cursor within the bounds of the class you want to override methods for, and press Ctrl+M (CUA) to invoke Override.Insight. The Override.Insight popup will be shown with the list of methods those match the word at the cursor position.

The list may be empty if there are no matching methods though. To find matches, type a word in the Override Methods edit box and Override.Insight will dynamically rearrange the methods' list to show the matching ones. You can also leave the Override Methods edit box blank to view all the methods to override. Override.Insight highlights the methods with names exactly matching the typed word with bold font and the abstract methods with italic font.

In addition to the methods inherited from the super class, Override.Insight shows the methods defined in the target class' interfaces but not implemented by the target class (the built-in Override Methods Wizard doesn't offer such an ability yet).

You can select a method, either one or any, navigating through the list with the help of the usual keyboard. An alternative way to do it is to continue typing the word; the list selection will be changed to produce the closest match possible.

Press the Enter key when you select the required methods and Override.Insight will override them and add calls to the appropriate methods of the super class, if needed.

You can call Override.Insight with constructors only using the shortcut Ctrl+Shift+M (CUA).

Also, there is a possibility of invoking the built-in Override Methods Wizard. You can use the appropriate button in the left top corner of the popup to invoke it.

Code Changes Synchronization

Override.Insight analyses changes in all dependant source files and correctly reflects them in the methods list. But in most cases you need to compile all dependant classes before invocating Override.Insight. If the required class is not compiled yet or the required methods are not found in the compiled class, these errors will be shown in the Status View.

Options Dependency

Using the Project Properties | Productivity! | General property page you can customize Code Generation Options which allow you to adjust the code style for the generated methods code.

Import statements are generated basing on the Imports Generation settings on Editor Options | Productivity! | General property page. There you also can customize other Override.Insight options, such as Search Options and Sort Classes By.

See also: Productivity! Tools, Customizing Productivity!