diff --git a/idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java b/idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java index b9d5f6d62f6..f7491ecee45 100644 --- a/idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java +++ b/idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java @@ -53,13 +53,7 @@ public abstract class OverrideImplementMethodsHandler implements LanguageCodeIns return; } - final PsiElement newLineWhitespace = JetPsiFactory.createWhiteSpace(body.getProject(), "\n"); - - for (DescriptorClassMember selectedElement : selectedElements) { - - // TODO: Insert spaces should be done by formatter - body.addBefore(newLineWhitespace, body.getRBrace()); - + for (DescriptorClassMember selectedElement : selectedElements) { final DeclarationDescriptor descriptor = selectedElement.getDescriptor(); if (descriptor instanceof NamedFunctionDescriptor) { JetElement target = overrideFunction(project, (NamedFunctionDescriptor) descriptor); diff --git a/idea/src/org/jetbrains/jet/plugin/formatter/JetFormattingModelBuilder.java b/idea/src/org/jetbrains/jet/plugin/formatter/JetFormattingModelBuilder.java index e4a3f0d4901..7386683e649 100644 --- a/idea/src/org/jetbrains/jet/plugin/formatter/JetFormattingModelBuilder.java +++ b/idea/src/org/jetbrains/jet/plugin/formatter/JetFormattingModelBuilder.java @@ -7,8 +7,6 @@ import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.psi.codeStyle.CodeStyleSettings; import org.jetbrains.annotations.NotNull; -import org.jetbrains.jet.JetNodeTypes; -import org.jetbrains.jet.lexer.JetTokens; import static org.jetbrains.jet.JetNodeTypes.*; import static org.jetbrains.jet.lexer.JetTokens.*; @@ -27,6 +25,16 @@ public class JetFormattingModelBuilder implements FormattingModelBuilder { private static SpacingBuilder createSpacingBuilder(CodeStyleSettings settings) { return new SpacingBuilder(settings) + .before(IMPORT_DIRECTIVE).lineBreakInCode() + .between(IMPORT_DIRECTIVE, CLASS).blankLines(1) + .between(IMPORT_DIRECTIVE, FUN).blankLines(1) + .between(IMPORT_DIRECTIVE, PROPERTY).blankLines(1) + + .before(FUN).lineBreakInCode() + .before(PROPERTY).lineBreakInCode() + .between(FUN, FUN).blankLines(1) + .between(FUN, PROPERTY).blankLines(1) + .before(COMMA).spaceIf(settings.SPACE_BEFORE_COMMA) .after(COMMA).spaceIf(settings.SPACE_AFTER_COMMA) .around(EQ).spaceIf(settings.SPACE_AROUND_ASSIGNMENT_OPERATORS) diff --git a/idea/src/org/jetbrains/jet/plugin/quickfix/ImportClassHelper.java b/idea/src/org/jetbrains/jet/plugin/quickfix/ImportClassHelper.java index 23d204cb65a..23ad73ea40f 100644 --- a/idea/src/org/jetbrains/jet/plugin/quickfix/ImportClassHelper.java +++ b/idea/src/org/jetbrains/jet/plugin/quickfix/ImportClassHelper.java @@ -47,10 +47,6 @@ public class ImportClassHelper { JetImportDirective newDirective = JetPsiFactory.createImportDirective(file.getProject(), importString); - // 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 @@ -62,14 +58,12 @@ public class ImportClassHelper { JetImportDirective lastDirective = importDirectives.get(importDirectives.size() - 1); lastDirective.getParent().addAfter(newDirective, lastDirective); - lastDirective.getParent().addAfter(newLineWhitespace, lastDirective); } else { List declarations = file.getDeclarations(); assert !declarations.isEmpty(); JetDeclaration firstDeclaration = declarations.iterator().next(); firstDeclaration.getParent().addBefore(newDirective, firstDeclaration); - firstDeclaration.getParent().addBefore(doubleLineWhitespace, firstDeclaration); } } }