diff options
Diffstat (limited to 'platform/lang-impl/src/com/intellij/codeInsight/template/impl/actions/NextVariableAction.java')
-rw-r--r-- | platform/lang-impl/src/com/intellij/codeInsight/template/impl/actions/NextVariableAction.java | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/template/impl/actions/NextVariableAction.java b/platform/lang-impl/src/com/intellij/codeInsight/template/impl/actions/NextVariableAction.java index 6605dacbc209..102626785a24 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/template/impl/actions/NextVariableAction.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/template/impl/actions/NextVariableAction.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2009 JetBrains s.r.o. + * Copyright 2000-2014 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -28,11 +28,13 @@ import com.intellij.codeInsight.CodeInsightBundle; import com.intellij.codeInsight.template.impl.TemplateManagerImpl; import com.intellij.codeInsight.template.impl.TemplateState; import com.intellij.openapi.actionSystem.DataContext; -import com.intellij.openapi.actionSystem.Presentation; import com.intellij.openapi.command.CommandProcessor; +import com.intellij.openapi.editor.Caret; import com.intellij.openapi.editor.Editor; import com.intellij.openapi.editor.actionSystem.EditorAction; import com.intellij.openapi.editor.actionSystem.EditorWriteActionHandler; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; public class NextVariableAction extends EditorAction { public NextVariableAction() { @@ -42,16 +44,17 @@ public class NextVariableAction extends EditorAction { private static class Handler extends EditorWriteActionHandler { @Override - public void executeWriteAction(Editor editor, DataContext dataContext) { + public void executeWriteAction(Editor editor, @Nullable Caret caret, DataContext dataContext) { TemplateState templateState = TemplateManagerImpl.getTemplateState(editor); + assert templateState != null; CommandProcessor.getInstance().setCurrentCommandName(CodeInsightBundle.message("template.next.variable.command")); templateState.nextTab(); } - } - @Override - public void update(Editor editor, Presentation presentation, DataContext dataContext) { - TemplateState templateState = TemplateManagerImpl.getTemplateState(editor); - presentation.setEnabled(templateState != null && !templateState.isFinished() && templateState.isToProcessTab()); + @Override + protected boolean isEnabledForCaret(@NotNull Editor editor, @NotNull Caret caret, DataContext dataContext) { + TemplateState templateState = TemplateManagerImpl.getTemplateState(editor); + return templateState != null && !templateState.isFinished() && templateState.isToProcessTab(); + } } } |