Community
Participate
Working Groups
Implement JDT-style Rename in Workspace quick fix.
Created attachment 177698 [details] Proposed implementation A review of the implementation will be appreciated. I'm particularly interested in Markus' opinion on the changes in ASTManager.
Markus, could you please review changes in ASTManager. Thanks.
Created attachment 178696 [details] Final implementation.
Fixed in HEAD > 20100911.
*** cdt cvs genie on behalf of sprigogin *** Bug 318510 - Lightweight rename refactoring. [*] CRenameProcessor.java 1.6 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/CRenameProcessor.java?root=Tools_Project&r1=1.5&r2=1.6 [*] RenameMessages.java 1.3 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/RenameMessages.java?root=Tools_Project&r1=1.2&r2=1.3 [*] CRenameProcessorDelegate.java 1.10 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/CRenameProcessorDelegate.java?root=Tools_Project&r1=1.9&r2=1.10 [+] CRenameRefactoringPreferences.java http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/CRenameRefactoringPreferences.java?root=Tools_Project&revision=1.1&view=markup [*] CRenameRefactoringInputPage.java 1.8 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/CRenameRefactoringInputPage.java?root=Tools_Project&r1=1.7&r2=1.8 [*] CRenameLocalProcessor.java 1.6 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/CRenameLocalProcessor.java?root=Tools_Project&r1=1.5&r2=1.6 [+] RenameInformationPopup.java http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/RenameInformationPopup.java?root=Tools_Project&revision=1.1&view=markup [*] CRenameIncludeProcessor.java 1.4 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/CRenameIncludeProcessor.java?root=Tools_Project&r1=1.3&r2=1.4 [*] CRenameGlobalProcessor.java 1.3 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/CRenameGlobalProcessor.java?root=Tools_Project&r1=1.2&r2=1.3 [*] ASTManager.java 1.21 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/ASTManager.java?root=Tools_Project&r1=1.20&r2=1.21 [*] CRefactory.java 1.9 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/CRefactory.java?root=Tools_Project&r1=1.8&r2=1.9 [*] CRenameRefactoring.java 1.2 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/CRenameRefactoring.java?root=Tools_Project&r1=1.1&r2=1.2 [+] RenameLinkedMode.java http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/RenameLinkedMode.java?root=Tools_Project&revision=1.1&view=markup [+] RenameSupport.java http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/RenameSupport.java?root=Tools_Project&revision=1.1&view=markup [*] RenameMessages.properties 1.3 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/RenameMessages.properties?root=Tools_Project&r1=1.2&r2=1.3 [*] Messages.properties 1.2 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/Messages.properties?root=Tools_Project&r1=1.1&r2=1.2 [*] Messages.java 1.6 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/Messages.java?root=Tools_Project&r1=1.5&r2=1.6 [+] IScheduledRefactoring.java http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/IScheduledRefactoring.java?root=Tools_Project&revision=1.1&view=markup [+] RefactoringSavePreferences.java http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/RefactoringSavePreferences.java?root=Tools_Project&revision=1.1&view=markup [*] CRefactoringDescription.java 1.2 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/CRefactoringDescription.java?root=Tools_Project&r1=1.1&r2=1.2 [+] RefactoringStarter.java http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/RefactoringStarter.java?root=Tools_Project&revision=1.1&view=markup [+] ChangeExceptionHandler.java http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/ChangeExceptionHandler.java?root=Tools_Project&revision=1.1&view=markup [+] RefactoringSaveHelper.java http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/RefactoringSaveHelper.java?root=Tools_Project&revision=1.1&view=markup [+] RefactoringExecutionHelper.java http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/RefactoringExecutionHelper.java?root=Tools_Project&revision=1.1&view=markup [+] RefactoringAvailabilityTester.java http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/RefactoringAvailabilityTester.java?root=Tools_Project&revision=1.1&view=markup [*] CCorrectionAssistant.java 1.8 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/correction/CCorrectionAssistant.java?root=Tools_Project&r1=1.7&r2=1.8 [*] CorrectionCommandHandler.java 1.8 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/correction/CorrectionCommandHandler.java?root=Tools_Project&r1=1.7&r2=1.8 [*] CorrectionMessages.properties 1.4 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/correction/CorrectionMessages.properties?root=Tools_Project&r1=1.3&r2=1.4 [*] CorrectionMessages.java 1.4 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/correction/CorrectionMessages.java?root=Tools_Project&r1=1.3&r2=1.4 [*] QuickAssistProcessor.java 1.2 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/correction/QuickAssistProcessor.java?root=Tools_Project&r1=1.1&r2=1.2 [*] PreferencesMessages.java 1.46 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/PreferencesMessages.java?root=Tools_Project&r1=1.45&r2=1.46 [*] PreferencesMessages.properties 1.96 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/PreferencesMessages.properties?root=Tools_Project&r1=1.95&r2=1.96 [*] CPluginPreferencePage.java 1.30 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CPluginPreferencePage.java?root=Tools_Project&r1=1.29&r2=1.30 [*] ActionMessages.java 1.12 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/ActionMessages.java?root=Tools_Project&r1=1.11&r2=1.12 [*] WorkbenchRunnableAdapter.java 1.9 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/WorkbenchRunnableAdapter.java?root=Tools_Project&r1=1.8&r2=1.9 [*] ActionMessages.properties 1.20 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/ActionMessages.properties?root=Tools_Project&r1=1.19&r2=1.20 [*] ActionUtil.java 1.7 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/actions/ActionUtil.java?root=Tools_Project&r1=1.6&r2=1.7 [+] RenameRefactoringProposal.java http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/correction/proposals/RenameRefactoringProposal.java?root=Tools_Project&revision=1.1&view=markup [*] CEditor.java 1.217 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CEditor.java?root=Tools_Project&r1=1.216&r2=1.217 [*] OpenAction.java 1.12 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/actions/OpenAction.java?root=Tools_Project&r1=1.11&r2=1.12 [*] CRenameAction.java 1.4 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/refactoring/actions/CRenameAction.java?root=Tools_Project&r1=1.3&r2=1.4 [*] RefactoringAction.java 1.7 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/refactoring/actions/RefactoringAction.java?root=Tools_Project&r1=1.6&r2=1.7 [*] Strings.java 1.4 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/util/Strings.java?root=Tools_Project&r1=1.3&r2=1.4 [*] CUIPlugin.java 1.95 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/CUIPlugin.java?root=Tools_Project&r1=1.94&r2=1.95 [*] PreferenceConstants.java 1.61 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/PreferenceConstants.java?root=Tools_Project&r1=1.60&r2=1.61 [+] BasicElementLabels.java http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/BasicElementLabels.java?root=Tools_Project&revision=1.1&view=markup [*] CPluginImages.java 1.92 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/CPluginImages.java?root=Tools_Project&r1=1.91&r2=1.92 [*] EditorUtility.java 1.71 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/EditorUtility.java?root=Tools_Project&r1=1.70&r2=1.71 [*] AssistQuickFixTest.java 1.4 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/quickfix/AssistQuickFixTest.java?root=Tools_Project&r1=1.3&r2=1.4
Hi Sergey. I just updated to HEAD and I can't rename (alt+shift+r) a simple variable. Maybe a file was not committed? Am I missing something? int main() { int foo; <-- rename foo; } Caused by: java.lang.NumberFormatException: There is no setting associated with the key "scope" at org.eclipse.jface.dialogs.DialogSettings.getInt(DialogSettings.java:185) at org.eclipse.cdt.internal.ui.refactoring.rename.CRenameRefactoringPreferences.getInt(CRenameRefactoringPreferences.java:53) at org.eclipse.cdt.internal.ui.refactoring.rename.RenameLinkedMode.undoAndCreateRenameSupport(RenameLinkedMode.java:429) at org.eclipse.cdt.internal.ui.refactoring.rename.RenameLinkedMode.doRename(RenameLinkedMode.java:325) at org.eclipse.cdt.internal.ui.refactoring.rename.RenameLinkedMode$EditorSynchronizer.left(RenameLinkedMode.java:106) ...
(In reply to comment #6) The new code is not defensive enough. Will fix shortly.
(In reply to comment #7) > (In reply to comment #6) > The new code is not defensive enough. Will fix shortly. Fixed.
*** cdt cvs genie on behalf of sprigogin *** Bug 318510 - Fixed an NFE reported by Marc-Andre Laperle. [*] CRenameRefactoringInputPage.java 1.9 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/CRenameRefactoringInputPage.java?root=Tools_Project&r1=1.8&r2=1.9 [*] CRenameRefactoringPreferences.java 1.2 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/CRenameRefactoringPreferences.java?root=Tools_Project&r1=1.1&r2=1.2 [*] RenameLinkedMode.java 1.2 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/RenameLinkedMode.java?root=Tools_Project&r1=1.1&r2=1.2
(In reply to comment #8) > Fixed. Thanks for working on this, it's a nice feature. I will do some real world testing and report any problems.