I18N in SportsTracker
---------------------

The internationalization is done by using the ResourceMap class from the Swing
Application Framework (JSR-296) and the appropriate *.properties files.

All the text resources for the default language (english) are located in the 
properties-file "SportsTracker.properties" in the directory 
"src/de/saring/sportstracker/gui/resources". Each additional translation must
be contained in an own file "SportsTracker_**.properties" (** must be the 
language code) in the same directory.
Example: the file SportsTracker_de.properties contains the german translation.

The following steps needs to be done for creating new translations:

- Create a new file with the language code filename extension and copy the
  content of the default language "SportsTracker.properties" into it.
- Translate all the contained propeties values.
- The properties-file must use ASCII encoding, special characters must use
  Unicode escape sequences (e.g. \u00c4 for the german Ä). This is done 
  automatically when editing the translation files in NetBeans. Users of other
  editors need to convert the created properties-file using the command:
  "native2ascii SportsTracker_de.properties SportsTracker_de.properties"

For updating an existing translation you should use a diff-tool (e.g. meld on
Linux) and compare the default language file "SportsTracker.properties" with
the properties file of the language you are working on.
You need to add all the missing properties to your language file and remove
all the properties which doesn't exists in the default language anymore.

The new or updated translations can be tested after a rebuild on the next 
application startup (is very simple when using the NetBeans IDE).

When the window or dialogs doesn't show the complete GUI for the translated
language, then you need to delete the session state files with the window
positions and sizes in the directory $HOME/.sportstracker/ (e.g.
"st.dlg.about.session.xml").


Stefan Saring
2008/01/13


History of resource changes for each release
--------------------------------------------

SportsTracker 5.0.0:

- All texts and resource keys with "PolarViewer" has been renamed to 
  "ExerciseViewer" (also updated in all translations)
- pv.view.track (new)
- pv.track.no_track_data.text (new)

SportsTracker 4.0.1:

- st.exerciselistview.ascen (new)
- st.exerciselistview.energy (new)
- st.exerciselistview.equipment (new)

- st.dlg.options.listview.title (new)
- st.dlg.options.list_optional_fields.text (new)
- st.dlg.options.show_avg_heartrate.text (new)
- st.dlg.options.show_ascent.text (new)
- st.dlg.options.show_energy.text (new)
- st.dlg.options.show_equipment.text (new)
- st.dlg.options.show_comment.text (new)

SportsTracker 4.0.0:

- st.main.error.no_note (new)
- st.main.error.no_weight (new)

- st.notelistview.date (new)
- st.notelistview.text (new)
- st.notelistview.print.title (new)
- st.notelistview.print.page (new)

- st.weightlistview.date (new)
- st.weightlistview.weight (new)
- st.weightlistview.comment (new)
- st.weightlistview.print.title (new)
- st.weightlistview.print.page (new)

- st.view.note_list_view.Action.text (new)
- st.view.note_list_view.Action.shortDescription (new)
- st.view.weight_list_view.Action.text (new)
- st.view.weight_list_view.Action.shortDescription (new)

- st.calview.note_short (new)
- st.calview.weight_short (new)
- st.calview.weight_tooltip.weight (new)

- st.view.entry_delete.Action.text= (new)
- st.view.entry_delete.Action.shortDescription (new)
- st.view.entry_edit.Action.text (new)
- st.view.entry_edit.Action.shortDescription (new)

- st.view.note_add.Action.text (new)
- st.view.note_add.Action.shortDescription (new)
- st.view.weight_add.Action.text (new)
- st.view.weight_add.Action.shortDescription (new)

- st.view.exercise_add.Action.shortDescription (changed)

- st.view.confirm.delete.title (changed)
- st.view.confirm.delete.text (changed)

- st.dlg.note.title (new)
- st.dlg.note.title.add (new)
- st.dlg.note.date.text (new)
- st.dlg.note.time.text (new)
- st.dlg.note.text.text (new)
- st.dlg.note.ok.Action.text (new)
- st.dlg.note.cancel.Action.text (new)
- st.dlg.note.error.date (new)
- st.dlg.note.error.no_text (new)

- st.dlg.weight.title (new)
- st.dlg.weight.title.add (new)
- st.dlg.weight.date.text (new)
- st.dlg.weight.time.text (new)
- st.dlg.weight.weight.text (new)
- st.dlg.weight.comment.text (new)
- st.dlg.weight.ok.Action.text (new)
- st.dlg.weight.cancel.Action.text (new)
- st.dlg.weight.error.date (new)
- st.dlg.weight.error.weight (new)

- st.dlg.overview.display.weight.text (new)
- st.dlg.overview.value_type.weight (new)

- st.dlg.cal_cell_exercises.title (removed)
- st.dlg.cal_cell_exercises.ok.Action.text (removed)
- st.dlg.cal_cell_exercises.cancel.Action.text (removed)

- st.view.exercise_delete.Action.text (removed)
- st.view.exercise_delete.Action.shortDescription (removed)
- st.view.exercise_edit.Action.text (removed)
- st.view.exercise_edit.Action.shortDescription (removed)

SportsTracker 3.5.1:

- st.calview.exe_tooltip.sport_type (new)
- st.calview.exe_tooltip.distance (new)
- st.calview.exe_tooltip.avg_speed (new)
- st.calview.exe_tooltip.duration (new)
- st.calview.draganddrop.invalid_hrm_file (new)
- st.calview.draganddrop.assigned (new)

SportsTracker 3.5.0:

- st.view.print.Action.text (new)
- st.view.print.Action.accelerator (new)
- st.view.print.Action.shortDescription (new)

- st.main.error.print_view (new)

- st.calview.print.title (new)
- st.listview.print.title (new)
- st.listview.print.page (new)
- st.listview.confirm.print_many_exercises.title (new)
- st.listview.confirm.print_many_exercises.text (new)

- st.dlg.options.defaultautocalc.text (new)
- st.dlg.options.distance.text (new)
- st.dlg.options.avg_speed.text (new)
- st.dlg.options.duration.text (new)

SportsTracker 3.4.0:

- st.dlg.overview.time_range.last_12_months.text (new)
- st.dlg.overview.sport_type.each_stacked.text (new)

- st.dlg.exercise.auto_calc_distance.Action.text (new)
- st.dlg.exercise.auto_calc_avg_speed.Action.text (new)
- st.dlg.exercise.auto_calc_duration.Action.text (new)
- st.dlg.exercise.calories.text (changed)
- st.dlg.exercise.hrm_view.Action.text (changed)
- st.dlg.exercise.hrm_import.Action.text (changed)

- st.dlg.exercise.calc_distance.Action.text (removed)
- st.dlg.exercise.calc_avg_speed.Action.text (removed)
- st.dlg.exercise.calc_duration.Action.text (removed)

- st.dlg.options.main.title (new)
- st.dlg.options.units.title (new)
- st.dlg.options.polarviewer.title (new)
- st.dlg.options.lookandfeel.text (new)
- st.dlg.options.diagram.text (new)

- st.dlg.options.distance_hour.text (changed)
- st.dlg.options.minutes_distance.text (changed)
- st.dlg.options.second_graph.text (changed)

- st.dlg.options.start_sunday.text (removed)
- st.dlg.options.polarviewer.text (removed)

- st.calview.today.Action.shortDescription (new)
- st.calview.today.Action.text (removed)

- st.dlg.sporttype.select.Action.shortDescription (new)

- st.dlg.sporttype.record_distance.text (changed)
- st.dlg.sportsubtype.name (changed)
- st.dlg.equipment.name (changed)

SportsTracker 3.3.0:

- st.main.confirm.define_first_sporttype (new)

SportsTracker 3.2.0:

- st.dlg.exercise.exercise_data.text (removed)
- st.dlg.exercise.optional_data.text (removed)
- st.dlg.exercise.date_time.text (removed)st.listview.print.title (new)
- st.listview.print.page
- st.dlg.exercise.hide.Action.text (removed)
- st.dlg.exercise.show.Action.text (removed)
- st.dlg.exercise.main.title (new)
- st.dlg.exercise.optional.title (new)
- st.dlg.exercise.comment.title (new)
- st.dlg.exercise.date.text (new)
- st.dlg.exercise.time.text (new)
- st.dlg.exercise.error.date (new)
- st.dlg.exercise.equipment.text (new)
- st.dlg.exercise.equipment.none.text (new)
- st.dlg.exercise.copy_comment.Action.text (new)
- st.dlg.exercise.error.no_sport_and_subtype (new)
- st.dlg.exercise.error.no_previous_exercise (new)

- st.dlg.sporttype.equipment.text (new)
- st.dlg.sporttype.confirm.delete_equipment.title (new)
- st.dlg.sporttype.confirm.delete_equipment.text (new)
- st.dlg.sporttype.confirm.delete_equipment_existing.text (new)

- st.dlg.equipment.* (new)

- st.dlg.filter.equipment.text (new)
- st.dlg.filter.error.date (new)
- st.dlg.overview.time_range.weeks_of_year.text (new)

- st.dlg.statistic.equipment.text (new)

- st.dlg.options.optional_data.tex (removed)
- st.dlg.options.display_optional_data.text (removed)

SportsTracker 3.1.0:

- no changes

SportsTracker 3.1.0:

- intitial Java based release
