From c9ee950352e3d1bc8566c32d54571a30b3cc3202 Mon Sep 17 00:00:00 2001 From: Emanuel Graf Date: Wed, 15 Apr 2009 11:21:01 +0000 Subject: [PATCH] FIXED - bug 266627: Some refactor operations belong on Source https://bugs.eclipse.org/bugs/show_bug.cgi?id=266627 Moving getterSetters and implement method to Source menu. --- core/org.eclipse.cdt.ui/plugin.properties | 4 ++- core/org.eclipse.cdt.ui/plugin.xml | 20 +++++++++----- .../cdt/ui/actions/GenerateActionGroup.java | 27 +++++++++++++------ .../actions/CRefactoringActionGroup.java | 15 +---------- .../actions/GettersAndSettersAction.java | 9 +++++++ .../actions/ImplementMethodAction.java | 9 +++++++ 6 files changed, 55 insertions(+), 29 deletions(-) diff --git a/core/org.eclipse.cdt.ui/plugin.properties b/core/org.eclipse.cdt.ui/plugin.properties index cf889fa71a3..8e28be462a7 100644 --- a/core/org.eclipse.cdt.ui/plugin.properties +++ b/core/org.eclipse.cdt.ui/plugin.properties @@ -164,6 +164,8 @@ Refactoring.hideMethod.label=Hide Method... Refactoring.implementMethod.label=Impl&ement Method... Refactoring.gettersAndSetters.label=Generate Getters and Setters... +Source.menu.label = &Source + CEditor.name=C/C++ Editor CPluginPreferencePage.name=C/C++ @@ -523,4 +525,4 @@ preferenceKeywords.syntaxcoloring=editor colors semantic coloring highlighting m preferenceKeywords.templates=editor templates snippet macros preferenceKeywords.folding=editor folding section comment header function method statement preprocessor preferenceKeywords.markoccurrences=editor occurrence mark highlight -preferenceKeywords.smarttyping=editor typing type close comment tabs indentation indent imports wrap escape semicolons braces brackets parenthesis parentheses strings literals paste pasting tabulator automatically +preferenceKeywords.smarttyping=editor typing type close comment tabs indentation indent imports wrap escape semicolons braces brackets parenthesis parentheses strings literals paste pasting tabulator automatically \ No newline at end of file diff --git a/core/org.eclipse.cdt.ui/plugin.xml b/core/org.eclipse.cdt.ui/plugin.xml index f2e3f25a8e3..b646e19f45d 100644 --- a/core/org.eclipse.cdt.ui/plugin.xml +++ b/core/org.eclipse.cdt.ui/plugin.xml @@ -1170,20 +1170,28 @@ id="org.eclipse.cdt.ui.actions.ExtractLocalVariable" retarget="true"> - - + + + + + fAllActions= new ArrayList(); @@ -168,13 +166,6 @@ public class CRefactoringActionGroup extends ActionGroup implements ISelectionCh fHideMethodAction.setActionDefinitionId(ICEditorActionDefinitionIds.HIDE_METHOD); fAllActions.add(fHideMethodAction); - fImplementMethodAction = new ImplementMethodAction(); - fImplementMethodAction.setActionDefinitionId(ICEditorActionDefinitionIds.IMPLEMENT_METHOD); - fAllActions.add(fImplementMethodAction); - - fGettersAndSettersAction = new GettersAndSettersAction(); - fGettersAndSettersAction.setActionDefinitionId(ICEditorActionDefinitionIds.GETTERS_AND_SETTERS); - fAllActions.add(fGettersAndSettersAction); } public void setWorkbenchSite(IWorkbenchSite site) { @@ -213,8 +204,6 @@ public class CRefactoringActionGroup extends ActionGroup implements ISelectionCh setActionHandler(actionBar, CdtActionConstants.EXTRACT_LOCAL_VARIABLE, fExtractLocalVariableAction); setActionHandler(actionBar, CdtActionConstants.EXTRACT_METHOD, fExtractFunctionAction); setActionHandler(actionBar, CdtActionConstants.HIDE_METHOD, fHideMethodAction); - setActionHandler(actionBar, CdtActionConstants.IMPLEMENT_METHOD, fImplementMethodAction); - setActionHandler(actionBar, CdtActionConstants.GETTERS_AND_SETTERS, fGettersAndSettersAction); } private void setActionHandler(IActionBars actionBar, String id, RefactoringAction action) { @@ -249,9 +238,7 @@ public class CRefactoringActionGroup extends ActionGroup implements ISelectionCh refactorSubmenu.add(new Separator(GROUP_REORG2)); refactorSubmenu.add(new Separator(GROUP_TYPE)); refactorSubmenu.add(new Separator(GROUP_TYPE2)); - refactorSubmenu.add(new Separator(GROUP_CODING2)); - addAction(refactorSubmenu, fImplementMethodAction); - addAction(refactorSubmenu, fGettersAndSettersAction); + refactorSubmenu.add(new Separator(GROUP_CODING2));; refactorSubmenu.add(new Separator(GROUP_TYPE3)); menu.appendToGroup(fGroupName, refactorSubmenu); diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/refactoring/actions/GettersAndSettersAction.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/refactoring/actions/GettersAndSettersAction.java index c385825682b..86e060473ba 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/refactoring/actions/GettersAndSettersAction.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/refactoring/actions/GettersAndSettersAction.java @@ -15,6 +15,7 @@ import org.eclipse.core.resources.IFile; import org.eclipse.core.resources.IResource; import org.eclipse.jface.text.ITextSelection; import org.eclipse.jface.window.IShellProvider; +import org.eclipse.ui.IEditorPart; import org.eclipse.cdt.core.model.ICElement; import org.eclipse.cdt.core.model.IField; @@ -34,6 +35,14 @@ public class GettersAndSettersAction extends RefactoringAction { super(Messages.GettersAndSetters_label); } + /** + * @since 5.1 + */ + public GettersAndSettersAction(IEditorPart editor) { + super(Messages.GettersAndSetters_label); + setEditor(editor); + } + @Override public void run(IShellProvider shellProvider, ICElement elem) { new GenerateGettersAndSettersRefactoringRunner(null, null, elem, shellProvider).run(); diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/refactoring/actions/ImplementMethodAction.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/refactoring/actions/ImplementMethodAction.java index be5b578d21a..636ac95ff2c 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/refactoring/actions/ImplementMethodAction.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/refactoring/actions/ImplementMethodAction.java @@ -16,6 +16,7 @@ import org.eclipse.core.resources.IFile; import org.eclipse.core.resources.IResource; import org.eclipse.jface.text.ITextSelection; import org.eclipse.jface.window.IShellProvider; +import org.eclipse.ui.IEditorPart; import org.eclipse.cdt.core.model.ICElement; import org.eclipse.cdt.core.model.IMethod; @@ -37,6 +38,14 @@ public class ImplementMethodAction extends RefactoringAction { super(Messages.ImplementMethodAction_label); } + /** + * @since 5.1 + */ + public ImplementMethodAction(IEditorPart editor) { + super(Messages.ImplementMethodAction_label); + setEditor(editor); + } + @Override public void run(IShellProvider shellProvider, ICElement elem) { new ImplementMethodRefactoringRunner(null, null, elem, shellProvider).run();