handles
* src/WriteGedcom.py: save CHAN records
* src/WriteXML.py: save handles and time stamps
* src/GrampsDbBase.py: make the find_xxx_from_handle functions
consistent and correct (handle ids correctly)
* src/DisplayModels.py: add last change column
* src/PeopleModel.py: add last change column
* src/PeopleView.py: add last change column
* src/MediaView.py: add last change column
* src/SourceView.py: add last change column
* src/EditPerson.py: display last change timestamps
* src/EditPlace.py: display last change timestamps
* src/Marriage.py: display last change timestamps
* src/ReadXML.py: set last change time
* src/gramps.glade: updates for last change display
svn: r3498
* src/ReadXML.py, src/ReadGedcom.py: Register as native formats
to prevent loading twice on File->Open.
* src/data/gramps.schemas: Add keys for last import and export dirs.
* src/GrampsCfg.py (get_last_import_dir, save_last_import_dir,
get_last_export_dir, save_last_export_dir): Add functions.
* src/Exportder.py (suggest_filename): Try last export and last
import folders before falling back to Home; (save): Save export folder.
* src/Utils.py (get_new_filename): Add optional folder argument.
* src/DbPrompter.py (ExistingDbPrompter.chooser): Only add
importers for non-native formats, the rest is already taken care of;
Try last file, last import, last export, then home folders;
(ImportDbPrompter.chooser): Save import folder; Try last import,
last file, last export, then home folders.
(NewNativeDbPrompter): Try last file, last import, last export folders,
then fall back to home.
svn: r3493
Check whether event exists (#1014414).
* src/plugins/IndivComplete.py (write_alt_names): Correct the
use of handle (#1014411); (write_fact, write_sources, write_person):
Use gramps id, not handle, for displaying source references.
svn: r3488
(handle_source): Refer to handle, not the object;
(parse_source): Use gramps id (not handle) to form the title.
* src/GrampsDbBase.py (get_person_from_handle): Typo;
(find_event_from_handle): Correctly create new event if not found.
* src/Sources.py (draw): Correctly sort, use gramps id when
displaying sources; (redraw): Use gramps id in the list view.
svn: r3461
* src/GrampsCfg.py (get_screen_size_checked,
save_screen_size_checked): Add functions.
* src/gramps_main.py: Enable sidebar depending on the screen
if the screen size has not been checked yet.
* src/ChooseParents.py: Set the size request depending on the screen.
* src/Marriage.py: Set the size request depending on the screen.
* src/gramps.glade (marriageEditor): Unset the height request
for the event list.
svn: r3459
to errors instead of overwriting; determine actual dates of burial
and baptism; (get_year): Correctly compare calendar names.
* src/plugins/rel_it.py: removed translatable strings (should be
already italian).
* src/plugins/IndivComplete.py (_get_report_filters):
Set both ancestor and descendant filters to be inclusive.
* src/plugins/RelGraph.py (get_report_filters):
Set both ancestor and descendant filters to be inclusive.
* src/plugins/TimeLine.py (_get_report_filters):
Set both ancestor and descendant filters to be inclusive.
* src/plugins/WebPage.py (get_report_filters):
Set both ancestor and descendant filters to be inclusive.
* src/plugins/WriteFtree.py (__init__):
Set both ancestor and descendant filters to be inclusive.
* src/plugins/Ancestors.py (person_name): Use translated name type.
svn: r3454
* src/plugins/merge.glade: Switch button order to comply with HIG.
* src/mergedata.glade: Switch button order to comply with HIG.
* src/plugins/RelGraph.py (get_default_basename): Add function.
* src/plugins/AncestorReport.py (write_report): Translate
string properly.
* src/EventEdit.py (update_event): Use transtable.
* src/EditPerson.py (on_event_add_clicked, on_edit_birth_clicked,
on_edit_death_clicked, on_event_update_clicked):
Pass TransTable to the event editor.
* src/Marriage.py (on_add_clicked, on_event_update_clicked):
Pass TransTable to the event editor.
* src/plugins/FtmStyleAncestors.py,
src/plugins/FtmStyleDescendants.py:
Remove extra space between vars in "%(.*_place)s %(.*_notes)s"
* src/plugins/verify.glade: Translate button label.
* src/plugins/IndivSummary.py: Proper handling of translation.
* src/docgen/OpenOfficeDoc.py (pt2cm): Add function;
(draw_text): Convert points to cm for the box width;
Use self.string_width() method.
* src/BaseDoc.py (string_width): Add a method to compute width.
* src/docgen/LPRDoc.py (string_width): Override method.
* src/docgen/PdfDoc.py: Use self.string_width() method.
* src/docgen/SvgDrawDoc.py: Use self.string_width() method.
* src/plugins/AncestorChart2.py: Use self.doc.string_width() method.
* src/plugins/AncestorChart.py: Use self.doc.string_width() method.
* src/plugins/DesGraph.py: Use self.doc.string_width() method.
* src/plugins/FanChart.py: Use self.doc.string_width() method.
* src/plugins/TimeLine.py: Use self.doc.string_width() method.
* src/plugins/eval.glade: HIG compliance.
svn: r3453
* src/plugins/rel_fi.py: Convert to new interface. Add to CVS.
* src/plugins/rel_fr.py: Convert to new interface. Add to CVS.
* src/plugins/rel_no.py: Convert to new interface. Add to CVS.
* src/plugins/rel_sv.py: Convert to new interface. Add to CVS.
* src/plugins/Makefile.am: Ship new files.
* src/Relationship.py (apply_filter): Keep gender info of all
member in the relationship chain, not just number of generations;
(is_spouse): correctly compare handles; (get_relationship_distance,
get_relationship, get_grandparents_string): correctly use apply_filter.
* src/plugins/rel_it.py (get_relationship): Correctly use apply_filter.
* src/plugins/rel_hu.py (get_relationship): Correctly use apply_filter.
* src/plugins/rel_de.py (is_spouse): Remove function;
(get_relationship): Correctly use apply_filter.
* src/plugins/rel_ru.py (is_spouse): Remove function;
(get_relationship): Correctly use apply_filter.
svn: r3452