import javax.swing.JScrollPane;
import javax.swing.JTable;
+import tim.prune.Config;
import tim.prune.ExternalTools;
import tim.prune.I18nManager;
+import tim.prune.UpdateMessageBroker;
import tim.prune.data.Altitude;
import tim.prune.data.Coordinate;
import tim.prune.data.DataPoint;
import tim.prune.data.Photo;
import tim.prune.data.PhotoList;
-import tim.prune.data.PhotoStatus;
/**
* Class to call Exiftool to save coordinate information in jpg files
public boolean saveExifInformation(PhotoList inPhotoList)
{
// Check if external exif tool can be called
- boolean exifToolInstalled = ExternalTools.isExiftoolInstalled();
+ boolean exifToolInstalled = ExternalTools.isToolInstalled(ExternalTools.TOOL_EXIFTOOL);
if (!exifToolInstalled)
{
// show warning
_dialog.pack();
// set progress bar and show dialog
_progressBar.setVisible(false);
- _dialog.show();
+ _dialog.setVisible(true);
return true;
}
_progressBar.setValue(i + 1);
}
_progressBar.setVisible(false);
- // Show confirmation dialog
- JOptionPane.showMessageDialog(_dialog, I18nManager.getText("dialog.saveexif.ok1") + " "
- + numSaved + " " + I18nManager.getText("dialog.saveexif.ok2"),
- I18nManager.getText("dialog.saveexif.title"), JOptionPane.INFORMATION_MESSAGE);
+ // Show confirmation
+ UpdateMessageBroker.informSubscribers(I18nManager.getText("confirm.saveexif.ok1") + " "
+ + numSaved + " " + I18nManager.getText("confirm.saveexif.ok2"));
// close dialog, all finished
_dialog.dispose();
}
}
}
String[] command = null;
- if (inPhoto.getCurrentStatus() == PhotoStatus.NOT_CONNECTED)
+ if (inPhoto.getCurrentStatus() == Photo.Status.NOT_CONNECTED)
{
// Photo is no longer connected, so delete gps tags
command = getDeleteGpsExifTagsCommand(inPhoto.getFile(), inOverwriteFlag);
{
// Make a string array to construct the command and its parameters
String[] result = new String[inOverwrite?5:4];
- result[0] = "exiftool";
+ result[0] = Config.getConfigString(Config.KEY_EXIFTOOL_PATH);
result[1] = "-P";
if (inOverwrite) {result[2] = " -overwrite_original_in_place";}
// remove all gps tags
{
// Make a string array to construct the command and its parameters
String[] result = new String[inOverwrite?10:9];
- result[0] = "exiftool";
+ result[0] = Config.getConfigString(Config.KEY_EXIFTOOL_PATH);
result[1] = "-P";
if (inOverwrite) {result[2] = "-overwrite_original_in_place";}
int paramOffset = inOverwrite?3:2;
result[paramOffset + 3] = "-GPSLongitudeRef=" + inPoint.getLongitude().output(Coordinate.FORMAT_CARDINAL);
// add altitude if it has it
result[paramOffset + 4] = "-GPSAltitude="
- + (inPoint.hasAltitude()?inPoint.getAltitude().getValue(Altitude.FORMAT_METRES):0);
+ + (inPoint.hasAltitude()?inPoint.getAltitude().getValue(Altitude.Format.METRES):0);
result[paramOffset + 5] = "-GPSAltitudeRef='Above Sea Level'";
// add the filename to modify
result[paramOffset + 6] = inFile.getAbsolutePath();