@YesNoCancelResult
  public static int showYesNoCancelDialog(@NotNull Component parent,
                                          @DialogMessage String message,
                                          @NotNull @DialogTitle String title,
                                          @NotNull @NlsContexts.Button String yes,
                                          @NotNull @NlsContexts.Button String no,
                                          @NotNull @NlsContexts.Button String cancel,
                                          @Nullable Icon icon) {
    return MessageDialogBuilder.yesNoCancel(title, message)
      .yesText(yes)
      .noText(no)
      .cancelText(cancel)
      .icon(icon)
      .show(parent);
  }
@YesNoCancelResult
  public static int showYesNoCancelDialog(@NotNull Component parent,
                                          @DialogMessage String message,
                                          @NotNull @DialogTitle String title,
                                          @NotNull @NlsContexts.Button String yes,
                                          @NotNull @NlsContexts.Button String no,
                                          @NotNull @NlsContexts.Button String cancel,
                                          @Nullable Icon icon)