package tim.prune.save; import tim.prune.I18nManager; import tim.prune.data.Photo; /** * Class to represent a row of the photo table for saving exif */ public class PhotoTableEntry { private Photo _photo = null; private String _photoName = null; private boolean _save = true; private String _status = null; /** * Constructor * @param inPhoto photo object */ public PhotoTableEntry(Photo inPhoto) { _photo = inPhoto; if (inPhoto != null) { _photoName = inPhoto.getName(); _status = getStatusString(inPhoto.getOriginalStatus(), inPhoto.getCurrentStatus()); } } /** * Make a status string from the given status bytes * @param inOriginalStatus original status of photo * @param inCurrentStatus current status of photo * @return status string for display */ private static String getStatusString (Photo.Status inOriginalStatus, Photo.Status inCurrentStatus) { if (inOriginalStatus != inCurrentStatus) { if (inOriginalStatus == Photo.Status.NOT_CONNECTED) { // originally didn't have a point, now it has return I18nManager.getText("dialog.saveexif.photostatus.connected"); } if (inCurrentStatus == Photo.Status.NOT_CONNECTED) { // originally had a point, now it doesn't return I18nManager.getText("dialog.saveexif.photostatus.disconnected"); } // originally had a point, now it has a different one return I18nManager.getText("dialog.saveexif.photostatus.modified"); } // unrecognised status return null; } /** * @return Photo object */ public Photo getPhoto() { return _photo; } /** * @return photo filename */ public String getName() { return _photoName; } /** * @return photo status as string */ public String getStatus() { return _status; } /** * @param inFlag true to save exif, false otherwise */ public void setSaveFlag(boolean inFlag) { _save = inFlag; } /** * @return true to save exif, false otherwise */ public boolean getSaveFlag() { return _save; } }