private final PyHighlighter myPyHighlighter;
private final EditorColorsScheme myScheme;
private boolean myHyperlink;
- private boolean myFirstRun = true;
private XStandaloneVariablesView mySplitView;
private ActionCallback myInitialized = new ActionCallback();
myExecuteActionHandler = consoleExecuteActionHandler;
}
+ public PydevConsoleExecuteActionHandler getExecuteActionHandler() {
+ return myExecuteActionHandler;
+ }
+
public void setConsoleEnabled(boolean flag) {
if (myExecuteActionHandler != null) {
myExecuteActionHandler.setEnabled(flag);
}
}
- public boolean isConsoleEnabledFirstTime() {
- return myFirstRun && myExecuteActionHandler != null;
- }
-
- public void setFirstRun(boolean firstRun) {
- myFirstRun = firstRun;
- }
-
- public void showStartMessageForFirstExecution(String startCommand) {
- if (myFirstRun && myExecuteActionHandler != null) {
- setPrompt("");
- executeStatement(startCommand + "\n", ProcessOutputTypes.SYSTEM);
- }
- }
-
-
public void inputRequested() {
if (myExecuteActionHandler != null) {
final ConsoleCommunication consoleCommunication = myExecuteActionHandler.getConsoleCommunication();
import com.intellij.execution.console.DuplexConsoleView;
import com.intellij.execution.filters.TextConsoleBuilderFactory;
import com.intellij.execution.impl.ConsoleViewImpl;
+import com.intellij.execution.process.ProcessOutputTypes;
import com.intellij.execution.ui.ConsoleView;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.project.Project;
public class PythonDebugLanguageConsoleView extends DuplexConsoleView<ConsoleView, PythonConsoleView> implements PyCodeExecutor {
public static final String DEBUG_CONSOLE_START_COMMAND = "import sys; print('Python %s on %s' % (sys.version, sys.platform))";
+ private boolean myDebugConsoleInitialized = false;
public PythonDebugLanguageConsoleView(final Project project, Sdk sdk, ConsoleView consoleView) {
super(consoleView, new PythonConsoleView(project, "Python Console", sdk));
return null;
}
+ public void showStartMessageForFirstExecution(String startCommand, PythonConsoleView console) {
+ console.setPrompt("");
+ console.executeStatement(startCommand + "\n", ProcessOutputTypes.SYSTEM);
+ }
+
@Override
public void enableConsole(boolean primary) {
super.enableConsole(primary);
if (!primary && !isPrimaryConsoleEnabled()) {
PythonConsoleView console = getPydevConsoleView();
- if (console.isConsoleEnabledFirstTime()) {
+ if (!myDebugConsoleInitialized && console.getExecuteActionHandler() != null) {
console.addConsoleFolding(true);
- console.showStartMessageForFirstExecution(DEBUG_CONSOLE_START_COMMAND);
- console.setFirstRun(false);
+ showStartMessageForFirstExecution(DEBUG_CONSOLE_START_COMMAND, console);
+ myDebugConsoleInitialized = true;
}
IdeFocusManager.findInstance().requestFocus(console.getConsoleEditor().getContentComponent(), true);