summaryrefslogtreecommitdiff
path: root/platform/lang-impl/src/com/intellij/execution/console/LanguageConsoleBuilder.java
diff options
context:
space:
mode:
authorTor Norbye <tnorbye@google.com>2014-09-18 11:43:07 -0700
committerTor Norbye <tnorbye@google.com>2014-09-18 11:43:28 -0700
commite782c57d74000722f9db4c9426317410520670c6 (patch)
tree6e5d3e8934107ffabb7661f8bfc0e1a08eb37faf /platform/lang-impl/src/com/intellij/execution/console/LanguageConsoleBuilder.java
parentc3d3a90f6b4ead083d63e28e6b9fcea93d675678 (diff)
downloadidea-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.java23
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;
}