diff options
| author | Noopur Gupta | 2014-07-16 18:02:26 +0000 |
|---|---|---|
| committer | Markus Keller | 2014-07-16 18:02:26 +0000 |
| commit | e3acadde6670cb99e73585d381037e12bf2af2cd (patch) | |
| tree | c4696408cd40240e2b159c5e6fc9ed36ab01fa3b | |
| parent | 36fddeaa5763715b00afe20f0087dff5c4cabd4d (diff) | |
| download | eclipse.jdt.ui-e3acadde6670cb99e73585d381037e12bf2af2cd.tar.gz eclipse.jdt.ui-e3acadde6670cb99e73585d381037e12bf2af2cd.tar.xz eclipse.jdt.ui-e3acadde6670cb99e73585d381037e12bf2af2cd.zip | |
Bug 437398: [ccp] Don't select extension when asking for new file name on paste
| -rw-r--r-- | org.eclipse.jdt.ui/ui refactoring/org/eclipse/jdt/internal/ui/refactoring/reorg/NewNameQueries.java | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/org.eclipse.jdt.ui/ui refactoring/org/eclipse/jdt/internal/ui/refactoring/reorg/NewNameQueries.java b/org.eclipse.jdt.ui/ui refactoring/org/eclipse/jdt/internal/ui/refactoring/reorg/NewNameQueries.java index ef497c3d15..f89f57e667 100644 --- a/org.eclipse.jdt.ui/ui refactoring/org/eclipse/jdt/internal/ui/refactoring/reorg/NewNameQueries.java +++ b/org.eclipse.jdt.ui/ui refactoring/org/eclipse/jdt/internal/ui/refactoring/reorg/NewNameQueries.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2000, 2011 IBM Corporation and others. + * Copyright (c) 2000, 2014 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -82,27 +82,27 @@ public class NewNameQueries implements INewNameQueries { public INewNameQuery createNewCompilationUnitNameQuery(ICompilationUnit cu, String initialSuggestedName) { String[] keys= { BasicElementLabels.getJavaElementName(JavaCore.removeJavaLikeExtension(cu.getElementName()))}; String message= Messages.format(ReorgMessages.ReorgQueries_enterNewNameQuestion, keys); - return createStaticQuery(createCompilationUnitNameValidator(cu), message, initialSuggestedName, getShell()); + return createStaticQuery(createCompilationUnitNameValidator(cu), message, initialSuggestedName, true, getShell()); } public INewNameQuery createNewResourceNameQuery(IResource res, String initialSuggestedName) { String[] keys= { BasicElementLabels.getResourceName(res)}; String message= Messages.format(ReorgMessages.ReorgQueries_enterNewNameQuestion, keys); - return createStaticQuery(createResourceNameValidator(res), message, initialSuggestedName, getShell()); + return createStaticQuery(createResourceNameValidator(res), message, initialSuggestedName, res.getType() == IResource.FILE, getShell()); } public INewNameQuery createNewPackageNameQuery(IPackageFragment pack, String initialSuggestedName) { String[] keys= {JavaElementLabels.getElementLabel(pack, JavaElementLabels.ALL_DEFAULT)}; String message= Messages.format(ReorgMessages.ReorgQueries_enterNewNameQuestion, keys); - return createStaticQuery(createPackageNameValidator(pack), message, initialSuggestedName, getShell()); + return createStaticQuery(createPackageNameValidator(pack), message, initialSuggestedName, false, getShell()); } public INewNameQuery createNewPackageFragmentRootNameQuery(IPackageFragmentRoot root, String initialSuggestedName) { String[] keys= {JavaElementLabels.getElementLabel(root, JavaElementLabels.ALL_DEFAULT)}; String message= Messages.format(ReorgMessages.ReorgQueries_enterNewNameQuestion, keys); - return createStaticQuery(createPackageFragmentRootNameValidator(root), message, initialSuggestedName, getShell()); + return createStaticQuery(createPackageFragmentRootNameValidator(root), message, initialSuggestedName, false, getShell()); } @@ -119,19 +119,26 @@ public class NewNameQueries implements INewNameQueries { }; } - private static INewNameQuery createStaticQuery(final IInputValidator validator, final String message, final String initial, final Shell shell){ + private static INewNameQuery createStaticQuery(final IInputValidator validator, final String message, final String initial, final boolean isFile, final Shell shell) { return new INewNameQuery(){ public String getNewName() throws OperationCanceledException { InputDialog dialog= new InputDialog(shell, ReorgMessages.ReorgQueries_nameConflictMessage, message, initial, validator) { - /* (non-Javadoc) - * @see org.eclipse.jface.dialogs.InputDialog#createDialogArea(org.eclipse.swt.widgets.Composite) - */ @Override protected Control createDialogArea(Composite parent) { Control area= super.createDialogArea(parent); TextFieldNavigationHandler.install(getText()); return area; } + + @Override + protected Control createContents(Composite parent) { + Control contents= super.createContents(parent); + int lastIndexOfDot= initial.lastIndexOf('.'); + if (isFile && lastIndexOfDot > 0) { + getText().setSelection(0, lastIndexOfDot); + } + return contents; + } }; if (dialog.open() == Window.CANCEL) throw new OperationCanceledException(); |
