@Override
  protected void doOKAction() {
    final RunManagerImpl runManager = RunManagerImpl.getInstanceImpl(myProject);
    for (Enumeration<?> nodes = myRoot.depthFirstEnumeration(); nodes.hasMoreElements(); ) {
      final DefaultMutableTreeNode node = (DefaultMutableTreeNode)nodes.nextElement();
      Object object = node.getUserObject();
      if (!(object instanceof Descriptor descriptor)) {
        continue;
      }
      final boolean isChecked = descriptor.isChecked();

      if (descriptor instanceof ConfigurationTypeDescriptor typeDesc) {
        for (ConfigurationFactory factory : typeDesc.getConfigurationType().getConfigurationFactories()) {
          RunnerAndConfigurationSettings settings = runManager.getConfigurationTemplate(factory);
          update(settings.getConfiguration(), isChecked, runManager);
        }
      }
      else if (descriptor instanceof ConfigurationDescriptor configDesc) {
        update(configDesc.getConfiguration(), isChecked, runManager);
      }
    }

    RunManagerImpl.getInstanceImpl(myProject).fireBeforeRunTasksUpdated();
    close(OK_EXIT_CODE);
  }
@Override
  protected void doOKAction()