ImageViewMultiSelectFragment.java 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. package epson.print.imgsel;
  2. import android.os.Bundle;
  3. import android.view.LayoutInflater;
  4. import android.view.View;
  5. import android.view.ViewGroup;
  6. import android.widget.ImageView;
  7. import android.widget.ProgressBar;
  8. import android.widget.TextView;
  9. import com.epson.cameracopy.p006ui.ImagePreviewActivity;
  10. import epson.common.ScalableImageView;
  11. import epson.print.R;
  12. public class ImageViewMultiSelectFragment extends ImageViewBaseFragment {
  13. protected MyToggleButton mMyToggleButton;
  14. public static ImageViewMultiSelectFragment newInstance(String str) {
  15. ImageViewMultiSelectFragment imageViewMultiSelectFragment = new ImageViewMultiSelectFragment();
  16. Bundle bundle = new Bundle();
  17. bundle.putString(ImagePreviewActivity.PARAM_PICTURE_FILENAME, str);
  18. imageViewMultiSelectFragment.setArguments(bundle);
  19. return imageViewMultiSelectFragment;
  20. }
  21. public View onCreateView(LayoutInflater layoutInflater, ViewGroup viewGroup, Bundle bundle) {
  22. View inflate = layoutInflater.inflate(R.layout.fragment_image_view_multi, viewGroup, false);
  23. this.mImageView = (ScalableImageView) inflate.findViewById(R.id.imageView);
  24. this.mProgressBar = (ProgressBar) inflate.findViewById(R.id.imageLoadProgressBar);
  25. this.mMyToggleButton = new MyToggleButton(this, inflate.findViewById(R.id.myToggle), this.mListener.getSelector().isSelected(this.mFileName));
  26. super.onCreateView(layoutInflater, viewGroup, bundle);
  27. return inflate;
  28. }
  29. /* access modifiers changed from: private */
  30. public void selectImageOnMultiFileMode(boolean z) {
  31. ImageSelector selector = this.mListener.getSelector();
  32. if (!z) {
  33. selector.remove(this.mFileName);
  34. } else if (!selector.canAdd()) {
  35. MyToggleButton myToggleButton = this.mMyToggleButton;
  36. if (myToggleButton != null) {
  37. myToggleButton.forceSetChecked(false);
  38. }
  39. try {
  40. LocalAlertDialogFragment.newInstance(getString(R.string.max_image), 2).show(getChildFragmentManager(), "alert dialog");
  41. return;
  42. } catch (IllegalStateException unused) {
  43. return;
  44. }
  45. } else {
  46. selector.add(this.mFileName);
  47. }
  48. getActivity().invalidateOptionsMenu();
  49. }
  50. static class MyToggleButton {
  51. private ImageViewMultiSelectFragment mImageViewMultiSelectFragment;
  52. private boolean mMyToggleChecked;
  53. private ImageView mToggleImage;
  54. private TextView mToggleText;
  55. public MyToggleButton(ImageViewMultiSelectFragment imageViewMultiSelectFragment, View view, boolean z) {
  56. this.mImageViewMultiSelectFragment = imageViewMultiSelectFragment;
  57. init(view, z);
  58. }
  59. public void init(View view, boolean z) {
  60. this.mToggleImage = (ImageView) view.findViewById(R.id.myToggleImage);
  61. this.mToggleImage.setClickable(false);
  62. this.mToggleText = (TextView) view.findViewById(R.id.myToggleText);
  63. this.mToggleText.setClickable(false);
  64. view.setOnClickListener(new View.OnClickListener() {
  65. public void onClick(View view) {
  66. MyToggleButton.this.toggleCheckStatus();
  67. }
  68. });
  69. forceSetChecked(z);
  70. }
  71. /* access modifiers changed from: private */
  72. public void toggleCheckStatus() {
  73. setMyChecked(!this.mToggleImage.isSelected());
  74. }
  75. public void forceSetChecked(boolean z) {
  76. this.mMyToggleChecked = z;
  77. syncTextState();
  78. this.mToggleImage.setSelected(this.mMyToggleChecked);
  79. }
  80. private void setMyChecked(boolean z) {
  81. if (z != this.mMyToggleChecked) {
  82. forceSetChecked(z);
  83. execCallback();
  84. }
  85. }
  86. private void execCallback() {
  87. ImageViewMultiSelectFragment imageViewMultiSelectFragment = this.mImageViewMultiSelectFragment;
  88. if (imageViewMultiSelectFragment != null) {
  89. imageViewMultiSelectFragment.selectImageOnMultiFileMode(this.mMyToggleChecked);
  90. }
  91. }
  92. private void syncTextState() {
  93. if (this.mMyToggleChecked) {
  94. this.mToggleText.setText(R.string.imgsel_view_pager_toggle_on);
  95. } else {
  96. this.mToggleText.setText(R.string.imgsel_view_pager_toggle_off);
  97. }
  98. }
  99. }
  100. }