F-Spot Time Edit


Proposal for date and time handling in f-spot.

Author: Mattias Holmlund, <firstname> at <lastname> . se
Last updated: 2005-08-30

Each image in f-spot should have a date and time associated with it. The date and time can be used for several purposes:
All images have a date and time associated with them by the camera. There is however no timezone information stored by the camera. The timezone is added by f-spot when the image is first imported and can be wrong.

Many users will probably have pictures taken in several different timezones. To provide a consistent interface, it is important that f-spot is aware of timezones and knows how to handle them.

A frequent problem is that users forget to set the clock on their camera. Therefore, f-spot needs to allow the user to update the timezone as well as adjust the time associated with the picture.

Editing many photos at once

A very frequent use of the Edit Time dialog will be to correct the time for many photos at once. The user simply select all the photos that he wants to edit and selects Edit Time from the menu.

There are a number of different errors that the user might want to correct:
These errors can all be corrected in the proposed "Edit Time" dialog.

The Edit Time Dialog

Relative tab
Figure 1. The "Relative Adjustment" tab.

The upper part of the dialog shows a preview of the changes that the user is about to make. It displays one of the pictures along with "Before" and "After"-information for the timestamp of the displayed image. By using the arrow-buttons, the user can check how each one of his images will be affected before pressing "Apply".

The lower part of the dialog contains three tabs: "Relative Adjustment", Absolute Adjustment" and "Timezone Conversion". Only the settings in the selected tab will be used for the time adjustment.

"Relative Adjustment" allows the user to correct the first error described above. The user can select an image that he knows when it was taken and set the correct date and time for that image. This results in an adjustment in days, hours, minutes and seconds that is shown after "Adjustment:" in the dialog. This adjustment is then applied to all selected images. When the user scrolls between the images using the arrow-buttons, the Date and Time fields in the dialog are adjusted to match the "After"-field for the image, keeping the "Adjustment"-field constant.

"Absolute Adjustment" allows the user to set the time on all images regardless of the current timestamp on each image. He can also choose to only set the date and leave the time intact or vice versa.

Absolute tab
Figure 2. The "Absolute Adjustment" tab.


The "Absolute Adjustment"-tab also allows the user to increment the time by a fixed amount for each image. This avoids any problems with having many images with the exact same timestamp. (Is this a problem?)

When the user scrolls through the images with the arrow-buttons, the Date and Time-fields are updated by the amount set in Increment time, so that the Time and Date fields always match the "After"-field at the top of the dialog.

"Timezone conversion" allows the user to convert the timestamps for all the into a different timezone. Note that this is different from doing a relative adjustment and setting the timezone, since that can not take daylight savings time into account.

Timezone tab
Figure 3. The "Timezone Conversion" tab.


In the dialog it is possible to select a Timezone from a dropdown list. It might be necessary to turn this into some sort of popup or other control due to the amount of timezones available. It shall also be possible to specify a numeric timezone, but then f-spot won't be able to take daylight savings time into account.

When the user scrolls through the images using the arrow keys, the Before and After fields are updated with the converted timezone.