Fix line separators insertion

This commit is contained in:
Nikolay Krasko
2012-01-19 16:43:49 +04:00
parent 0e13952e0e
commit 14bccd9352
3 changed files with 9 additions and 7 deletions
@@ -53,11 +53,12 @@ public abstract class OverrideImplementMethodsHandler implements LanguageCodeIns
return;
}
String lineSeparator = System.getProperty("line.separator");
final PsiElement newLineWhitespace = JetPsiFactory.createWhiteSpace(body.getProject(), "\n");
for (DescriptorClassMember selectedElement : selectedElements) {
body.addBefore(JetPsiFactory.createWhiteSpace(body.getProject(), lineSeparator + lineSeparator), body.getRBrace());
// TODO: Insert spaces should be done by formatter
body.addBefore(newLineWhitespace, body.getRBrace());
final DeclarationDescriptor descriptor = selectedElement.getDescriptor();
if (descriptor instanceof NamedFunctionDescriptor) {
@@ -47,7 +47,10 @@ public class ImportClassHelper {
JetImportDirective newDirective = JetPsiFactory.createImportDirective(file.getProject(), importString);
String lineSeparator = System.getProperty("line.separator");
// TODO: Should be processed with formatter
final PsiElement newLineWhitespace = JetPsiFactory.createWhiteSpace(file.getProject(), "\n");
final PsiElement doubleLineWhitespace = JetPsiFactory.createWhiteSpace(file.getProject(), "\n\n");
if (!importDirectives.isEmpty()) {
// Check if import is already present
@@ -59,14 +62,14 @@ public class ImportClassHelper {
JetImportDirective lastDirective = importDirectives.get(importDirectives.size() - 1);
lastDirective.getParent().addAfter(newDirective, lastDirective);
lastDirective.getParent().addAfter(JetPsiFactory.createWhiteSpace(file.getProject(), lineSeparator), lastDirective);
lastDirective.getParent().addAfter(newLineWhitespace, lastDirective);
}
else {
List<JetDeclaration> declarations = file.getDeclarations();
assert !declarations.isEmpty();
JetDeclaration firstDeclaration = declarations.iterator().next();
firstDeclaration.getParent().addBefore(newDirective, firstDeclaration);
firstDeclaration.getParent().addBefore(JetPsiFactory.createWhiteSpace(file.getProject(), lineSeparator + lineSeparator), firstDeclaration);
firstDeclaration.getParent().addBefore(doubleLineWhitespace, firstDeclaration);
}
}
}
@@ -11,10 +11,8 @@ class SomeOther<S> : Some<S> {
override fun someFoo() {
throw UnsupportedOperationException()
}
override fun someGenericFoo(): S {
throw UnsupportedOperationException()
}
override fun someOtherFoo(): Int = 0
}