AbortChoice () { String title = GitBundle.message("rebase.abort.dialog.title"); if (myRepositoryToAbort != null) { if (myRepositoriesToRollback.isEmpty()) { String message = GitBundle.message("rebase.abort.dialog.message", getShortRepositoryName(myRepositoryToAbort)); int choice = DialogManager.showOkCancelDialog( myProject, message, title, GitBundle.message("rebase.abort.dialog.ok.button.text"), getCancelButtonText(), getQuestionIcon() ); if (choice == Messages.OK) { return AbortChoice.ABORT; } } else { String message = GitBundle.message( "rebase.abort.and.rollback.dialog.message", getShortRepositoryName(myRepositoryToAbort), joinShortNames(myRepositoriesToRollback.keySet(), 5) ); int choice = DialogManager.showYesNoCancelDialog( myProject, message, title, GitBundle.message("rebase.abort.and.rollback.dialog.yes.button.text"), GitBundle.message("rebase.abort.and.rollback.dialog.no.button.text"), getCancelButtonText(), getQuestionIcon() ); if (choice == Messages.YES) { return AbortChoice.ROLLBACK_AND_ABORT; } else if (choice == Messages.NO) { return AbortChoice.ABORT; } } } else { if (myRepositoriesToRollback.isEmpty()) { LOG.error(new Throwable()); } else { String description = GitBundle.message( "rebase.abort.rollback.successful.rebase.dialog.message", joinShortNames(myRepositoriesToRollback.keySet(), -1) ); int choice = DialogManager.showOkCancelDialog( myProject, description, title, GitBundle.message("rebase.abort.rollback.successful.rebase.dialog.ok.button.text"), getCancelButtonText(), getQuestionIcon() ); if (choice == Messages.YES) { return AbortChoice.ROLLBACK_AND_ABORT; } } } return AbortChoice.CANCEL; }