CustomTitleDialogFragment.java 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. package epson.print;
  2. import android.app.Activity;
  3. import android.app.AlertDialog;
  4. import android.app.Dialog;
  5. import android.content.DialogInterface;
  6. import android.os.Bundle;
  7. import androidx.fragment.app.DialogFragment;
  8. import epson.common.Utils;
  9. import epson.print.widgets.CustomTitleAlertDialogBuilder;
  10. public class CustomTitleDialogFragment extends DialogFragment {
  11. private static final String TAG_DIALOG_ID = "dialog_id";
  12. private static final String TAG_MESSAGE = "message";
  13. private static final String TAG_NEGATIVE_BUTTON_STRING_ID = "negative_button_string_id";
  14. private static final String TAG_POSITIVE_BUTTON_STRING_ID = "positive_button_string_id";
  15. private static final String TAG_TITLE_ID = "title_id";
  16. private static final String TAG_TITLE_STRING = "title_string";
  17. public interface Callback {
  18. void onLocalNegativeCallback(int i);
  19. void onLocalPositiveCallback(int i);
  20. }
  21. public static CustomTitleDialogFragment newInstance(int i, String str, int i2, int i3, int i4) {
  22. CustomTitleDialogFragment customTitleDialogFragment = new CustomTitleDialogFragment();
  23. Bundle bundle = new Bundle();
  24. bundle.putInt(TAG_DIALOG_ID, i);
  25. bundle.putString("message", str);
  26. bundle.putInt(TAG_TITLE_ID, i2);
  27. bundle.putInt(TAG_POSITIVE_BUTTON_STRING_ID, i3);
  28. bundle.putInt(TAG_NEGATIVE_BUTTON_STRING_ID, i4);
  29. customTitleDialogFragment.setArguments(bundle);
  30. return customTitleDialogFragment;
  31. }
  32. public static CustomTitleDialogFragment newInstance(int i, String str, String str2, int i2, int i3) {
  33. CustomTitleDialogFragment customTitleDialogFragment = new CustomTitleDialogFragment();
  34. Bundle bundle = new Bundle();
  35. bundle.putInt(TAG_DIALOG_ID, i);
  36. bundle.putString("message", str);
  37. bundle.putString(TAG_TITLE_STRING, str2);
  38. bundle.putInt(TAG_POSITIVE_BUTTON_STRING_ID, i2);
  39. bundle.putInt(TAG_NEGATIVE_BUTTON_STRING_ID, i3);
  40. customTitleDialogFragment.setArguments(bundle);
  41. return customTitleDialogFragment;
  42. }
  43. public Dialog onCreateDialog(Bundle bundle) {
  44. Bundle arguments = getArguments();
  45. final int i = arguments.getInt(TAG_DIALOG_ID);
  46. String string = arguments.getString("message");
  47. int i2 = arguments.getInt(TAG_TITLE_ID);
  48. String string2 = arguments.getString(TAG_TITLE_STRING);
  49. int i3 = arguments.getInt(TAG_POSITIVE_BUTTON_STRING_ID);
  50. int i4 = arguments.getInt(TAG_NEGATIVE_BUTTON_STRING_ID);
  51. final Callback callback = (Callback) getActivity();
  52. CustomTitleAlertDialogBuilder customTitleDialogBuilder = Utils.getCustomTitleDialogBuilder((Activity) callback);
  53. customTitleDialogBuilder.setMessage(string).setPositiveButton(i3, new DialogInterface.OnClickListener() {
  54. public void onClick(DialogInterface dialogInterface, int i) {
  55. dismiss();
  56. callback.onLocalPositiveCallback(i);
  57. }
  58. });
  59. if (i4 != 0) {
  60. customTitleDialogBuilder.setNegativeButton(i4, new DialogInterface.OnClickListener() {
  61. public void onClick(DialogInterface dialogInterface, int i) {
  62. dismiss();
  63. callback.onLocalNegativeCallback(i);
  64. }
  65. });
  66. }
  67. if (i2 != 0) {
  68. customTitleDialogBuilder.setTitle(i2);
  69. } else if (string2 != null) {
  70. customTitleDialogBuilder.setTitle(string2);
  71. }
  72. AlertDialog create = customTitleDialogBuilder.create();
  73. create.setCanceledOnTouchOutside(false);
  74. return create;
  75. }
  76. }