[RunConfigurations] IJPL-149255: Show warning icon for warnings in the run/debug configuration window

- Show warning icon for com.intellij.execution.configurations.RuntimeConfigurationWarning
- Fix tests for com.intellij.ideaProjectStructure.fast.ApiCheckTest.intellij-platform-execution-imps


Merge-request: IJ-MR-133457
Merged-by: Dmitry Makhnev <Dmitry.Makhnev@jetbrains.com>

GitOrigin-RevId: a30e6a3e8dd4ab314656d8813c911b8285a92159
This commit is contained in:
Dmitry Makhnev
2024-05-20 20:13:02 +00:00
committed by intellij-monorepo-bot
parent 757f8cdb37
commit 5ce1378a1b
3 changed files with 14 additions and 4 deletions

View File

@@ -1367,10 +1367,11 @@ f:com.intellij.execution.impl.UnknownBeforeRunTaskProvider$UnknownTask
- readExternal(org.jdom.Element):V
- writeExternal(org.jdom.Element):V
f:com.intellij.execution.impl.ValidationResult
- <init>(java.lang.String,java.lang.String,java.lang.Runnable):V
- <init>(java.lang.String,java.lang.String,java.lang.Runnable,Z):V
- getMessage():java.lang.String
- getQuickFix():java.lang.Runnable
- getTitle():java.lang.String
- isWarning():Z
f:com.intellij.execution.impl.statistics.FragmentedStatisticsServiceImpl
- com.intellij.execution.ui.FragmentStatisticsService
- <init>():V

View File

@@ -151,7 +151,7 @@ public final class SingleConfigurationConfigurable<Config extends RunConfigurati
RunConfiguration oldRunConfiguration = runConfiguration.clone();
performApply(settings, runConfiguration);
((FusCollectSettingChangesRunConfiguration)runConfiguration)
.collectSettingChangesOnApply((FusCollectSettingChangesRunConfiguration)oldRunConfiguration);
}
@@ -319,7 +319,9 @@ public final class SingleConfigurationConfigurable<Config extends RunConfigurati
return new ValidationResult(
e.getLocalizedMessage(),
e instanceof RuntimeConfigurationException ? e.getTitle() : ExecutionBundle.message("invalid.data.dialog.title"),
getQuickFix(snapshot, e));
getQuickFix(snapshot, e),
e instanceof RuntimeConfigurationWarning
);
}
private @Nullable Runnable getQuickFix(RunnerAndConfigurationSettings snapshot, ConfigurationException exception) {
@@ -530,6 +532,7 @@ public final class SingleConfigurationConfigurable<Config extends RunConfigurati
mySeparator.setVisible(true);
myWarningLabel.setVisible(true);
myWarningLabel.setText(generateWarningLabelText(configurationException));
myWarningLabel.setIcon(configurationException.isWarning() ? AllIcons.General.BalloonWarning : AllIcons.General.BalloonError);
final Runnable quickFix = configurationException.getQuickFix();
if (quickFix == null) {
myFixButton.setVisible(false);

View File

@@ -9,11 +9,13 @@ public final class ValidationResult {
private final @Nls String myMessage;
private final @NlsContexts.DialogTitle String myTitle;
private final @Nullable Runnable myQuickFix;
private final boolean myIsWarning;
public ValidationResult(@Nls String message, @NlsContexts.DialogTitle String title, @Nullable Runnable quickFix) {
public ValidationResult(@Nls String message, @NlsContexts.DialogTitle String title, @Nullable Runnable quickFix, boolean isWarning) {
myMessage = message;
myTitle = title;
myQuickFix = quickFix;
myIsWarning = isWarning;
}
public @Nls String getMessage() {
@@ -27,4 +29,8 @@ public final class ValidationResult {
public @Nullable Runnable getQuickFix() {
return myQuickFix;
}
public boolean isWarning() {
return myIsWarning;
}
}