Graph View project
Gramps Graph View Profiles - Notes
Compatibility, safety checks, profile validation, temporary restoration and project status.
Purpose of these checks
Before a Standard or View profile changes Graph View, several safety checks are performed. They protect the open family tree while still allowing a valid profile to be reused after a family tree has been moved or restored from a backup.
Checks performed when a profile is loaded
Profile file and format
The profile file must exist, be readable and contain valid JSON. The profile version and profile type must be supported, and the View profile loader accepts only View profiles.
Unknown or unsupported Graph View settings are not applied. Manual loading normally displays an error, while startup errors are handled quietly where possible and Graph View continues with the ordinary graph.
Family tree information
The saved family tree name, internal database location and media path are compared with the currently open family tree. A difference does not always mean that the profile is wrong; it may belong to a moved or restored copy of the same tree.
When differences are found, they are shown before anything is changed. A Standard profile can be cancelled or loaded anyway. For a View profile, the saved Home and Active people are also checked before loading is allowed.
The saved media path is used for comparison only and does not silently change the media path of the open family tree.
People saved in View profiles
A View profile may contain a saved Home person and Active person. Each person is first located using the saved internal person reference. When a Gramps ID is available, it is also used to verify the person or locate them if the internal reference has changed.
If the family tree information matches but a saved person has later been deleted, the user can cancel or load the remaining profile settings without that person.
If both the family tree information and saved people do not match, the profile is rejected as likely belonging to another family tree.
A Standard profile does not save Home or Active people. When it is loaded, Graph View returns to the current Home person before applying the saved display settings.
Profile settings
Only supported Graph View settings are applied. Related settings are checked and adjusted when necessary. For example, avatar style is used only when both images and avatars are enabled.
When a profile requests ProfileTag filtering, the open family tree must contain a person tag named ProfileTag. If the tag is missing, the filter is turned off and the rest of the profile can still be loaded.
All accepted settings are applied together, and Graph View rebuilds the graph once after the profile has been processed.
Startup and temporary use
At startup, an unusable profile normally falls back to the ordinary Graph View graph without unnecessary error dialogs.
For Use profiles temporarily, Gramps Graph View Profiles keeps a restore point containing the settings that were active before profile use. If this restore point cannot be saved, profile loading and graph drawing still continue, but temporary use is turned off and the user is warned.
When temporary use is enabled later and no valid restore point exists, the user can choose to save the current Graph View settings as the new restore point or cancel temporary use.
Project status
Gramps Graph View Profiles V1.0 is ready for release.
Gramps Graph View Profiles is an independent and unofficial extension. It is not affiliated with or endorsed by the Gramps Project or the original Graph View developers.
Graph View was originally developed by Gary Burton and later contributors.
Disclaimer
This software is provided “as is”, without warranty of any kind. Use it at your own risk. The author is not liable for loss of data or any other damage arising from its use.