summaryrefslogtreecommitdiff
path: root/platform/lang-api/src/com/intellij/execution/ui/RunContentDescriptor.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/lang-api/src/com/intellij/execution/ui/RunContentDescriptor.java')
-rw-r--r--platform/lang-api/src/com/intellij/execution/ui/RunContentDescriptor.java71
1 files changed, 33 insertions, 38 deletions
diff --git a/platform/lang-api/src/com/intellij/execution/ui/RunContentDescriptor.java b/platform/lang-api/src/com/intellij/execution/ui/RunContentDescriptor.java
index 8d4d3b29b088..60e7f03d54db 100644
--- a/platform/lang-api/src/com/intellij/execution/ui/RunContentDescriptor.java
+++ b/platform/lang-api/src/com/intellij/execution/ui/RunContentDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 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.
@@ -15,23 +15,20 @@
*/
package com.intellij.execution.ui;
+import com.intellij.execution.ExecutionResult;
+import com.intellij.execution.configurations.RunProfile;
import com.intellij.execution.process.ProcessHandler;
-import com.intellij.ide.DataManager;
import com.intellij.ide.HelpIdProvider;
import com.intellij.openapi.Disposable;
-import com.intellij.openapi.actionSystem.DataProvider;
-import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.util.Computable;
import com.intellij.openapi.util.Disposer;
import com.intellij.ui.content.Content;
-import org.jetbrains.annotations.NonNls;
+import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import javax.swing.*;
public class RunContentDescriptor implements Disposable {
- private static final Logger LOG = Logger.getInstance("#com.intellij.execution.ui.RunContentDescriptor");
-
private ExecutionConsole myExecutionConsole;
private ProcessHandler myProcessHandler;
private JComponent myComponent;
@@ -45,37 +42,33 @@ public class RunContentDescriptor implements Disposable {
private Computable<JComponent> myFocusComputable = null;
private boolean myAutoFocusContent = false;
- /**
- * Used to hack {@link com.intellij.execution.runners.RestartAction}
- */
private Content myContent;
private Runnable myRestarter;
- public RunContentDescriptor(final ExecutionConsole executionConsole,
- final ProcessHandler processHandler, final JComponent component, final String displayName, final Icon icon) {
+ public RunContentDescriptor(@Nullable ExecutionConsole executionConsole,
+ @Nullable ProcessHandler processHandler,
+ @NotNull JComponent component,
+ String displayName,
+ @Nullable Icon icon) {
myExecutionConsole = executionConsole;
myProcessHandler = processHandler;
myComponent = component;
myDisplayName = displayName;
myIcon = icon;
myHelpId = myExecutionConsole instanceof HelpIdProvider ? ((HelpIdProvider)myExecutionConsole).getHelpId() : null;
- DataManager.registerDataProvider(myComponent, new DataProvider() {
-
- @Override
- public Object getData(@NonNls final String dataId) {
- if (RunContentManager.RUN_CONTENT_DESCRIPTOR.is(dataId)) {
- return RunContentDescriptor.this;
- }
- return null;
- }
- });
}
- public RunContentDescriptor(final ExecutionConsole executionConsole,
- final ProcessHandler processHandler, final JComponent component, final String displayName) {
+ public RunContentDescriptor(@Nullable ExecutionConsole executionConsole,
+ @Nullable ProcessHandler processHandler,
+ @NotNull JComponent component,
+ String displayName) {
this(executionConsole, processHandler, component, displayName, null);
}
+ public RunContentDescriptor(@NotNull RunProfile profile, @NotNull ExecutionResult executionResult, @NotNull RunnerLayoutUi ui) {
+ this(executionResult.getExecutionConsole(), executionResult.getProcessHandler(), ui.getComponent(), profile.getName(), profile.getIcon());
+ }
+
public ExecutionConsole getExecutionConsole() {
return myExecutionConsole;
}
@@ -86,10 +79,7 @@ public class RunContentDescriptor implements Disposable {
Disposer.dispose(myExecutionConsole);
myExecutionConsole = null;
}
- if (myComponent != null) {
- DataManager.removeDataProvider(myComponent);
- myComponent = null;
- }
+ myComponent = null;
myRestarter = null;
}
@@ -128,25 +118,30 @@ public class RunContentDescriptor implements Disposable {
return myHelpId;
}
- /**
- * @see #myContent
- */
- public void setAttachedContent(final Content content) {
- myContent = content;
- }
-
- /**
- * @see #myContent
- */
+ @Nullable
public Content getAttachedContent() {
return myContent;
}
+ public void setAttachedContent(@NotNull Content content) {
+ myContent = content;
+ }
+
@Nullable
+ @Deprecated
+ /**
+ * @deprecated Use {@link com.intellij.execution.runners.ExecutionUtil#restart(RunContentDescriptor)} instead
+ * to remove in IDEA 15
+ */
public Runnable getRestarter() {
return myRestarter;
}
+ @SuppressWarnings("UnusedDeclaration")
+ @Deprecated
+ /**
+ * @deprecated to remove in IDEA 15
+ */
public void setRestarter(@Nullable Runnable runnable) {
myRestarter = runnable;
}