Package ro.redeul.google.go.lang.completion.insertHandler

Source Code of ro.redeul.google.go.lang.completion.insertHandler.LiteralFunctionInsertHandler

package ro.redeul.google.go.lang.completion.insertHandler;

import com.intellij.codeInsight.completion.InsertHandler;
import com.intellij.codeInsight.completion.InsertionContext;
import com.intellij.codeInsight.lookup.LookupElement;
import com.intellij.openapi.editor.Document;
import com.intellij.openapi.editor.Editor;

import static ro.redeul.google.go.util.EditorUtil.pressEnterAtLineEnd;
import static ro.redeul.google.go.util.EditorUtil.reformatLines;

public class LiteralFunctionInsertHandler implements InsertHandler<LookupElement> {
    @Override
    public void handleInsert(InsertionContext context, LookupElement item) {
        int offset = context.getTailOffset();
        Document doc = context.getDocument();
        doc.insertString(offset, "(){\n}()");
        Editor editor = context.getEditor();

        int line = doc.getLineNumber(offset);
        reformatLines(context.getFile(), editor, line, line + 1);
        pressEnterAtLineEnd(editor);
    }
}
TOP

Related Classes of ro.redeul.google.go.lang.completion.insertHandler.LiteralFunctionInsertHandler

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.