package jetbrains.mps.vcs.diff.ui.merge; /*Generated by MPS */ import jetbrains.mps.workbench.action.BaseAction; import com.intellij.openapi.project.DumbAware; import com.intellij.openapi.actionSystem.AnActionEvent; import java.util.Map; import jetbrains.mps.internal.collections.runtime.Sequence; import jetbrains.mps.vcs.diff.changes.ModelChange; public class ApplyNonConflictsForRoot extends BaseAction implements DumbAware { private MergeRootsPane myPane; public ApplyNonConflictsForRoot(MergeRootsPane pane) { super("Apply Non-Conflicting Changes", null, MergeModelsPanel.APPLY_NON_CONFLICTS); myPane = pane; setDisableOnNoProject(false); } @Override protected void doExecute(AnActionEvent event, Map<String, Object> map) { myPane.getMergeSession().applyChanges(getChanges()); myPane.rehighlight(); } @Override protected void doUpdate(AnActionEvent event, Map<String, Object> map) { event.getPresentation().setEnabled(Sequence.fromIterable(getChanges()).isNotEmpty()); } private Iterable<ModelChange> getChanges() { return myPane.getMergeSession().getApplicableChangesForRoot(myPane.getRootId()); } }