diff options
author | Tor Norbye <tnorbye@google.com> | 2014-09-18 11:43:07 -0700 |
---|---|---|
committer | Tor Norbye <tnorbye@google.com> | 2014-09-18 11:43:28 -0700 |
commit | e782c57d74000722f9db4c9426317410520670c6 (patch) | |
tree | 6e5d3e8934107ffabb7661f8bfc0e1a08eb37faf /platform/lang-impl/src/com/intellij/execution/console/LanguageConsoleBuilder.java | |
parent | c3d3a90f6b4ead083d63e28e6b9fcea93d675678 (diff) | |
download | idea-e782c57d74000722f9db4c9426317410520670c6.tar.gz |
Snapshot idea/138.2210 from git://git.jetbrains.org/idea/community.git
Change-Id: I8f0204d7887ee78cf1fd8c09f936c5afff0edd2f
Diffstat (limited to 'platform/lang-impl/src/com/intellij/execution/console/LanguageConsoleBuilder.java')
-rw-r--r-- | platform/lang-impl/src/com/intellij/execution/console/LanguageConsoleBuilder.java | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/platform/lang-impl/src/com/intellij/execution/console/LanguageConsoleBuilder.java b/platform/lang-impl/src/com/intellij/execution/console/LanguageConsoleBuilder.java index 329b9f0e3f13..a20b8c706ff2 100644 --- a/platform/lang-impl/src/com/intellij/execution/console/LanguageConsoleBuilder.java +++ b/platform/lang-impl/src/com/intellij/execution/console/LanguageConsoleBuilder.java @@ -1,6 +1,8 @@ package com.intellij.execution.console; +import com.intellij.codeInsight.daemon.DaemonCodeAnalyzer; import com.intellij.execution.process.ProcessHandler; +import com.intellij.ide.util.PropertiesComponent; import com.intellij.lang.Language; import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.editor.Document; @@ -60,6 +62,8 @@ public final class LanguageConsoleBuilder { private boolean oneLineInput; + private String processInputStateKey; + // todo to be removed public LanguageConsoleBuilder(@SuppressWarnings("NullableProblems") @NotNull LanguageConsoleView consoleView) { this.consoleView = consoleView; @@ -87,6 +91,7 @@ public final class LanguageConsoleBuilder { return this; } + @NotNull public LanguageConsoleBuilder initActions(@NotNull BaseConsoleExecuteActionHandler executeActionHandler, @NotNull String historyType) { if (consoleView == null) { this.executeActionHandler = executeActionHandler; @@ -150,6 +155,13 @@ public final class LanguageConsoleBuilder { return this; } + @NotNull + public LanguageConsoleBuilder processInputStateKey(@Nullable String value) { + processInputStateKey = value; + return this; + } + + @NotNull public LanguageConsoleView build(@NotNull Project project, @NotNull Language language) { GutteredLanguageConsole console = new GutteredLanguageConsole(language.getDisplayName() + " Console", project, language, gutterContentProvider, psiFileFactory); if (oneLineInput) { @@ -160,6 +172,17 @@ public final class LanguageConsoleBuilder { assert historyType != null; doInitAction(consoleView, executeActionHandler, historyType); } + + if (processInputStateKey != null) { + assert executeActionHandler != null; + if (PropertiesComponent.getInstance().getBoolean(processInputStateKey, false)) { + executeActionHandler.useProcessStdIn = true; + DaemonCodeAnalyzer daemonCodeAnalyzer = DaemonCodeAnalyzer.getInstance(consoleView.getProject()); + daemonCodeAnalyzer.setHighlightingEnabled(consoleView.getConsole().getFile(), false); + } + consoleView.addCustomConsoleAction(new UseConsoleInputAction(processInputStateKey)); + } + console.initComponents(); return consoleView; } |