diff --git a/platform/lang-impl/src/com/intellij/refactoring/lang/ExtractIncludeDialog.java b/platform/lang-impl/src/com/intellij/refactoring/lang/ExtractIncludeDialog.java index 8eb29eb36e6e..b7f52a6293e9 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/lang/ExtractIncludeDialog.java +++ b/platform/lang-impl/src/com/intellij/refactoring/lang/ExtractIncludeDialog.java @@ -50,7 +50,7 @@ public class ExtractIncludeDialog extends DialogWrapper { private JTextField myNameField; private final PsiDirectory myCurrentDirectory; private static final String REFACTORING_NAME = RefactoringBundle.message("extractIncludeFile.name"); - private final String myExtension; + protected final String myExtension; protected JLabel myTargetDirLabel; public PsiDirectory getTargetDirectory() { @@ -60,7 +60,8 @@ public class ExtractIncludeDialog extends DialogWrapper { private PsiDirectory myTargetDirectory; public String getTargetFileName () { - return myNameField.getText().trim() + "." + myExtension; + String name = myNameField.getText().trim(); + return name.contains(".") ? name: name + "." + myExtension; } public ExtractIncludeDialog(final PsiDirectory currentDirectory, final String extension) { @@ -116,7 +117,7 @@ public class ExtractIncludeDialog extends DialogWrapper { } protected String getNameLabel() { - return RefactoringBundle.message("name.for.extracted.include.file"); + return RefactoringBundle.message("name.for.extracted.include.file", myExtension); } private void validateOKButton() { diff --git a/platform/platform-resources-en/src/messages/RefactoringBundle.properties b/platform/platform-resources-en/src/messages/RefactoringBundle.properties index a3cd67c0784f..59da84ef90b8 100644 --- a/platform/platform-resources-en/src/messages/RefactoringBundle.properties +++ b/platform/platform-resources-en/src/messages/RefactoringBundle.properties @@ -87,7 +87,7 @@ javadoc.for.abstracts=JavaDoc for abstracts extractIncludeFile.name=Extract Include File file.already.exist=File {0} already exists file.already.exist.title=Extract Include File -name.for.extracted.include.file=&Name for extracted include file (without extension): +name.for.extracted.include.file=&Name for extracted include file (default extension: {0}) extract.to.directory=Extract to &directory: select.target.directory=Select target directory select.target.directory.description=The file will be created in this directory