package org.jetbrains.plugins.cucumber; import com.intellij.codeInsight.template.TemplateContextType; import com.intellij.openapi.fileTypes.SyntaxHighlighter; import com.intellij.psi.PsiFile; import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NotNull; import org.jetbrains.plugins.cucumber.psi.GherkinSyntaxHighlighter; import org.jetbrains.plugins.cucumber.psi.PlainGherkinKeywordProvider; import org.jetbrains.plugins.cucumber.psi.impl.GherkinFileImpl; /** * @author Roman.Chernyatchik * @date Jun 24, 2009 */ public class GherkinLiveTemplateContextType extends TemplateContextType { @NonNls private static final String CONTEXT_NAME = "CUCUMBER_FEATURE_FILE"; public GherkinLiveTemplateContextType() { super(CONTEXT_NAME, CucumberBundle.message("live.templates.context.cucumber.name")); } public boolean isInContext(@NotNull final PsiFile file, final int offset) { return file instanceof GherkinFileImpl; } public SyntaxHighlighter createHighlighter() { return new GherkinSyntaxHighlighter(new PlainGherkinKeywordProvider()); } }