@Override
        public void actionPerformed(ActionEvent e) {
          if (result == MergeResult.RESOLVED) {
            int unresolved = getUnresolvedCount();
            if (unresolved != 0 &&
                !MessageDialogBuilder.yesNo(DiffBundle.message("apply.partially.resolved.merge.dialog.title"),
                                            DiffBundle.message("apply.patch.partially.resolved.changes.confirmation.message", unresolved))
                  .yesText(DiffBundle.message("merge.save.and.finish.button"))
                  .noText(DiffBundle.message("merge.continue.button"))
                  .ask(getComponent().getRootPane())) {
              return;
            }
          }

          if (result == MergeResult.CANCEL &&
              !MergeUtil.showExitWithoutApplyingChangesDialog(MyApplyPatchViewer.this, myMergeRequest, myMergeContext, true)) {
            return;
          }

          myMergeContext.finishMerge(result);
        }
@Override
        public void actionPerformed(ActionEvent e)