|
|
(185 intermediate revisions by 9 users not shown) |
Line 1: |
Line 1: |
− | [[Image:DescendantsLines.png|thumb|Lines of descendants chart]]
| + | #REDIRECT[[Addon:DescendantsLines]] |
− | '''DescendantsLines''' is an in-development plugin for Gramps which generates a graphical descendants tree using orthogonal edges and routing ("square edges").
| |
− | | |
− | == History ==
| |
− | 2007: Adam Sampson has written a standalone python script for parsing data.gramps ([[GRAMPS XML]]). [http://offog.org/darcs/misccode/familytree]
| |
− | | |
− | 2010: this script needs some updates for avoiding minor issues.
| |
− | | |
− | A modified script is available on the addons repository. [http://gramps-addons.svn.sourceforge.net/viewvc/gramps-addons/trunk/contrib/DescendantsLines/ft.py]
| |
− | | |
− | === Limitations ===
| |
− | # Script ignores role on event (was added in 2007).
| |
− | # Script ignores localized date handlers (use ISO date format, date quality in english) | |
− | # Memory limiation with a large database (DOM parsing)
| |
− | | |
− | == Descendants Lines ==
| |
− | There is an experimental try for migrating this Gtk/cairo code to a draw plugin working into Gramps (font, style, path, canvas, output formats).
| |
− | | |
− | Draft version is available on [[Addons_development|Addons]] repository as '''unstable''' (beta). [http://gramps-addons.svn.sourceforge.net/viewvc/gramps-addons/trunk/contrib/DescendantsLines]
| |
− | | |
− | The idea will be to keep the Gramps XML parsing, but with a copy of the active database and use of current report environment (output formats, style, path).
| |
− | | |
− | === Needs ===
| |
− | | |
− | ==== Pass 1: generate a tmp XML with only data needed for the report, to load it as input ====
| |
− | | |
− | # Enable Person selection (Gramps ID) - ''done''
| |
− | # Generate a temp Gramps XML database matching 'IsDescendantFamilyOf' filter rule - ''done''
| |
− | # Input path - ''done''
| |
− | # Clean-up - ''done''
| |
− | | |
− | * simple Gramps XML template with events, persons, families objects (only export primary event role reference).
| |
− | * key/filter issues remain, currently export all persons to XML file.
| |
− | * 'localized' dates (does not follow last DTD, which uses english and ISO format)
| |
− | * a basic persons list print for draw report: this avoids empty returns when generating the report and could help to check what is missing (see above).
| |
− | * output path and format are hardcoded: $HOME/DescendantsLines.png
| |
− | | |
− | | |
− | '''FINISHED''' - it works fine!
| |
− | | |
− | ==== Pass 2: use draw report environment ====
| |
− | | |
− | # Generate a plugins/docgen/PNGDrawDoc.py file [http://www.gramps-project.org/bugs/view.php?id=4447]
| |
− | # Move Gtk code to draw report (if possible)
| |
− | # Move cairo code to draw report (if possible)
| |
− | # Output path
| |
− | # Clean-up, pylint, etc ...
| |
− | | |
− | ==== Alternate Pass 2: use of user-defined (mega)-widgets ====
| |
− | | |
− | # Have a look at mega-widget request and implementation http://www.gramps-project.org/bugs/view.php?id=2393
| |
− | # Output path through mega-widget
| |
− | | |
− | | |
− | Feel free to contribute or improve it.
| |
− | | |
− | | |
− | [[Category:Plugins]]
| |
− | [[Category:Developers/General]]
| |