package name.admitriev.jhelper.actions; import com.intellij.execution.RunnerAndConfigurationSettings; import com.intellij.execution.configurations.RunConfiguration; import com.intellij.execution.impl.RunManagerImpl; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.project.Project; import name.admitriev.jhelper.configuration.TaskConfiguration; import name.admitriev.jhelper.ui.EditTestsDialog; import net.egork.chelper.task.Test; public class EditTestsAction extends BaseAction { @Override protected void performAction(AnActionEvent e) { Project project = e.getProject(); RunnerAndConfigurationSettings selectedConfiguration = RunManagerImpl.getInstanceImpl(project).getSelectedConfiguration(); if (selectedConfiguration == null) { return; } RunConfiguration configuration = selectedConfiguration.getConfiguration(); if (configuration instanceof TaskConfiguration) { TaskConfiguration taskConfiguration = (TaskConfiguration) configuration; Test[] originalTests = taskConfiguration.getTests(); EditTestsDialog dialog = new EditTestsDialog(originalTests, project); dialog.show(); if (!dialog.isOK()) { return; } Test[] newTests = dialog.getTests(); taskConfiguration.setTests(newTests); // @todo: save configuration } } }