ImageSelector.java 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. package epson.print.imgsel;
  2. import java.util.ArrayList;
  3. public class ImageSelector {
  4. public static final int MAX_SELECT_NUMBER = 30;
  5. private ArrayList<String> mImageFilenameList;
  6. public ImageSelector() {
  7. mImageFilenameList = new ArrayList<>();
  8. }
  9. public ImageSelector(ArrayList<String> arrayList) {
  10. mImageFilenameList = arrayList;
  11. if (mImageFilenameList == null) {
  12. mImageFilenameList = new ArrayList<>();
  13. }
  14. }
  15. public void replaceFiles(ArrayList<String> arrayList) {
  16. mImageFilenameList = arrayList;
  17. }
  18. public boolean toggleSelect(String str) {
  19. if (mImageFilenameList.contains(str)) {
  20. mImageFilenameList.remove(str);
  21. return false;
  22. } else if (selectedNumber() >= 30) {
  23. return false;
  24. } else {
  25. mImageFilenameList.add(str);
  26. return true;
  27. }
  28. }
  29. public boolean add(String str) {
  30. if (selectedNumber() >= 30 || mImageFilenameList.contains(str)) {
  31. return false;
  32. }
  33. mImageFilenameList.add(str);
  34. return true;
  35. }
  36. public boolean remove(String str) {
  37. mImageFilenameList.remove(str);
  38. return true;
  39. }
  40. public void clear() {
  41. mImageFilenameList.clear();
  42. }
  43. public boolean isSelected(String str) {
  44. return mImageFilenameList.contains(str);
  45. }
  46. public ArrayList<String> getFileArrayList() {
  47. return mImageFilenameList;
  48. }
  49. public int selectedNumber() {
  50. return mImageFilenameList.size();
  51. }
  52. public boolean canAdd() {
  53. return mImageFilenameList.size() < 30;
  54. }
  55. }